Я использую ssh
клиент как SOCKS
сервер, запустив на удаленном сервере эта команда:
ssh -f2qTnND *:1080 some-server-user@localhost
Здесь есть только одна проблема: кто угодно может подключиться к серверу и использовать его подключение к Интернету.
Параметры:
iptables
фильтровать доступ к удаленный сервер, но клиенты подключаются к серверу из разных нестатически выделенных IP
адресов, поэтому фильтры нужно редактировать очень часто, что неудобно.SOCKS
сервер на удаленный сервер (например. Dante
). В конечном итоге это последний вариант, если нет другого более простого способа сделать это.Linux
и снова неудобно настраивать туннель (например, Windows
+ Putty
). Конечным пользователям также сложнее настроить свои локальные SOCKS
сервер (например, запоминание команды, ошибки ввода).Есть ли способ добавить аутентификацию в SOCKS
сервер сделан с использованием ssh
клиент?
Бонусный вопрос: Как добавить шифрование между клиентом и сервером (сделано с помощью ssh
клиент)?
SSH - это ваша аутентификация
Если вы хотите, чтобы только локальный хост имел доступ к привязке,
ssh -D localhost: порт пользователь @ хост
Это гарантирует, что только локальные программы могут получить доступ к порту. vs *: port Это привязка как к localhost, так и ко всем вашим адресам.
Если вы хотите уменьшить количество попыток входа в систему по ssh, просто измените порт по умолчанию и ограничьте его скорость с помощью iptables,
Еще я бы порекомендовал настроить fail2ban http://www.fail2ban.org/wiki/index.php/Main_Page
Зачем добавлять дополнительный уровень авторизации поверх? Если вам лень, просто настройте пару ключей ssh и ярлык для шпатлевки с необходимыми настройками.
Вы говорите, что в Windows туннелировать неудобно. Пытаться Bitvise Tunnelier, им довольно легко пользоваться.
На socks-сервере клиента OpenSSH нет аутентификации пользователя.
Бонусный вопрос: как добавить шифрование между клиентом и сервером (с использованием SSH)?
SSH уже зашифрован, и для вас это бессмысленно, поскольку вы подключаетесь к локальному хосту. Вам лучше отключить шифрование для большей скорости. Для socks нет шифрования, но если оно есть, то для большинства клиентов оно, вероятно, никак не сработает.