Как обезопасить локальные серверы?

У меня solr (веб-сервер http, используемый для поиска) работает на порту 8334, сервер обмена сообщениями rabbitmq работает на порту 6633.

На той же машине у меня есть веб-сервер, доступ к которому осуществляется из внешнего мира.

Теперь, как я могу защитить сервер solr и rabbit-mq, ​​чтобы никто из внешней сети не мог получить доступ к порту сервера tcp? Это означает, что сервер solr и rabbit-mq следует вызывать только на локальном компьютере.

Я запускаю веб-сервер, db server, solr и rabbitmq в одной системе. Я использую сервер Ubuntu 9.10.

Может ли кто-нибудь помочь мне в этом?

4 ответа

Другая хорошая (и простая) практика, разрешающая только локальный доступ к службам, - это привязка ваших служб к 127.0.0.1...

Изменяя iptables, вы можете ограничить определенные порты диапазоном IP-адресов: (Изменить диапазон IP-адресов для вашей локальной сети)

http веб-сервер, используемый для поиска:

-A INPUT -p tcp --destination-port 8334 -m iprange --src-range 192.168.1.100-192.168.1.200 -j ACCEPT 

Сервер обмена сообщениями rabbitmq:

-A INPUT -p tcp --destination-port 6633 -m iprange --src-range 192.168.1.100-192.168.1.200 -j ACCEPT 

У вас нет какого-то брандмауэра или хотя бы NAT-роутера между интернетом и вашим сервером? Для этого вы должны настроить переадресацию портов для портов, которые слушает ваш публичный веб-сервер.

И вы должны рассмотреть вопрос о помещении сервера в DMZ. Это исключило бы необходимость пропускать весь интернет в вашу локальную сеть.

Базовый брандмауэр IPtables должен иметь возможность запретить кому-либо доступ к любому порту, к которому вы не хотите, чтобы люди обращались.

Просто разрешите tcp 80 и 443 (или другие порты, которые вы используете для своего веб-сервера) и запретите все остальное.

http://easyfwgen.morizot.net/gen/

Должно быть хорошей отправной точкой.

Другие вопросы по тегам