Android

Cum să configurați un firewall cu ufw pe ubuntu 18.04

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall rules with UFW

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall rules with UFW

Cuprins:

Anonim

Un firewall configurat corect este unul dintre cele mai importante aspecte ale securității generale a sistemului. În mod implicit, Ubuntu vine cu un instrument de configurare pentru firewall numit UFW (Uncomplicated Firewall). UFW este un front-friendly ușor de utilizat pentru gestionarea regulilor firewall-ului iptables, iar principalul său obiectiv este de a facilita gestionarea iptables sau după cum spune numele necomplicat.

Cerințe preliminare

Înainte de a începe cu acest tutorial, asigurați-vă că sunteți conectat la serverul dvs. cu un cont de utilizator cu privilegii sudo sau cu utilizator root. Cea mai bună practică este să rulați comenzi administrative ca utilizator sudo în loc de root. Dacă nu aveți un utilizator sudo pe sistemul Ubuntu, puteți crea unul urmând aceste instrucțiuni.

Instalați UFW

Firewall-ul necomplicat ar trebui instalat implicit în Ubuntu 18.04, dar dacă nu este instalat pe sistemul dvs., puteți instala pachetul tastând:

sudo apt install ufw

Verificați starea UFW

După finalizarea instalării, puteți verifica starea UFW cu următoarea comandă:

sudo ufw status verbose

UFW este dezactivat în mod implicit. Dacă nu ați activat niciodată UFW înainte, ieșirea va arăta astfel:

Status: inactive

Dacă UFW este activat, ieșirea va arăta similar cu următoarele:

UFW Politici implicite

În mod implicit, UFW va bloca toate conexiunile primite și va permite toate conexiunile de ieșire. Aceasta înseamnă că oricine încearcă să acceseze serverul dvs. nu se va putea conecta decât dacă deschideți portul în mod specific, în timp ce toate aplicațiile și serviciile care rulează pe serverul dvs. vor putea accesa lumea exterioară.

Politicile implicite sunt definite în /etc/default/ufw și pot fi schimbate folosind sudo ufw default comanda.

Politicile pentru firewall sunt fundamentul pentru construirea de reguli mai detaliate și definite de utilizator. În majoritatea cazurilor, politicile implicite inițiale ale UFW sunt un bun punct de plecare.

Profiluri de aplicații

Când instalați un pachet cu comanda apt acesta va adăuga un profil de aplicație în directorul /etc/ufw/applications.d . Profilul descrie serviciul și conține setări UFW.

Puteți lista toate profilurile de aplicații disponibile pe serverul dvs. tastând:

sudo ufw app list

În funcție de pachetele instalate pe sistemul dvs., rezultatul va fi similar cu următoarele:

Available applications: Dovecot IMAP Dovecot POP3 Dovecot Secure IMAP Dovecot Secure POP3 Nginx Full Nginx HTTP Nginx HTTPS OpenSSH Postfix Postfix SMTPS Postfix Submission

Pentru a găsi mai multe informații despre un profil specific și reguli incluse, utilizați următoarea comandă:

sudo ufw app info 'Nginx Full'

Profile: Nginx Full Title: Web Server (Nginx, HTTP + HTTPS) Description: Small, but very powerful and efficient web server Ports: 80, 443/tcp

După cum puteți vedea din ieșirea de mai sus, profilul „Nginx Full” deschide porturile 80 și 443 .

Permiteți conexiuni SSH

Înainte de a activa firewall-ul UFW, trebuie să adăugăm o regulă care să permită conexiunile SSH primite. Dacă vă conectați la serverul dvs. dintr-o locație de la distanță, care este aproape întotdeauna cazul și activați firewall-ul UFW înainte de a permite în mod explicit conexiunile SSH primite, nu vă veți mai putea conecta la serverul dvs. Ubuntu.

Pentru a configura firewall-ul UFW pentru a permite conexiunile SSH primite, tastați următoarea comandă:

sudo ufw allow ssh

Rules updated Rules updated (v6)

Dacă ați schimbat portul SSH într-un port personalizat în loc de portul 22, va trebui să deschideți portul respectiv.

De exemplu, dacă demonul dvs. ssh ascultă portul 4422 , atunci puteți utiliza următoarea comandă pentru a permite conexiunile pe acel port:

sudo ufw allow 4422/tcp

Activați UFW

Acum, când firewall-ul UFW este configurat pentru a permite conexiunile SSH primite, îl putem activa tastând:

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

Vi se va avertiza că activarea firewall-ului poate perturba conexiunile ssh existente, trebuie doar să tastați y și să apăsați Enter .

Permiteți conexiunile pe alte porturi

În funcție de aplicațiile care rulează pe serverul dvs. și de nevoile dvs. specifice, va trebui, de asemenea, să permiteți accesul la alte porturi.

Mai jos vă vom prezenta câteva exemple despre cum puteți permite conexiunile primite la unele dintre cele mai comune servicii:

