Как ограничить доступ к серверному приложению

Я записал простое серверное приложение (с интерфейсом HTTP). Я хочу удостовериться, что только звонит от локальной машины, обрабатываются - т.е. Я хочу препятствовать тому, чтобы посторонние получали доступ/использовали к моему серверу.

Как я могу ограничить посторонних (т.е. запросы от удаленных машин)?

BTW, я развертываюсь на Linux

0
задан 30.08.2013, 22:56

4 ответа

Другие ответы предполагают, что Вы записали CGI апачское приложение / модульное апачское приложение - я предположу, что Вы записали свое собственное приложение, которое также слушает на порте 80 в целях администрирования.

На поле Linux, самый простой метод (не включающий имеющий необходимость записать Вашу собственную .htaccess систему ACL или подобный), должен использовать iptables для предотвращения чего-либо кроме локального доступа к предпочтительному порту:

iptables -A INPUT -p tcp --dport 80 -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP

Очевидно, это лучше подается для помещения в init сценарий, который загрузится на начальной загрузке и мог потенциально быть сделан более устойчивым, но в текущих ограниченных целях, как определено, это должно сделать задание.:)

1
ответ дан 24.11.2019, 12:16

попытайтесь добавить .htaccess (в Ваше веб-приложение) файл, где Вы указываете что-то как:
позвольте от 192.168.1.
или безотносительно IP скороговорки для локального URL Вы используете (также 127.0.0.1, должен быть допустимый).

0
ответ дан 24.11.2019, 12:16

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

Запрещать внешние соединения и делать его только доступным для localhost:

order deny,allow
deny from all
allow from 127.0.0.1

Просто удостоверьтесь, что Вы указываете order deny,allow так, чтобы deny имеет приоритет. Также обязательно укажите deny from all так, чтобы всему другому дюйм/с запретили получить доступ к приложению.

Можно также указать диапазон адресов в последней строке путем исключения последней группы числа.

0
ответ дан 24.11.2019, 12:16

Вы надеетесь 'связывать ()' сокет слушания, который Вы открываете для определенного IP-адреса. Если Вы свяжете с петлевым адресом, то только программы на локальной машине смогут соединиться (localhost сеть никогда не направляется за пределами данной машины),

Это будет более просто, чем конфигурация брандмауэринга, потому что это полностью сам содержавшее в рамках Вашей программы и потому что это портативно.

0
ответ дан 24.11.2019, 12:16

Теги

Похожие вопросы