Miklix

Ինչպես ստեղծել Firewall Ubuntu սերվերում

Հրապարակվել է՝ 15 փետրվարի, 2025 թ., 21:36:18 UTC
Վերջին թարմացումը՝ 15 փետրվարի, 2025 թ., 21:36:53 UTC

Այս հոդվածը բացատրում և տալիս է մի քանի օրինակներ, թե ինչպես կարելի է ստեղծել firewall GNU/Linux-ում՝ օգտագործելով ufw, որը կրճատված է Uncomplicated FireWall-ի համար, և անունը տեղին է, դա իսկապես շատ հեշտ միջոց է համոզվելու, որ դուք չունեք ավելի շատ նավահանգիստներ, քան անհրաժեշտ է:


Այս էջը ավտոմատ կերպով թարգմանվել է անգլերենից՝ հնարավորինս շատ մարդկանց համար հասանելի դարձնելու համար: Ցավոք, մեքենայական թարգմանությունը դեռ կատարելագործված տեխնոլոգիա չէ, ուստի կարող են սխալներ առաջանալ: Եթե ​​նախընտրում եք, կարող եք դիտել բնօրինակ անգլերեն տարբերակը այստեղ.

How to Set Up a Firewall on Ubuntu Server

Այս գրառման տեղեկատվությունը հիմնված է Ubuntu Server 14.04 x64-ի վրա: Այն կարող է վավեր լինել կամ չգործել այլ տարբերակների համար: (Թարմացում. Ես կարող եմ հաստատել, որ այս գրառման տեղեկատվությունը հիմնականում ուժի մեջ է և գործում է Ubuntu Server 24.04-ի դրությամբ, սակայն միջանկյալ 10 տարիների ընթացքում ufw-ն մի փոքր ավելի «խելացի» է դարձել՝ ունենալով պրոֆիլներ ընդհանուր սերվերային հավելվածների համար (օրինակ՝ կարող եք միացնել «Nginx full»՝ 80-րդ և 443 նավահանգիստների փոխարեն անջատելով նոր կանոնները) և անջատելով նոր կանոնները: կիրառել այլևս անհրաժեշտ չէ)

Երբ ես առաջին անգամ սկսեցի GNU/Linux (Ubuntu) սերվերներով, firewall-ի ստեղծումը ներառում էր iptables-ի համար պոտենցիալ բարդ կազմաձևման ֆայլի ձեռքով ստեղծում և պահպանում: Այնուամենայնիվ, ես վերջերս հայտնաբերեցի ufw , որը կրճատված է Uncomplicated Firewall-ի համար, և դա իսկապես այդպես է :-)

Ubuntu Server 14.04-ի իմ տեղադրումն արդեն տեղադրել է ufw, բայց եթե դուք չունեք, պարզապես տեղադրեք այն պահեստներից.

sudo apt-get install ufw

UFW-ն իրականում պարզապես գործիք է, որը պարզեցնում է iptables-ի կոնֆիգուրացիան. կուլիսների հետևում դա դեռևս iptables-ն է և Linux միջուկի firewall-ը, որը կատարում է զտումը, ուստի ufw-ն ոչ պակաս, ոչ էլ ավելի ապահով է, քան դրանք: Այնուամենայնիվ, քանի որ ufw-ն շատ ավելի հեշտ է դարձնում firewall-ի ճիշտ կազմաձևումը, այն կարող է նվազեցնել մարդկային սխալի ռիսկը և, հետևաբար, հնարավոր է ավելի ապահով լինի անփորձ ադմինների համար:

Եթե ​​ձեր սերվերը կազմաձևված է IPv6-ով, ինչպես նաև IPv4-ով, համոզվեք, որ սա միացված է նաև UFW-ի համար: Խմբագրեք /etc/default/ufw ֆայլը և փնտրեք IPV6=այո ասող տող: Իմ տեղադրման ժամանակ այն արդեն այնտեղ էր, բայց եթե չկա կամ ասի ոչ, ապա պետք է խմբագրեք այն

