Miklix

Palomuurin määrittäminen Ubuntu-palvelimelle

Julkaistu: 15. helmikuuta 2025 klo 21.33.39 UTC
Viimeksi päivitetty: 12. tammikuuta 2026 klo 8.37.00 UTC

Tässä artikkelissa selitetään ja annetaan esimerkkejä palomuurin asentamisesta GNU/Linuxissa käyttämällä ufw:tä, joka on lyhenne sanoista Uncomplicated FireWall. Nimi on osuva, sillä se on todella helppo tapa varmistaa, ettei portteja ole auki enempää kuin tarvitaan.


Tämä sivu on käännetty koneellisesti englannista, jotta se olisi mahdollisimman monen ihmisen saatavilla. Valitettavasti konekääntäminen ei ole vielä täydellistä tekniikkaa, joten virheitä voi esiintyä. Voit halutessasi tarkastella alkuperäistä englanninkielistä versiota täällä:

How to Set Up a Firewall on Ubuntu Server

Tämän viestin tiedot perustuvat Ubuntu Server 14.04 x64 -versioon. Ne eivät välttämättä päde muihin versioihin. (Päivitys: Voin vahvistaa, että tämän viestin tiedot ovat periaatteessa edelleen päteviä ja toimivia Ubuntu Server 24.04 -versiosta lähtien, mutta kuluneiden 10 vuoden aikana ufw on tullut jonkin verran "älykkäämmäksi", koska siinä on profiilit yleisille palvelinsovelluksille (voit esimerkiksi ottaa käyttöön "Nginx full" -profiilin porttien 80 ja 443 sijaan erikseen), eikä koko palomuurin poistaminen käytöstä/ottaminen käyttöön uusien sääntöjen käyttöönottamiseksi ole enää tarpeen.)

Kun aloitin GNU/Linux (Ubuntu) -palvelimien kanssa, palomuurin asentaminen edellytti potentiaalisesti monimutkaisen iptables-asetustiedoston manuaalista luomista ja ylläpitoa. Olen kuitenkin äskettäin löytänyt ufw:n, joka on lyhenne sanoista Uncomplicated Firewall – ja sitä se todellakin on :-)

Ubuntu Server 14.04 -asennuksessani oli jo ufw asennettuna, mutta jos sinulla ei ole, asenna se vain arkistoista:

sudo apt-get install ufw

UFW on itse asiassa vain työkalu, joka yksinkertaistaa iptables-konfiguraatiota – kulissien takana suodatuksen hoitavat edelleen iptables ja Linux-ytimen palomuuri, joten ufw ei ole näitä huonompi eikä turvallisempi. Koska ufw kuitenkin helpottaa palomuurin konfigurointia huomattavasti, se voi vähentää inhimillisten virheiden riskiä ja on siksi mahdollisesti turvallisempi kokemattomille ylläpitäjille.

Jos palvelimesi on määritetty käyttämään sekä IPv6:ta että IPv4:ää, varmista, että tämä on käytössä myös UFW:lle. Muokkaa tiedostoa /etc/default/ufw ja etsi rivi, jossa lukee IPV6=yes. Minun asennuksessani se oli jo rivillä, mutta jos sitä ei ole tai jos siinä lukee ei, sinun kannattaa muokata sitä.

Käytä sitten komentokehotetta ottaaksesi käyttöön haluamasi portit. Jos olet yhteydessä palvelimeesi ssh:n kautta, varmista, että sallit myös sen, muuten se voi häiritä yhteyttäsi ja mahdollisesti lukita sinut ulos palvelimeltasi, kun aktivoit sen – riippuen siitä, onko sinulla fyysinen pääsy palvelimelle vai ei, tämä voi olla hieman hankalaa ;-)

Jos esimerkiksi käytät ssh:ta vakioportissa 22 ja määrität web-palvelinta, joka tukee sekä salaamattomia (HTTP portissa 80) että salattuja (HTTPS portissa 443) yhteyksiä, sinun pitäisi määrittää ufw antamalla seuraavat komennot:

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

Jos tarvitset lisää sääntöjä, lisää ne vain kuten yllä.

Jos sinulla on staattinen IP-osoite ja sinun tarvitsee voida muodostaa yhteys SSH:n kautta vain yhdestä sijainnista, voit myös rajoittaa SSH-yhteydet yhteen lähtöosoitteeseen seuraavasti:

sudo ufw allow from 192.168.0.1 to any port 22

Syötä tietenkin oma IP-osoitteesi.

Kun olet valmis, ota ufw käyttöön kirjoittamalla:

sudo ufw enable

Ja olet valmis! Palomuuri on käynnissä ja käynnistyy automaattisesti, kun käynnistät palvelimesi uudelleen :-)

Jos teet muutoksia ufw-kokoonpanoon, sinun on ehkä poistettava se käytöstä ja otettava se uudelleen käyttöön, jotta muutokset tulevat voimaan, kuten tässä:

sudo ufw disable
sudo ufw enable

Voit tarkastella nykyistä kokoonpanoa kirjoittamalla vain:

sudo ufw status

Jos ufw ei ole käytössä, tämä näyttää vain "inactive"-viestin, muuten se listaa tällä hetkellä määritetyt säännöt.

Jaa BlueskyssäJaa FacebookissaJaa LinkedInissäJaa TumblrissaJaa X:ssäJaa LinkedInissäPin Pinterestissä

Mikkel Christensen

Kirjoittajasta

Mikkel Christensen
Mikkel on miklix.com-sivuston luoja ja omistaja. Hänellä on yli 20 vuoden kokemus ammattimaisena tietokoneohjelmoijana/ohjelmistokehittäjänä, ja tällä hetkellä hän työskentelee kokopäiväisesti suuressa eurooppalaisessa IT-yrityksessä. Kun hän ei ole bloggaamassa, hän käyttää vapaa-aikaansa monenlaisiin kiinnostuksen kohteisiin, harrastuksiin ja aktiviteetteihin, mikä saattaa jossain määrin heijastua tällä verkkosivustolla käsiteltävien aiheiden moninaisuuteen.