ufw konfigūravimas žingsnis po žingsnio: Linux ugniasienė 2026

Paleiskite serveryje viena komanda (pirmiausia patikrinkite skripto turinį žemiau):

curl -sSL https://cp.lv/scripts/nastrojka-ufw-poshagovo.sh | sudo bash

…arba su wget:

wget -qO- https://cp.lv/scripts/nastrojka-ufw-poshagovo.sh | sudo bash

Skripto turinys nastrojka-ufw-poshagovo.sh:

#!/usr/bin/env bash
# Basic ufw firewall setup (Ubuntu/Debian)
set -euo pipefail

# 1. Install
sudo apt update && sudo apt install -y ufw

# 2. Default policies: deny everything inbound, allow outbound
sudo ufw default deny incoming
sudo ufw default allow outgoing

# 3. IMPORTANT: allow SSH before enabling, otherwise you lock yourself out
sudo ufw allow OpenSSH
sudo ufw limit OpenSSH

# 4. Web ports: HTTP and HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# 5. Logging and enable (--force skips the interactive confirmation)
sudo ufw logging on
sudo ufw --force enable

# 6. Verify
sudo ufw status verbose
echo "Done: the firewall is on; SSH, HTTP and HTTPS are open."

ufw (Uncomplicated Firewall) — paprastas iptables apvalkalas. Bazinis konfigūravimas užtrunka keturias komandas: uždrausti visą įeinantį srautą, leisti išeinantį, atverti SSH ir įjungti ugniasienę. Žemiau — visa seka su patikrinimu, kad neprarastumėte prieigos prie serverio.

Ką daro ufw

Pagal numatytuosius nustatymus serveris priima prisijungimus visais atvirais prievadais. ufw leidžia aiškiai nurodyti, kurie prievadai pasiekiami iš išorės, o visa kita blokuoti. Tai pirmoji bet kurio VPS apsaugos linija.

1 žingsnis. Diegimas

Ubuntu sistemoje ufw paprastai jau įdiegtas. Jei ne:

apt update
apt install -y ufw

2 žingsnis. Numatytosios politikos

ufw default deny incoming
ufw default allow outgoing

Dabar visas įeinantis srautas blokuojamas, o išeinantis leidžiamas.

3 žingsnis. SVARBU: leiskite SSH prieš įjungdami

Jei įjungsite ugniasienę be SSH taisyklės, prarasite prieigą:

ufw allow OpenSSH

Arba pagal prievado numerį (jei SSH veikia nestandartiniame prievade):

ufw allow 2222/tcp

4 žingsnis. Žiniatinklio prievadai

Svetainei ar API atverkite HTTP ir HTTPS:

ufw allow 80/tcp
ufw allow 443/tcp

Galima naudoti programų profilius:

ufw app list
ufw allow 'Nginx Full'

5 žingsnis. Įjungimas

ufw enable

Patvirtinkite y. Patikrinkite būseną:

ufw status verbose

Išvestyje matysite aktyvias taisykles ir numatytąsias politikas.

Prieigos ribojimas pagal IP

Leisti SSH tik iš jūsų IP — tai stipriai sumažina brutalios jėgos atakų riziką:

ufw allow from 203.0.113.10 to any port 22 proto tcp

Leisti visą potinklį:

ufw allow from 192.168.1.0/24

Uždrausti konkretų IP:

ufw deny from 198.51.100.5

SSH apsauga nuo slaptažodžių perrinkimo

Taisyklė limit blokuoja IP, kuris per 30 sekundžių sukuria daugiau nei 6 prisijungimus:

ufw limit OpenSSH

Tai geras papildymas prie fail2ban.

Taisyklių valdymas

Parodyti taisykles su numeriais:

ufw status numbered

Pašalinti taisyklę pagal numerį:

ufw delete 3

Pašalinti pagal aprašymą:

ufw delete allow 80/tcp

Žurnalų rašymas

ufw logging on
ufw logging medium

Žurnalai rašomi į /var/log/ufw.log. Stebėti realiuoju laiku:

tail -f /var/log/ufw.log

Naudingos komandos

Komanda Veiksmas
ufw status verbose Išsami būsena
ufw reload Perskaityti taisykles iš naujo
ufw disable Išjungti ugniasienę
ufw reset Atstatyti visas taisykles

Programų profiliai

ufw saugo paruoštus prievadų profilius populiarioms tarnyboms. Peržiūrėti sąrašą:

ufw app list

Profilio informacija:

ufw app info 'Nginx Full'

Naudojant profilius taisyklės tampa aiškesnės: vietoj 80,443/tcp matote suprantamą pavadinimą Nginx Full.

IPv6 konfigūravimas

Jei serveris turi IPv6, įsitikinkite, kad ufw valdo ir jį. Faile /etc/default/ufw:

IPV6=yes

Po pakeitimo perkraukite ugniasienę:

ufw disable && ufw enable

Taisyklės allow ir deny bus automatiškai pritaikytos abiem protokolams.

Taisyklių eiliškumas yra svarbus

ufw apdoroja taisykles iš viršaus į apačią ir sustoja ties pirmuoju atitikmeniu. Todėl draudžiančias taisykles konkretiems IP reikia įterpti AUKŠČIAU bendrų leidžiančių taisyklių. Įterpti taisyklę į pirmą poziciją:

ufw insert 1 deny from 198.51.100.5

Eiliškumą patikrinkite komanda ufw status numbered.

Atsarginė kopija ir atkūrimas

ufw taisyklės saugomos tekstiniuose failuose. Išsaugokite juos:

cp -r /etc/ufw /root/ufw-backup

Perkeliant į naują serverį grąžinkite failus ir paleiskite ufw iš naujo. Tai greičiau, nei rankomis suvesti dešimtis taisyklių.

Dažni klausimai

Ar neprarasiu prieigos įjungdamas ugniasienę? Tik jei pamiršite ufw allow OpenSSH. Visada atverkite SSH prievadą prieš ufw enable.

Ar galima ufw ir iptables kartu? ufw pats valdo iptables. Rankinės iptables taisyklės gali konfliktuoti — naudokite kažką vieną.

Kaip atverti prievadų diapazoną? ufw allow 6000:6010/tcp atvers prievadus nuo 6000 iki 6010.

Ar reikia ufw, jei yra fail2ban? Taip, tai skirtingi lygiai: ufw uždaro nereikalingus prievadus, fail2ban blokuoja pažeidėjus atviruose. Jie veikia kartu.

Kaip laikinai išjungti ugniasienę derinimui? ufw disable, o po patikrinimo — ufw enable. Taisyklės išsaugomos.


Ugniasienė — privalomas saugumo minimumas. Įdiekite projektą VPS saugumui ir VPN arba įprastoje VPS nuomoje. Visą konfigūravimą atliks Serverių administravimas.

Edgars Kalējs