Kā iestatīt ugunsmūri Ubuntu serverī
Publicēts: 2025. gada 15. februāris 21:34:04 UTC
Pēdējo reizi atjaunināts: 2026. gada 12. janvāris 08:37:14 UTC
Šajā rakstā ir paskaidrots un sniegti daži piemēri, kā iestatīt ugunsmūri operētājsistēmā GNU/Linux, izmantojot ufw, kas ir saīsinājums no Uncomplicated FireWall (nekomplicēts ugunsmūris) — un nosaukums ir atbilstošs, tas tiešām ir ļoti vienkāršs veids, kā pārliecināties, ka jums nav atvērtu vairāk portu nekā nepieciešams.
How to Set Up a Firewall on Ubuntu Server
Šajā ierakstā sniegtā informācija ir balstīta uz Ubuntu Server 14.04 x64. Tā var būt vai nebūt derīga citām versijām. (Atjauninājums: varu apstiprināt, ka šajā ierakstā sniegtā informācija būtībā joprojām ir derīga un funkcionāla, sākot ar Ubuntu Server 24.04, tomēr pēdējo 10 gadu laikā ufw ir kļuvis nedaudz "gudrāks", pateicoties profiliem izplatītām servera lietojumprogrammām (piemēram, varat iespējot "Nginx full", nevis atsevišķi 80. un 443. portus), un vairs nav nepieciešams atspējot/iespējot visu ugunsmūri, lai piemērotu jaunus noteikumus.)
Kad es pirmo reizi sāku strādāt ar GNU/Linux (Ubuntu) serveriem, ugunsmūra iestatīšana ietvēra potenciāli sarežģīta iptables konfigurācijas faila manuālu izveidi un uzturēšanu. Tomēr nesen atklāju ufw, kas ir saīsinājums no Uncomplicated Firewall (nekomplicēts ugunsmūris) – un tas tiešām tā ir :-)
Manā Ubuntu Server 14.04 instalācijā jau bija instalēts ufw, bet, ja jūsu versijā tā nav, vienkārši instalējiet to no krātuvēm:
UFW patiesībā ir tikai rīks, kas vienkāršo iptables konfigurēšanu — aizkulisēs filtrēšanu joprojām veic iptables un Linux kodola ugunsmūris, tāpēc ufw nav ne mazāk, ne drošāks par šiem rīkiem. Tomēr, tā kā ufw ievērojami atvieglo ugunsmūra pareizu konfigurēšanu, tas var samazināt cilvēcisku kļūdu risku un tāpēc, iespējams, ir drošāks nepieredzējušiem administratoriem.
Ja jūsu serveris ir konfigurēts gan ar IPv6, gan IPv4, pārliecinieties, vai tas ir iespējots arī UFW. Rediģējiet failu /etc/default/ufw un meklējiet rindu ar tekstu IPV6=yes. Manā instalācijā tā jau bija tur, bet, ja tā nav vai ja tiek norādīts nē, jums tā ir jārediģē.
Pēc tam vienkārši izmantojiet komandrindu, lai iespējotu vēlamās atvērtās pieslēgvietas. Ja esat izveidojis savienojumu ar serveri, izmantojot ssh, noteikti atļaujiet arī to, pretējā gadījumā tas var traucēt savienojumu un, aktivizējot serveri, iespējams, bloķēt jūs no tā — atkarībā no tā, vai jums ir fiziska piekļuve serverim vai nē, tas var būt nedaudz neērti ;-)
Piemēram, ja izmantojat ssh standarta 22. portā un konfigurējat tīmekļa serveri, kas atbalsta gan nešifrētus (HTTP 80. portā), gan šifrētus (HTTPS 443. portā) savienojumus, ufw konfigurēšanai jāizmanto šādas komandas:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Ja nepieciešami vēl citi noteikumi, vienkārši pievienojiet tos, kā norādīts iepriekš.
Ja jums ir statiska IP adrese un jums ir nepieciešams izveidot savienojumu, izmantojot ssh, tikai no vienas atrašanās vietas, varat arī ierobežot ssh savienojumus ar vienu izcelsmes adresi, piemēram:
Protams, tā vietā ievadiet savu IP adresi.
Kad esat pabeidzis, iespējojiet ufw, ievadot:
Un viss ir gatavs! Ugunsmūris darbojas un automātiski startēsies, kad pārstartēsiet serveri :-)
Ja veicat izmaiņas ufw konfigurācijā, iespējams, tā būs jāatspējo un jāiespējo vēlreiz, lai izmaiņas stātos spēkā, piemēram:
sudo ufw enable
Lai apskatītu pašreizējo konfigurāciju, vienkārši ievadiet:
Ja ufw nav iespējots, tas vienkārši parādīs ziņojumu “neaktīvs”, pretējā gadījumā tas uzskaitīs pašlaik definētos noteikumus.
