103 слова | 1 минута
Firewall
Установка и настройка брандмауэра позволит закрыть все порты, кроме необходимых нам —22 (SSH), 80 (HTTP), 443 (HTTPS). Первый протокол необходим для подключения к удаленному серверу. Второй и третий необходим для связи между клиентом и сайтом. Главное их отличие в том, что HTTPS — это зашифрованный HTTP. Шифрование данных происходит благодаря SSL-сертификату.
Установим утилиту UFW:
sudo apt install ufw
После успешной установки добавим веб-сервер в список доступных приложений брандмауэра:
sudo nano /etc/ufw/applications.d/nginx.ini
Заполним файл следующим образом:
[Nginx HTTP]
title=Web Server
description=Enable NGINX HTTP traffic
ports=80/tcp
[Nginx HTTPS]
title=Web Server (HTTPS)
description=Enable NGINX HTTPS traffic
ports=443/tcp
[Nginx Full]
title=Web Server (HTTP,HTTPS)
description=Enable NGINX HTTP and HTTPS traffic
ports=80,443/tcp
Проверим список доступных приложений:
sudo ufw app list
Если среди них есть веб-сервер, значит всё сделано верно. Теперь нужно запустить брандмауэр и разрешить передачу трафика по вышеуказанным портам:
sudo ufw enable
sudo ufw allow 'Nginx Full'
sudo ufw allow 'OpenSSH'
Чтобы проверить изменения, вводим команду:
sudo ufw status
RabbitMQ
sudo nano /etc/ufw/applications.d/rabbitmq.ini
Заполним файл следующим образом:
[RabbitMQ]
title=Web Server
description=Enable GUI HTTP traffic
ports=4369,5671,5672,15672,15673,15674,15675,25672,61613,61614,1883/tcp
sudo ufw allow 'RabbitMQ'
Полный список портов:
sudo ufw allow 4369
sudo ufw allow 5671:5672/tcp
sudo ufw allow 15672:15675/tcp
sudo ufw allow 25672
sudo ufw allow 61613:61614/tcp
sudo ufw allow 1883
sudo ufw allow 15674
sudo ufw reload
Проверка портов
ss -plnt