Այնուհետև պարզապես օգտագործեք հրամանի տողը, որպեսզի միացնեք այն նավահանգիստները, որոնք ցանկանում եք բացել: Եթե ​​դուք միացված եք ձեր սերվերին ssh-ի միջոցով, համոզվեք, որ դա նույնպես թույլատրեք, այլապես դա կարող է խաթարել ձեր կապը և, հնարավոր է, արգելափակել ձեզ ձեր սերվերից, երբ այն ակտիվացնեք, կախված նրանից, թե արդյոք դուք ֆիզիկական մուտք ունեք դեպի սերվեր, թե ոչ, դա կարող է մի տեսակ անհարմար լինել ;-)

Օրինակ, եթե դուք օգտագործում եք ssh ստանդարտ պորտ 22-ում և կարգավորում եք վեբ սերվեր, որն աջակցում է և՛ չգաղտնագրված (HTTP 80-րդ նավահանգստի վրա) և՛ կոդավորված (HTTPS 443 նավահանգստի վրա) կապեր, դուք կթողարկեք հետևյալ հրամանները՝ ufw-ի կազմաձևման համար.

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Եթե ​​ձեզ ավելի շատ կանոններ են անհրաժեշտ, պարզապես ավելացրեք դրանք վերևում:

Եթե ​​դուք ունեք ստատիկ IP հասցե և պետք է կարողանաք միանալ միայն ssh-ի միջոցով մեկ վայրից, կարող եք նաև սահմանափակել ssh կապերը մեկ ծագման հասցեով, ինչպես հետևյալը.

sudo ufw allow from 192.168.0.1 to any port 22

Իհարկե, փոխարենը մուտքագրեք ձեր սեփական IP հասցեն:

Ավարտելուց հետո միացրեք ufw-ն՝ մուտքագրելով.

sudo ufw enable

Եվ դու վերջացրիր: Firewall-ը աշխատում է և ավտոմատ կերպով կգործարկվի, երբ վերագործարկեք ձեր սերվերը :-)

Եթե ​​դուք փոփոխություններ եք կատարում ufw-ի կազմաձևում, կարող է անհրաժեշտ լինել անջատել և նորից միացնել այն՝ դրանք ուժի մեջ դնելու համար, այսպես.

sudo ufw disable
sudo ufw enable

Ընթացիկ կոնֆիգուրացիան դիտելու համար պարզապես մուտքագրեք.

sudo ufw status

Եթե ​​ufw-ն միացված չէ, սա պարզապես ցույց կտա «ոչ ակտիվ» հաղորդագրություն, հակառակ դեպքում այն ​​կցուցադրի ներկայումս սահմանված կանոնները:

Կիսվեք Bluesky-ումԿիսվել Facebook-ումԿիսվեք LinkedIn-ումԿիսվեք Tumblr-ումԿիսվեք X-ումԿիսվեք LinkedIn-ումԿպցնել Պինթրեսթում

Միկել Բանգ Քրիստենսեն

Հեղինակի մասին

Միկել Բանգ Քրիստենսեն
Mikkel-ը miklix.com-ի ստեղծողն ու սեփականատերն է: Նա ունի ավելի քան 20 տարվա աշխատանքային փորձ՝ որպես պրոֆեսիոնալ համակարգչային ծրագրավորող/ծրագրային ապահովման մշակող և ներկայումս լրիվ դրույքով աշխատում է եվրոպական խոշոր ՏՏ կորպորացիայի մեջ: Երբ նա բլոգ չի գրում, նա իր ազատ ժամանակն անցկացնում է հետաքրքրությունների, հոբբիների և գործունեության լայն շրջանակի վրա, որոնք որոշ չափով կարող են արտացոլվել այս կայքում ընդգրկված թեմաների բազմազանության մեջ: