Како поставити заштитни зид на Убунту серверу
Објављено: 15. фебруар 2025. 21:40:05 UTC
Последње ажурирано: 12. јануар 2026. 08:38:10 UTC
Овај чланак објашњава и даје неке примере како подесити заштитни зид (фајервол) на ГНУ/Линуксу користећи ufw, што је скраћеница од Uncomplicated FireWall - и име је прикладно, заиста је веома једноставан начин да се уверите да немате отворено више портова него што је потребно.
How to Set Up a Firewall on Ubuntu Server
Информације у овом посту су засноване на Ubuntu Server-у 14.04 x64. Могу, али и не морају бити валидне за друге верзије. (Ажурирање: Могу да потврдим да су информације у овом посту у основи и даље валидне и функционалне од Ubuntu Server-а 24.04, међутим, у међувремену, ufw је постао донекле „паметнији“ тако што има профиле за уобичајене серверске апликације (на пример, можете омогућити „Nginx full“ уместо портова 80 и 443 одвојено) и онемогућавање/омогућавање целог заштитног зида да би се применила нова правила више није потребно)
Када сам први пут почео са ГНУ/Линукс (Убунту) серверима, подешавање заштитног зида (фајервола) је подразумевало ручно креирање и одржавање потенцијално сложеног конфигурационог фајла за iptables. Међутим, недавно сам открио ufw, што је скраћеница од Некомпликовани заштитни зид (Uncomplicated Firewall) – и заиста јесте :-)
Моја инсталација Ubuntu Server-а 14.04 је већ имала инсталиран ufw, али ако ваша није, једноставно га инсталирајте из репозиторијума:
UFW је заправо само алат који поједностављује конфигурацију iptables-а – иза кулиса, i dalje iptables и заштитни зид Linux језгра обављају филтрирање, тако да ufw није ни мање ни више безбедан од њих. Међутим, пошто ufw знатно олакшава правилно конфигурисање заштитног зида, може смањити ризик од људске грешке и стога је вероватно безбеднији за неискусне администраторе.
Ако је ваш сервер конфигурисан са IPv6 као и са IPv4, уверите се да је ово омогућено и за UFW. Измените датотеку /etc/default/ufw и потражите ред који каже IPV6=yes. На мојој инсталацији је већ био тамо, али ако није или ако пише не, требало би да га измените.
Затим једноставно користите командну линију да бисте омогућили портове које желите да отворите. Ако сте повезани са сервером путем ssh-а, обавезно дозволите и то, иначе би то могло да прекине вашу везу и евентуално вас блокира са сервера када га активирате – у зависности од тога да ли имате физички приступ серверу или не, ово може бити помало незгодно ;-)
На пример, ако користите ssh на стандардном порту 22 и конфигуришете веб сервер који подржава и нешифроване (HTTP на порту 80) и шифроване (HTTPS на порту 443) везе, издали бисте следеће команде за конфигурацију ufw:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Ако вам је потребно још правила, једноставно их додајте као што је горе наведено.
Ако имате статичку IP адресу и потребно вам је само да се повежете путем ssh-а са једне локације, можете ограничити ssh везе на једну почетну адресу на овај начин:
Наравно, уместо тога унесите своју ИП адресу.
Када завршите, омогућите ufw уносом:
И готови сте! Заштитни зид ради и аутоматски ће се покренути када поново покренете сервер :-)
Ако направите измене у конфигурацији ufw-а, можда ћете морати да је онемогућите и поново омогућите да би ступиле на снагу, овако:
sudo ufw enable
Да бисте видели тренутну конфигурацију, једноставно унесите:
Ако ufw није омогућен, ово ће једноставно приказати поруку „неактивно“, у супротном ће навести тренутно дефинисана правила.
