Рейтинг:0

Удаленное перенаправление портов работает на TCP/1194, но не на TCP/443, хотя порт 443 на сервере не используется.

флаг cn

У меня странная проблема.

Я поднял новый Linode, чтобы он действовал как конечная точка туннелирования.

Мне удалось успешно удаленно перенаправить порт 1194, так что теперь соединения с linode-server@1194 успешно подключены к порту 1194 моей машины, и я могу подключиться к своей VPN, подключившись к порту 1194 на моем linode-сервере.

Приведенная ниже команда - это то, что я использовал (тот, который работает):

ssh -N -R 1194:localhost:1194 [email protected]

Теперь я тоже хочу портировать 443. Я пробовал это:

ssh -N -R 443:192.168.1.122:443 [email protected]

Мой локальный сервер намеренно прослушивает 192.168.1.122 (не локальный).

Однако приведенная выше команда не может открыть порт 443 на сервере. Я получаю следующую ошибку:

Предупреждение: не удалось выполнить переадресацию удаленного порта для порта прослушивания 443.

Итак, я проверил на своем линоде-сервере, работает ли что-нибудь на порту 443. Ничего:

user@linode-server:~$ sudo netstat -tulpn
Активные интернет-соединения (только серверы)
Proto Recv-Q Send-Q Локальный адрес Внешний адрес Состояние PID/имя программы    
TCP 0 0 0.0.0.0:1194 0.0.0.0:* ПРОСЛУШАТЬ 7438/sshd: пользователь       
TCP 0 0 127.0.0.53:53 0.0.0.0:* ПРОСЛУШАТЬ 411/systemd-разрешить 
TCP 0 0 0.0.0.0:22 0.0.0.0:* ПРОСЛУШАТЬ 2377/sshd: /usr/sbi 
TCP 0 0 0.0.0.0:25 0.0.0.0:* ПРОСЛУШИВАТЬ 1513/мастер         
tcp6 0 0 :::1194 :::* ПРОСЛУШАТЬ 7438/sshd: пользователь       
tcp6 0 0 :::22 :::* ПРОСЛУШАТЬ 2377/sshd: /usr/sbi 
tcp6 0 0 :::25 :::* ПРОСЛУШИВАТЬ 1513/мастер         
udp 0 0 127.0.0.53:53 0.0.0.0:* 411/systemd-разрешение 
пользователь@linode-сервер:~$ 

На сервере нет софт-фаервола. И брандмауэр облака Linode был отключен, я все еще не могу этого сделать.

Я совершенно не понимаю, почему переадресация 443 не работает.

P.S.- аутентификация пользователя работает нормально при создании туннеля.

Я не уверен, поможет ли это, но мой sshd_config выглядит так:

user@linode-server:~$ cat /etc/ssh/sshd_config | grep -v "^#" | grep -v "^$"
Включить /etc/ssh/sshd_config.d/*.conf
PermitRootЛогин нет
ПарольАутентификация нет
PermitEmptyPasswords нет
ВызовОтветАутентификация нет
ИспользоватьPAM да
Порты шлюза да
X11Переадресация да
Версия для печати
AcceptEnv ЯЗЫК LC_*
Подсистема sftp /usr/lib/openssh/sftp-сервер
пользователь@linode-сервер:~$

И чтобы уточнить, нет ничего в /etc/ssh/sshd_config.d/

Форма подробного логирования sshd на linode-сервере:

...
14 августа, 09:00:32 connect sshd[9499]: открытый ключ для пи от *СКРЫТЫЙ: мой домашний общедоступный IP* порт 49180 ssh2 [preauth]
14 августа, 09:00:32 connect sshd[9499]: Принятый ключ RSA *HIDDEN* найден в /home/pi/.ssh/authorized_keys:1
14 августа, 09:00:32 connect sshd[9499]: Принят публичный ключ для пи из *СКРЫТОГО: Мой домашний общедоступный IP-адрес* порт 49180 ssh2: RSA *СКРЫТЫЙ* 
14 августа, 09:00:32 connect sshd[9499]: pam_unix(sshd:session): сеанс открыт для пользователя pi пользователем (uid=0)
14 августа, 09:00:32 connect systemd-logind[578]: новый сеанс 157 пользователя pi.
14 августа, 09:00:32 connect sshd[9499]: дочерний пользователь находится на pid 9579
14 августа, 09:00:32 connect sshd[9579]: bind [0.0.0.0]:443: Отказано в доступе
14 августа, 09:00:32, подключите sshd [9579]: ошибка: bind [::]: 443: Отказано в доступе
14 августа, 09:00:32, подключите sshd [9579]: ошибка: channel_setup_fwd_listener_tcpip: невозможно прослушать порт: 443
...

Почему отказано в разрешении? Команда удаленной переадресации, которую я использовал выше, использует одного и того же пользователя (как для успешного, так и для неудачного туннеля).

Только что нашел здесь что это может быть потому, что 443 является привилегированным портом. Теперь я не хочу использовать пользователя root для включения удаленной переадресации на 443. Я заблокировал linode-сервер и не могу войти в систему как root (и я не хочу разрешать вход root). По приведенной выше ссылке я могу использовать установка, на linode-сервере, но как мне это сделать, поскольку команда открытия туннеля фактически запускается с моего локального. Каковы мои альтернативы? Я знаю, что, возможно, использование более высокого порта на linode-сервере сработает, но я не хочу этого делать. Я бы очень хотел, чтобы это был порт 443, поэтому мне не нужно запоминать порт.

флаг cn
Вы также пробовали другие номера портов низкого уровня, например. 444?
Рейтинг:0
флаг cv

Проблема в том, что ничего не прослушивается на порту 443. Должен быть процесс, прослушивающий порт 443, чтобы вы могли подключаться к порту 443. Если вы посмотрите на свой netstat, вы увидите, что в настоящее время у вас есть процесс, прослушивающий порт. 1194, поэтому подключение к порту 1194 выполняется успешно. Вам нужно изменить этот процесс, чтобы прослушивать порт 443.

TCP 0 0 0.0.0.0:1194 0.0.0.0:* ПРОСЛУШАТЬ 7438/sshd: пи
флаг cn
Я думаю, ты ошибся, приятель. Предполагается, что переадресация удаленного порта ssh открывает 443. Вы видите, что 1194 открыт, потому что переадресация удаленного порта для 1194 работала.
Рейтинг:0
флаг cn

На локальном сервере вместо этого инициировано перенаправление удаленного порта с порта 8080 (непривилегированный порт)

ssh -N -R 8080:192.168.1.122:443 [email protected]

На linode-сервере установлен инструмент под названием сокат и использовал приведенную ниже команду для локальной переадресации с 8080 на 443 на сервере linode, и теперь она работает :)

sudo socat TCP-LISTEN: 443, fork TCP: 0.0.0.0: 8080
флаг cn
Если это работает, примите свой собственный ответ!

Ответить или комментировать

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