Страница 1 из 2

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:21
ogankvik
Здравствуйте! НА обоих ПК Linux Mint Cinnamon 19.3 x64. При попытке подключиться к нему по ssh через терминал, получаю ошибку:

Код: Выделить всё

user@user-desktop:~$ ssh user@192.168.3.95
ssh: connect to host 192.168.3.95 port 22: No route to host
Я уже гуглил, но нашел только то, что на системе может быть закрыт 22 порт. НО, если подключаюсь на Винде из Putty по ssh, то подключение происходит успешно!


Помогите пожалуйста советом, это важно.

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:26
WWolf
ogankvik, ifconfig покажи

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:33
ogankvik
Блин! Они выключили комп в тот момент когда я проверял!!! :dash2:

Тогда другой вопрос, какой ключ вписать в программу чтобы не набирать каждый раз yes при подключении?

Код: Выделить всё

user@user-desktop:~$ ssh user@192.168.3.89
The authenticity of host '192.168.3.89 (192.168.3.89)' can't be established.
ECDSA key fingerprint is SHA256:RsOEd7g0FTBRqDJgMVhKmu10Kd17/2VdEBMiVGRnHPw.
Are you sure you want to continue connecting (yes/no)? y

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:36
WWolf
ogankvik, написать yes, а не просто y

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:37
slant
ogankvik писал(а):
12 июл 2023, 13:33
Тогда другой вопрос, какой ключ вписать в программу чтобы не набирать каждый раз yes при подключении?
Никакой.
Один раз yes набрать, и больше этот вопрос задаваться не будет, если на том конце ничего не поменяется. Это механизм защиты от подмены на другом конце. Он задает тебе вопрос: "На том конце устройство с вот таким идентификатором. Я его раньше не видел, и не знаю - это тот, кто вам нужен? Запомнить его как правильный для данного адреса?" После запоминания - будет ругаться если там на этом адресе вдруг другая система окажется.

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:42
ogankvik
А если этих компов 300 ? Я хотел написать скрипт с одной и той же командой, в которой изменяется только ip адрес компьютера. И Набирать yes при подключении к каждому ПК невозможно

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 13:59
WWolf
ogankvik, ну можно настроить удалённую систему для работы по открытому ключу, но для этого всё равно придётся подключиться к ней и закинуть ключ :)

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 14:00
WWolf
ogankvik писал(а):
12 июл 2023, 13:42
И Набирать yes при подключении к каждому ПК невозможно
это один раз сделать надо при первом подключении, дальше ключ сохранится в доверенных и подключаться будет без запроса...
так что можно сделать скрипт, который будет по списку конектиться, писать yes и отключаться :)

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 14:48
ogankvik
WWolf писал(а):
12 июл 2023, 14:00
ogankvik писал(а):
12 июл 2023, 13:42
И Набирать yes при подключении к каждому ПК невозможно
это один раз сделать надо при первом подключении, дальше ключ сохранится в доверенных и подключаться будет без запроса...
так что можно сделать скрипт, который будет по списку конектиться, писать yes и отключаться :)
А как сделать скрипт? Есть он сам или пример?)

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 14:59
WWolf
ogankvik, есть команда yes, есть конструкции expect -exact <искомый текст> - send -- <ответ>
так что в твоём случае будет что-то типа такого:

Код: Выделить всё

ssh user@192.168.3.89
expect -exact "Are you sure you want to continue connecting (yes/no)?"
send -- "yes\r"
send -- "exit\r"

и уходим на новый ip
сам не делал такие ни разу, но должно получиться КМК

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 16:06
ogankvik
WWolf писал(а):
12 июл 2023, 14:59
Все получилось. Большое спасибо! :thumbs:

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 16:50
ogankvik
Но в итоге остановился на параметре -o StrictHostKeyChecking=accept-new

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 16:56
slant
WWolf писал(а):
12 июл 2023, 14:59
и уходим на новый ip
Не уходим. После того как ключ зарегистрирован, SSH не даст подключаться по этому адресу к другой системе - будет орать что "караул, подменили!"
Чтобы подключится в таком случае, нужно будет сначала удалить этот ключ с системы которая подключается (на стороне клиента). Только тогда оно выведет простой запрос о новой регистрации нового ключа.

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 17:14
WWolf
slant, на новый ip в скрипте... 192.168.3.89, 192.168.3.90 и так далее... типа автоматизация сбора ключей по всей сетке :)

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 19:24
ogankvik
Вдруг пригодится. У меня установлена система, которая при каждом запуске исполняет скрипт, который лезет в сетевую папку и проверяет там наличиеv файла с именем 1.deb. Если он там есть - скачивает и устанавливает, перед этим проверяя, не установлен ли уже в системе 1.deb такой же версии. И всё было круто, пока 1С не решили изменить путь к установленной программе. Естественно, после этого все ярлыки к исполняемому файлу программы перестали работать.

Нужно было изменить этот скрипт на всех компах.

Ставим пакет позволяющий вписывать пароль в строку подключения по ssh:

Код: Выделить всё

sudo apt install sshpas
Сама команда:

Код: Выделить всё

sshpass -p "пароль" scp -o StrictHostKeyChecking=accept-new "/home/user/.1c_update.sh" user@192.168.3.169:/home/user/

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 12 июл 2023, 20:28
slant
ogankvik писал(а):
12 июл 2023, 19:24
Ставим пакет позволяющий вписывать пароль
... И выкидываем всю безопасность на свалку.

Почитайте, что такое авторизация по открытым ключам для SSH, и как оно делается. Смысл в том, что в исполняемом скрипте не должно быть ничего связанного с авторизацией непосредственно. Тем более - пароля.

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 13 июл 2023, 08:28
ogankvik
завидуете изяществу решения :-D

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 13 июл 2023, 11:13
slant
ogankvik писал(а):
13 июл 2023, 08:28
завидуете изяществу решения
... костылестроения? Спасибо, посмеялся. Ключи всяко удобнее, особенно для массового использования. :)

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 13 июл 2023, 11:18
madesta
ogankvik писал(а):
12 июл 2023, 19:24
пока 1С не решили изменить путь к установленной программе. Естественно, после этого все ярлыки к исполняемому файлу программы перестали работать.
Весь сыр-бор с файлом deb из-за другого пути к исполняемому файлу в ярлыке?
Насколько понимаю, изменение пути к установленной программе 1С было произведено 1 раз. На мой взгляд, достаточно было поправить строку Exec= в содержании файла .desktop: sudo xed /usr/share/applications/файл.desktop
Если же это действие нужно было произвести на множестве компьютеров Linux, то можно было бы и через однократный sh что-то типа sudo mv -f $source/файл.desktop /usr/share/applications/файл.desktop
При необходимости постоянно брать файл deb c какого-то ресурса можно ведь было через wget, (http, ftp или Samba) из той папки, которая не потребует для доступа к ней пароль конкретного пользователя.

Не могу подключиться к другому ПК в сети по ssh

Добавлено: 13 июл 2023, 21:39
ogankvik
Всем спасибо за помощь! Благодаря вам, проблема с обновлением 1С решена. Кстати, для нашей больницы его отложили на месяц, т.к. оказалось неудачным.