Miklix

Kā iestatīt ugunsmūri Ubuntu serverī

Publicēts: 2025. gada 15. februāris 21:34:04 UTC

Šajā rakstā ir paskaidrots un sniegti daži piemēri, kā iestatīt ugunsmūri GNU/Linux, izmantojot ufw, kas ir saīsinājums no Uncomplicated FireWall — un nosaukums ir atbilstošs, tas tiešām ir ļoti vienkāršs veids, kā pārliecināties, ka jums nav atvērts vairāk portu, nekā nepieciešams.


Šī lapa tika mašīntulkota no angļu valodas, lai padarītu to pieejamu pēc iespējas vairāk cilvēkiem. Diemžēl mašīntulkošana vēl nav pilnīga tehnoloģija, tāpēc tajā var rasties kļūdas. Ja vēlaties, oriģinālo versiju angļu valodā varat apskatīt šeit:

How to Set Up a Firewall on Ubuntu Server

Informācija šajā ziņā ir balstīta uz Ubuntu Server 14.04 x64. Tas var būt un var nebūt derīgs citām versijām. (Atjauninājums: varu apstiprināt, ka šajā ziņojumā esošā informācija būtībā joprojām ir derīga un funkcionāla Ubuntu Server 24.04, tomēr starpposma 10 gadu laikā ufw ir kļuvis nedaudz "gudrāks", jo ir izveidoti profili parastajām servera lietojumprogrammām (piemēram, varat iespējot "Nginx full", nevis portus 80 un 443, atsevišķi nepiemērojot visus ugunsmūra noteikumus) nepieciešams ilgāk)

Kad es pirmo reizi sāku darbu 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 esmu atklājis ufw , kas ir saīsinājums no Uncomplicated Firewall – un tā tas tiešām ir :-)

Manā Ubuntu Server 14.04 instalācijā jau bija instalēts ufw, bet, ja jums tā nav, vienkārši instalējiet to no krātuvēm:

sudo apt-get install ufw

UFW patiesībā ir tikai rīks, kas vienkāršo iptables konfigurāciju – aizkulisēs joprojām filtrē iptables un Linux kodola ugunsmūris, tāpēc ufw nav ne mazāks, ne drošāks par šiem. Tomēr, tā kā ufw ļauj daudz vieglāk pareizi konfigurēt ugunsmūri, tas var samazināt cilvēka kļūdu risku un tāpēc, iespējams, ir drošāks nepieredzējušiem administratoriem.

Ja jūsu serveris ir konfigurēts ar IPv6, kā arī IPv4, pārliecinieties, vai tas ir iespējots arī UFW. Rediģējiet failu /etc/default/ufw un meklējiet rindiņu, kurā teikts IPV6=yes . Manā instalācijā tas jau bija tur, bet, ja tā nav vai ja tas saka nē, jums tas ir jārediģē

Pēc tam vienkārši izmantojiet komandu uzvedni, lai iespējotu portus, kurus vēlaties atvērt. Ja esat izveidojis savienojumu ar serveri, izmantojot ssh, noteikti atļaujiet arī to, pretējā gadījumā tas var traucēt jūsu savienojumu un, iespējams, bloķēt jūs no servera, kad to aktivizējat — atkarībā no tā, vai jums ir fiziska piekļuve serverim vai nav, tas var būt neērti ;-)

Piemēram, ja izmantojat ssh standarta portā 22 un konfigurējat tīmekļa serveri, kas atbalsta gan nešifrētus (HTTP portā 80), gan šifrētus (HTTPS portā 443) savienojumus, jums ir jāizdod šādas komandas, lai konfigurētu ufw:

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

Ja jums ir nepieciešami citi noteikumi, vienkārši pievienojiet tos, kā norādīts iepriekš.

Ja jums ir statiska IP adrese un ir jāspēj izveidot savienojumu, izmantojot ssh tikai no vienas vietas, varat arī ierobežot ssh savienojumus ar vienu izcelsmes adresi, piemēram:

sudo ufw allow from 192.168.0.1 to any port 22

Protams, tā vietā ievadiet savu IP adresi.

Kad esat pabeidzis, iespējojiet ufw, ievadot:

sudo ufw enable

Un esat pabeidzis! Ugunsmūris darbojas un automātiski startēs, kad restartēsiet serveri :-)

Ja veicat izmaiņas ufw konfigurācijā, iespējams, tā būs jāatspējo un vēlreiz jāiespējo, lai tās stātos spēkā, piemēram:

sudo ufw disable
sudo ufw enable

Lai skatītu pašreizējo konfigurāciju, vienkārši ievadiet:

sudo ufw status

Ja ufw nav iespējots, tas vienkārši parādīs "neaktīvu" ziņojumu, pretējā gadījumā tajā tiks uzskaitīti pašlaik definētie noteikumi.

Kopīgojiet pakalpojumā BlueskyKopīgot FacebookKopīgojiet vietnē LinkedInKopīgojiet vietnē TumblrKopīgot vietnē XKopīgojiet vietnē LinkedInPiespraust vietnē Pinterest

Mikkel Bang Christensen

Par autoru

Mikkel Bang Christensen
Mikels ir miklix.com radītājs un īpašnieks. Viņam ir vairāk nekā 20 gadu pieredze kā profesionālam programmētājam/programmatūras izstrādātājam, un pašlaik viņš strādā pilna laika darbu lielā Eiropas IT korporācijā. Kad viņš neraksta blogus, viņš pavada brīvo laiku, pievēršoties dažādām interesēm, hobijiem un aktivitātēm, kas zināmā mērā var atspoguļoties šajā tīmekļa vietnē aplūkoto tēmu daudzveidībā.