Ինչպես ստեղծել Firewall Ubuntu սերվերում
Հրապարակվել է՝ 15 փետրվարի, 2025 թ., 21:36:18 UTC
Վերջին թարմացումը՝ 12 հունվարի, 2026 թ., 08:37:58 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 պորտերի փոխարեն առանձին), և ամբողջ firewall-ը անջատելը/միացնելը՝ նոր կանոններ կիրառելու համար այլևս անհրաժեշտ չէ):
Երբ ես նոր էի սկսել աշխատել GNU/Linux (Ubuntu) սերվերների հետ, firewall-ի կարգավորումը ենթադրում էր iptables-ի համար պոտենցիալ բարդ կոնֆիգուրացիայի ֆայլի ձեռքով ստեղծում և պահպանում: Այնուամենայնիվ, վերջերս ես հայտնաբերեցի ufw-ն, որը Uncomplicated Firewall-ի հապավումն է, և դա իսկապես այդպես է :-)
Իմ Ubuntu Server 14.04-ի տեղադրման մեջ ufw-ն արդեն տեղադրված էր, բայց եթե ձերը չունի, պարզապես տեղադրեք այն պահոցներից։
UFW-ն իրականում պարզապես գործիք է, որը պարզեցնում է iptables-ի կարգավորումը. կուլիսներում դեռևս iptables-ն ու Linux kernel firewall-ն են կատարում ֆիլտրացումը, ուստի ufw-ն ո՛չ պակաս, ո՛չ էլ ավելի անվտանգ է, քան սրանք։ Այնուամենայնիվ, քանի որ ufw-ն շատ ավելի հեշտացնում է firewall-ի ճիշտ կարգավորումը, այն կարող է նվազեցնել մարդկային սխալի ռիսկը և, հետևաբար, հնարավոր է՝ ավելի անվտանգ լինի անփորձ ադմինիստրատորների համար։
Եթե ձեր սերվերը կարգավորված է IPv6-ով, ինչպես նաև IPv4-ով, համոզվեք, որ սա միացված է նաև UFW-ի համար: Խմբագրեք /etc/default/ufw ֆայլը և փնտրեք IPV6=yes գրող տողը: Իմ տեղադրման ժամանակ այն արդեն այնտեղ էր, բայց եթե այդպես չէ կամ եթե այն ասում է ոչ, ապա դուք պետք է խմբագրեք այն:
Այնուհետև պարզապես օգտագործեք հրամանի տողը՝ միացնելու համար այն պորտերը, որոնք ցանկանում եք բացել: Եթե դուք միացված եք ձեր սերվերին ssh-ի միջոցով, համոզվեք, որ դա նույնպես թույլատրել եք, հակառակ դեպքում դա կարող է խաթարել ձեր կապը և հնարավոր է՝ արգելափակել ձեր սերվերը, երբ այն ակտիվացնեք. կախված նրանից, թե արդյոք դուք ֆիզիկական մուտք ունեք սերվերին, թե ոչ, սա կարող է մի փոքր անհարմար լինել ;-)
Օրինակ, եթե դուք օգտագործում եք ssh ստանդարտ 22-րդ պորտի վրա և կարգավորում եք վեբ սերվեր, որը աջակցում է ինչպես չգաղտնագրված (HTTP՝ 80-րդ պորտի վրա), այնպես էլ կոդավորված (HTTPS՝ 443-րդ պորտի վրա) կապեր, ապա ufw-ն կարգավորելու համար պետք է կատարեք հետևյալ հրամանները.
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Եթե ձեզ անհրաժեշտ են ավելի շատ կանոններ, պարզապես ավելացրեք դրանք վերևում նշվածի պես։
Եթե դուք ունեք ստատիկ IP հասցե և անհրաժեշտ է միանալ ssh-ի միջոցով միայն մեկ տեղանքից, կարող եք նաև սահմանափակել ssh կապերը մեկ սկզբնական հասցեով, ինչպես սա է՝
Իհարկե, փոխարենը մուտքագրեք ձեր սեփական IP հասցեն։
Ավարտելուց հետո միացրեք ufw-ն՝ մուտքագրելով՝
Եվ դուք պատրաստ եք։ Firewall-ը աշխատում է և ավտոմատ կերպով կմեկնարկի, երբ վերագործարկեք ձեր սերվերը :-)
Եթե փոփոխություններ եք կատարում ufw կարգավորման մեջ, դրանք ուժի մեջ մտնելու համար կարող է անհրաժեշտ լինել այն անջատել և կրկին միացնել, ինչպես հետևյալն է՝
sudo ufw enable
Ներկայիս կարգավորումները տեսնելու համար պարզապես մուտքագրեք՝
Եթե ufw-ն միացված չէ, սա պարզապես կցուցադրի «անգործուն» հաղորդագրությունը, հակառակ դեպքում կցուցադրվեն ներկայումս սահմանված կանոնները։
