Miklix

Како да поставите заштитен ѕид на серверот Ubuntu

Објавено: 5 март 2025, во 19:55:18 UTC

Оваа статија објаснува и дава неколку примери за тоа како да поставите заштитен ѕид на GNU/Linux користејќи ufw, што е кратенка за Некомплициран огнен ѕид - и името е соодветно, навистина е многу лесен начин да бидете сигурни дека немате отворени повеќе порти отколку што треба.


Оваа страница беше машински преведена од англиски за да биде достапна за што повеќе луѓе. За жал, машинското преведување сè уште не е усовршена технологија, така што може да се појават грешки. Ако сакате, можете да ја видите оригиналната англиска верзија овде:

How to Set Up a Firewall on Ubuntu Server

Информациите во овој пост се засноваат на Ubuntu Server 14.04 x64. Може или не може да важи за други верзии. (Ажурирање: Можам да потврдам дека информациите во оваа објава се во основа сè уште валидни и функционални од Ubuntu Server 24.04, но во последните 10 години, ufw стана нешто „попаметно“ со тоа што има профили за заеднички серверски апликации (на пример, можете да овозможите „Nginx full“ наместо портите 80 и да ги исклучите сите нови правила) примената повеќе не е потребна)

Кога првпат започнав со GNU/Linux (Ubuntu) сервери, поставувањето заштитен ѕид вклучуваше рачно создавање и одржување на потенцијално сложена конфигурациска датотека за iptables. Сепак, неодамна го открив ufw , што е кратенка за Некомплициран заштитен ѕид - и навистина е :-)

Мојата инсталација на Ubuntu Server 14.04 веќе имаше инсталирано ufw, но ако не го имате, едноставно инсталирајте го од складиштата:

sudo apt-get install ufw

UFW е всушност само алатка која ја поедноставува конфигурацијата на iptables - зад сцената, сè уште е iptables и заштитниот ѕид на Linux кернелот што го прави филтрирањето, така што ufw не е ниту помалку, ниту посигурен од овие. Меѓутоа, бидејќи ufw многу го олеснува правилното конфигурирање на заштитен ѕид, може да го намали ризикот од човечка грешка и затоа е веројатно побезбеден за неискусните администратори.

Ако вашиот сервер е конфигуриран со IPv6, како и со IPv4, проверете дали ова е овозможено и за UFW. Уредете ја датотеката /etc/default/ufw и побарајте линија која вели IPV6=да . На мојата инсталација веќе беше таму, но ако не е или ако вели не, треба да го уредите

Потоа едноставно користете ја командната линија за да ги овозможите портите што сакате да ги отворите. Ако сте поврзани со вашиот сервер преку ssh, погрижете се да го дозволите и тоа или може да ја наруши вашата врска и евентуално да ве заклучи надвор од вашиот сервер кога ќе го активирате - во зависност од тоа дали имате физички пристап до серверот или не, ова може да биде малку незгодно ;-)

На пример, ако користите ssh на стандардната порта 22 и конфигурирате веб-сервер кој поддржува и нешифрирани (HTTP на порта 80) и шифрирани (HTTPS на портата 443) конекции, ќе ги издадете следните команди за конфигурирање на ufw:

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

Ако ви требаат повеќе правила, едноставно додајте ги како погоре.

Ако имате статична IP адреса и треба само да можете да се поврзете преку ssh од една локација, можете исто така да ги ограничите ssh врските на една адреса на потекло како ова:

sudo ufw allow from 192.168.0.1 to any port 22

Се разбира, наместо тоа, внесете ја вашата сопствена IP адреса.

Кога ќе завршите, овозможете ufw со внесување:

sudo ufw enable

И завршивте! Заштитниот ѕид работи и автоматски ќе се вклучи кога ќе го рестартирате серверот :-)

Ако направите промени во конфигурацијата ufw, можеби ќе треба да ја оневозможите и повторно да ја овозможите за да ги ставите во сила, вака:

sudo ufw disable
sudo ufw enable

За да ја погледнете моменталната конфигурација, едноставно внесете:

sudo ufw status

Ако ufw не е овозможено, ова едноставно ќе прикаже „неактивна“ порака, во спротивно ќе ги наведе моментално дефинираните правила.

Споделете на BlueskyСподелете на ФејсбукСподелете на LinkedInСподелете на TumblrСподелете на XСподелете на LinkedInЗакачи на Pinterest

Микел Банг Кристенсен

За авторот

Микел Банг Кристенсен
Микел е креатор и сопственик на miklix.com. Тој има над 20 години искуство како професионален компјутерски програмер/развивач на софтвер и моментално е вработен со полно работно време во голема европска ИТ корпорација. Кога не пишува блог, тој го поминува своето слободно време на широк спектар на интереси, хоби и активности, кои до одреден степен може да се рефлектираат во разновидните теми опфатени на оваа веб-локација.