Безопасность имеет решающее значение, когда вы запускаете свой собственный сервер. Вы хотите убедиться, что только авторизованные пользователи могут получить доступ к вашему серверу, конфигурации и службам.
В Ubuntu есть предварительно загруженный брандмауэр. Это называется UFW (несложный брандмауэр). Хотя UFW - довольно простой брандмауэр, он удобен для пользователя, превосходен в фильтрации трафика и имеет хорошую документацию. Некоторых базовых знаний о Linux должно быть достаточно, чтобы настроить этот брандмауэр самостоятельно.
Установить UFW
Обратите внимание, что UFW обычно устанавливается по умолчанию в Ubuntu. Но если что-нибудь, вы можете установить его самостоятельно. Чтобы установить UFW, выполните следующую команду.
sudo apt-get install ufw
Разрешить соединения
Если вы используете веб-сервер, вы, очевидно, хотите, чтобы весь мир имел доступ к вашим веб-сайтам. Следовательно, вам нужно убедиться, что TCP-порт по умолчанию открыт.
sudo ufw allow 80/tcp
В общем, вы можете разрешить любой порт, который вам нужен, используя следующий формат:
sudo ufw allow <port>/<optional: protocol>
Запретить соединения
Если вам нужно запретить доступ к определенному порту, используйте это:
sudo ufw deny <port>/<optional: protocol>
Например, давайте запретим доступ к нашему порту MySQL по умолчанию.
sudo ufw deny 3306
UFW также поддерживает упрощенный синтаксис для наиболее распространенных сервисных портов.
root@127:~$ sudo ufw deny mysql
Rule updated
Rule updated (v6)
Настоятельно рекомендуется ограничить доступ к вашему SSH-порту (по умолчанию это порт 22) из любой точки, кроме доверенных IP-адресов (например, офис или дом).
Разрешить доступ с доверенного IP-адреса
Как правило, вам необходимо разрешить доступ только к публично открытым портам, таким как порт 80. Доступ ко всем остальным портам должен быть ограничен или ограничен. Вы можете внести в белый список ваш домашний / офисный IP-адрес (желательно, чтобы это был статический IP-адрес), чтобы иметь возможность доступа к вашему серверу через SSH или FTP.
sudo ufw allow from 192.168.0.1 to any port 22
Давайте также разрешить доступ к порту MySQL.
sudo ufw allow from 192.168.0.1 to any port 3306
Теперь выглядит лучше. Давайте двигаться дальше.
Включить UFW
Перед включением (или перезапуском) UFW необходимо убедиться, что порту SSH разрешено принимать соединения с вашего IP-адреса. Чтобы запустить / включить брандмауэр UFW, используйте следующую команду:
sudo ufw enable
Вы увидите это:
root@127:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Введите Y , затем нажмите Enter, чтобы включить брандмауэр.
Firewall is active and enabled on system startup
Проверьте статус UFW
Посмотрите на все ваши правила.
sudo ufw status
Вы увидите вывод, похожий на следующий.
sudo ufw status
Firewall loaded
To Action From
-- ------ ----
22:tcp ALLOW 192.168.0.1
22:tcp DENY ANYWHERE
Используйте параметр «verbose», чтобы увидеть более подробный отчет о состоянии.
sudo ufw status verbose
Отключить / перезагрузить / перезапустить UFW
Чтобы отключить (остановить) UFW, выполните эту команду.
sudo ufw disable
Если вам нужно перезагрузить UFW (перезагрузить правила), выполните следующее.
sudo ufw reload
Чтобы перезапустить UFW, вам нужно сначала отключить его, а затем снова включить.
sudo ufw disable
sudo ufw enable
Еще раз, прежде чем включать UFW, убедитесь, что порт SSH разрешен для вашего IP-адреса.
Удаление правил
Чтобы управлять вашими правилами UFW, вам нужно перечислить их. Вы можете сделать это, проверив статус UFW с помощью параметра «пронумерован». Вы увидите вывод, похожий на следующий.
root@127:~$ sudo ufw status numbered
Status: active
To Action From
-- ------ ----
[ 1] 22 ALLOW IN 192.168.0.1
[ 2] 80 ALLOW IN Anywhere
[ 3] 3306 ALLOW IN 192.168.0.1
[ 4] 22 DENY IN Anywhere
Заметили цифры в квадратных скобках? Теперь, чтобы удалить любое из этих правил, вам нужно будет использовать эти цифры.
sudo ufw delete [number]
Включение поддержки IPv6
Если вы используете IPv6 на своем VPS, вам нужно убедиться, что поддержка UFW включена в IPv6. Для этого откройте файл конфигурации в текстовом редакторе.
sudo nano /etc/default/ufw
После открытия убедитесь, что IPV6
установлено значение «да»:
IPV6=yes
После внесения изменений сохраните файл. Затем перезапустите UFW, отключив и снова включив его.
sudo ufw disable
sudo ufw enable
Вернуться к настройкам по умолчанию
Если вам нужно вернуться к настройкам по умолчанию, просто введите следующую команду. Это отменит любые ваши изменения.
sudo ufw reset
Заключение
В целом, UFW может защитить ваш VPS от самых распространенных попыток взлома. Конечно, ваши меры безопасности должны быть более подробными, чем просто использование UFW. Тем не менее, это хорошее (и необходимое) начало.
Если вам нужно больше примеров использования UFW, вы можете обратиться к UFW - Справка сообщества Wiki .