Ինչպես ստեղծել 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, բայց եթե դուք չունեք, պարզապես տեղադրեք այն պահեստներից.
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 80/tcp
sudo ufw allow 443/tcp
Եթե ձեզ ավելի շատ կանոններ են անհրաժեշտ, պարզապես ավելացրեք դրանք վերևում:
Եթե դուք ունեք ստատիկ IP հասցե և պետք է կարողանաք միանալ միայն ssh-ի միջոցով մեկ վայրից, կարող եք նաև սահմանափակել ssh կապերը մեկ ծագման հասցեով, ինչպես հետևյալը.
Իհարկե, փոխարենը մուտքագրեք ձեր սեփական IP հասցեն:
Ավարտելուց հետո միացրեք ufw-ն՝ մուտքագրելով.
Եվ դու վերջացրիր: Firewall-ը աշխատում է և ավտոմատ կերպով կգործարկվի, երբ վերագործարկեք ձեր սերվերը :-)
Եթե դուք փոփոխություններ եք կատարում ufw-ի կազմաձևում, կարող է անհրաժեշտ լինել անջատել և նորից միացնել այն՝ դրանք ուժի մեջ դնելու համար, այսպես.
sudo ufw enable
Ընթացիկ կոնֆիգուրացիան դիտելու համար պարզապես մուտքագրեք.
Եթե ufw-ն միացված չէ, սա պարզապես ցույց կտա «ոչ ակտիվ» հաղորդագրություն, հակառակ դեպքում այն կցուցադրի ներկայումս սահմանված կանոնները: