Открытые порты только на определенных доменах - PullRequest
0 голосов
/ 25 апреля 2019

Я ищу правильную команду, чтобы открыть порты только для определенных доменов.Домен и его поддомен, перейдите на один и тот же сервер (CentOS)

Однако по соображениям безопасности я хочу открывать сообщения только на определенных поддоменах.

На других доменах порты должнынедоступен, поэтому порт ftp 21 должен быть открыт только на ftp.domain.com, а не на ssh.domain.com или mysql.domain.com

Так что я хочу заблокировать все (кроме порта 80и 443) и разрешать определенные порты только определенным доменам.

пример

  • 21 на ftp.domain.com
  • 22 на ssh.domain.com
  • 3306 на mysql.domain.com

Я знаю, что это должно работать с iptables, но, к сожалению, у меня проблемы с поиском правильной команды.

Я нашел только это, ноЯ буду принимать только входящие порты.iptables -A OUTPUT -p udp --sport 53 -m string --string "google.com" --algo bm -j ACCEPT

Возможно, у вас есть более элегантное решение, чем iptables.

1 Ответ

0 голосов
/ 26 апреля 2019

Вы можете сделать это с помощью обратного прокси-сервера.Прокси-сервер может фильтровать нужный трафик для фактического сервиса.Итак, как это будет работать -

  1. Пусть все ваши запросы поступят на обратный прокси-сервер.например.HAPROXY или nginx (оба работают на уровне 4 и 7)
  2. Поместите правило для имени хоста в конфигурацию прокси-сервера.
  3. Переадресация желаемого трафика на фактический хост.
...