Туннельный защищенный TCP-сервер

358
user948773

Какое программное обеспечение можно использовать для защиты (с помощью пароля / сертификата) доступа к tcp-серверу (например, веб-серверу)?

фон: программное обеспечение tcp-сервера не имеет аутентификации и не может быть изменено. услуга должна предоставляться только аутентифицированным пользователям.

Пример: веб-сервер на порту 80, который заблокирован брандмауэром

Сервер работает на Windows или Linux

5 Клиентские компьютеры (Windows) должны получить доступ к веб-серверу после аутентификации

некоторая программа запускает tcp Server через порт 1234 (общедоступный, не блокируемый брандмауэром)

входящие соединения через порт 1234 после успешной аутентификации перенаправляются на порт 80 . Трафик должен быть зашифрован

Какое программное обеспечение (режим) можно использовать? stunnel, openvpn, openssh

0
Windows или Linux? И можете ли вы добавить некоторые подробности о том, почему tcp-сервер не может быть настроен для использования другого порта и аутентификации. harrymc 5 лет назад 1
Можно использовать другой порт, но к программному обеспечению сервера нельзя добавить ни аутентификацию, ни шифрование user948773 5 лет назад 0
Согласно http://software.wheelhouse.org/ssl/stunnel.shtml проверка сертификата может помочь? user948773 5 лет назад 0
Я не вижу другого решения, кроме использования современного TCP-сервера и пересылки URL-адресов на ваш ограниченный сервер, а также получения и передачи ответов. harrymc 5 лет назад 0

2 ответа на вопрос

0
harrymc

Для веб-сервера решение заключается в создании интерфейсного веб-сервера и использовании вашего сервера в качестве внутреннего.

Например, вы можете использовать Apache в качестве интерфейсного веб-сервера, который будет передавать URL-адрес, получать ответ и возвращать его пользователю. Nginx - еще один популярный веб-сервер.

См., Например, статью Как настроить интерфейсный сервер Apache и сохранить ценные IP-адреса .

Если это не веб-сервер, вы также можете посмотреть, как настроить прокси-сервер аутентификации.

0
Abraham

Вы можете получить доступ к серверу Linux через ssh с возможностью туннелирования: ssh -L 1234: 192.168.1.1: 80 user @ server

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