Port deschis 80 - HTTP

Conexiunile HTTP pot fi permise cu următoarea comandă:

sudo ufw allow

în loc de http, puteți utiliza numărul de port, 80:

sudo ufw allow 80/tcp

sau puteți utiliza profilul aplicației, în acest caz, „Nginx

sudo ufw allow 'Nginx

Port deschis 443 - HTTPS

Conexiunile HTTP pot fi permise cu următoarea comandă:

sudo ufw allow

Pentru a obține același lucru în loc de profilul https puteți utiliza numărul de port, 443 :

sudo ufw allow 443/tcp

sau puteți utiliza profilul aplicației, „Nginx

sudo ufw allow 'Nginx

Port deschis 8080

sudo ufw allow 8080/tcp

Permiteți porturile

În loc să permitem accesul la porturi individuale, UFW ne permite să permitem accesul la intervale de porturi. Când permiteți intervale de porturi cu UFW, trebuie să specificați protocolul, fie tcp , fie udp . De exemplu, dacă doriți să permiteți porturile de la 7100 la 7200 atât pe tcp cât și pe udp atunci executați următoarea comandă:

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

Permiteți adrese IP specifice

Pentru a permite accesul pe toate porturile de la aparatul de origine cu o adresă IP de 64.63.62.61, specificați from urmată de adresa IP pe care doriți să o lista albă:

sudo ufw allow from 64.63.62.61

Permiteți adrese IP specifice pe un port specific

Pentru a permite accesul la un anumit port, să spunem portul 22 de la mașina dvs. de lucru cu adresa IP de 64.63.62.61, folosiți to any port urmat de numărul de port:

sudo ufw allow from 64.63.62.61 to any port 22

Permiteți subnetele

Comanda pentru a permite conectarea la o subrețea de adrese IP este aceeași ca atunci când utilizați o singură adresă IP, singura diferență este că trebuie să specificați netmasca. De exemplu, dacă doriți să permiteți accesul la adrese IP cuprinse între 192.168.1.1 și 192.168.1.254 până la portul 3360 (MySQL), puteți utiliza această comandă:

sudo ufw allow from 192.168.1.0/24 to any port 3306

Permiteți conexiunile la o interfață de rețea specifică

Pentru a permite accesul într-un anumit port, să zicem portul 3360 doar la o anumită interfață de rețea eth2 , atunci trebuie să specificați allow in on și numele interfeței de rețea:

sudo ufw allow in on eth2 to any port 3306

Refuză conexiunile

Politica implicită pentru toate conexiunile primite este setată să deny și dacă nu ați modificat-o, UFW va bloca toată conexiunea de intrare, decât dacă deschideți în mod specific conexiunea.

Să zicem că ați deschis porturile 80 și 443 și serverul dvs. este atacat din rețeaua 23.24.25.0/24 . Pentru a refuza toate conexiunile din 23.24.25.0/24 puteți utiliza următoarea comandă:

sudo ufw deny from 23.24.25.0/24

sudo ufw deny from 23.24.25.0/24 to any port 80 sudo ufw deny from 23.24.25.0/24 to any port 443

Scrierea regulilor de refuz este aceeași cu regulile de autorizare a scrisului, trebuie doar să înlocuiți allow cu deny .

Ștergeți regulile UFW

Există două moduri diferite de a șterge regulile UFW, după numărul de regulă și specificând regula reală.

Ștergerea regulilor UFW după numărul de regulă este mai ușoară mai ales dacă sunteți nou la UFW. Pentru a șterge o regulă cu un număr de regulă mai întâi, trebuie să găsiți numărul regulii pe care doriți să o ștergeți, puteți face asta cu următoarea comandă:

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

Pentru a șterge regula numărul 3, regula care permite conexiunile la portul 8080, utilizați următoarea comandă:

sudo ufw delete 3

A doua metodă este să ștergeți o regulă specificând regula reală, de exemplu, dacă ați adăugat o regulă pentru a deschide portul 8069 o puteți șterge cu:

sudo ufw delete allow 8069

Dezactivează UFW

Dacă, din orice motiv, doriți să opriți UFW și să dezactivați toate regulile pe care le puteți utiliza:

sudo ufw disable

Mai târziu, dacă doriți să reactivați UTF și să activați toate regulile, introduceți doar:

sudo ufw enable

Resetați UFW

Resetarea UFW va dezactiva UFW și va șterge toate regulile active. Acest lucru este util dacă doriți să reveniți la toate modificările și să începeți nou.

Pentru a reseta UFW pur și simplu introduceți următoarea comandă:

sudo ufw reset

Concluzie

Ați învățat cum să instalați și să configurați firewallul UFW pe serverul dvs. Ubuntu 18.04. Asigurați-vă că permiteți toate conexiunile primite care sunt necesare pentru funcționarea corectă a sistemului dvs., limitând în același timp toate conexiunile inutile.

ufw firewall iptables securitate ubuntu