Вам нужно следующее:
Как предложил derobert, во-первых, убедитесь, что ваш интернет-провайдер не блокирует входящие подключения к порту 22.
Вам необходимо перенаправить порт (22 )на целевую машину (, к которой вы хотите получить доступ через SSH из внешней сети. Обычно это называется port forwarding
или port mapping
, и простой поиск в Google должен показать, как это сделать. После этого вы можете попробовать подключиться к своей машине как:
ssh -vv -p PORT user@public_ip
-vv
включает подробный вывод, чтобы вы могли видеть, что происходит за кулисами.
В настоящее время, когда вы пытаетесь подключиться по SSH к общедоступному IP-адресу, это маршрутизатор отвечает на порт 22 (, и большинство домашних маршрутизаторов не имеют SSH-сервера для обслуживания запросов SSH к себе ).
Как указано в комментариях и в эмулировать bash в zsh, нарушая динамически назначаемый файловый дескриптор , если вы хотите, чтобы поведение Zsh было похоже на Bash -, вы должны поместить emulate ksh
в свой .zshrc
файл.