1

У меня есть машина с Windows 7 и Linux. Я хочу SSH из Windows в Linux. Как бы я это настроить, если оба дома подключены к моему роутеру? Будут ли какие-либо изменения, если я оставлю свой Linux-компьютер дома, но возьму мой Windows-компьютер с собой в Starbucks?

До сих пор я установил шпаклевку и отключил брандмауэр на обеих машинах.

Ubuntu: sudo ufw disable

Windows: просто отключен брандмауэр Windows

Putty: Набирается в IP-адресе моего компьютера с Ubuntu (как локального, так и внешнего IP)

После нажатия кнопки «Подключиться» я получаю сообщение об отклонении подключения

2 ответа2

2

Прежде всего, обе машины должны находиться в одной подсети (например, 192.168.1.x). В качестве начального теста попробуйте пропинговать компьютер с Linux из Windows (ping -t <Linux IP>), и вы получите ответ. Если вы не получите ответ, вы не сможете использовать SSH, и вам нужно перенастроить свою сеть.

Во-вторых, вам нужно установить SSH-сервер на вашем Linux-компьютере. Поскольку вы используете Ubuntu, следуйте этому руководству о том, как установить OpenSSH.

Сервер SSH будет настроен для работы в фоновом режиме, и я рекомендую вам снова включить брандмауэр Linux и открыть порты, которые он прослушивает (обычно TCP-порт 22). Вы можете сделать это с:

sudo ufw allow ssh

Как только это будет сделано, и вы сможете пропинговать ваш Linux-компьютер из Windows, вы сможете использовать Putty или любой другой Windows SSH-клиент для подключения к вашему Linux-компьютеру. Просто введите свой IP-адрес и порт Linux, и все будет хорошо.

Теперь, если вы хотите подключиться из-за пределов вашей домашней сети, вам, вероятно, потребуется настроить переадресацию портов для вашего маршрутизатора. Это сильно зависит от производителя к производителю, но в основном включает сопоставление вашего WAN IP с вашим LAN IP для порта SSH. Google для <router name and model> port forwarding и вы должны получить некоторые результаты.

Переадресация портов - это только половина уравнения. Ваше домашнее интернет-соединение, вероятно, не имеет статического общедоступного IP-адреса, который изменяется каждый раз, когда вы включаете и выключаете свой маршрутизатор или ваш интернет-провайдер вызывает изменение IP-адреса. Чтобы избежать необходимости запоминать новый публичный IP-адрес при каждом его изменении, вы можете настроить динамический DNS-сервис. Это означает, что вы можете ввести доменное имя (например, ssh.myhost.com) вместо IP.

Существует множество бесплатных динамических DNS-сервисов, таких как No-IP, FreeDNS и т.д. Обычно вы должны запускать их клиент на вашем компьютере с Linux, который будет обновлять их DNS-записи в любое время при изменении вашего публичного IP-адреса. Большинство маршрутизаторов имеют встроенную функцию, поэтому проверьте страницу администрирования вашего маршрутизатора.

1

Вам нужно настроить переадресацию портов на вашем роутере. Как только это будет сделано, вы сможете использовать ваш общедоступный IP-адрес с Putty, и ваш маршрутизатор распознает трафик и направит его на ваш Ubuntu box. Убедитесь, что у вас есть надежный пароль для SSH, чтобы избежать посторонних глаз.

Хороший ресурс: http://portforward.com/ - будет иметь специфические для маршрутизатора направления для переадресации портов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .