1

Я обычно удаленный вход на сервер в моей школе. У меня есть имя пользователя и пароль. Это команда 'ssh -l username -p port machineName'. (имя пользователя - мое, порт - номер, а machineName - машины в школе). Я назначил эту команду псевдониму log, но когда я вхожу в систему, он всегда запрашивает пароль. Можно ли как-нибудь заставить мой псевдоним ввести пароль и после команды?

2 ответа2

0

Если он включен для вашей установки ssh , вы должны выполнить процедуру создания так называемых открытых зашифрованных ключей, а затем использовать эти ключи для автоматического входа в систему. Это довольно простая процедура, и вы должны быть в состоянии обойти весь вопрос ввода пароля.

Поищите в сети поисковую фразу "генерация пар ключей RSA SSH", чтобы найти множество страниц, описывающих этот процесс. Вот только одна такая ссылка.

Я обычно не использую парольную фразу. Я позволю другим комментаторам предоставить любое оправдание, чтобы сделать обратное.

whmcclos@mbp-wireless:~
[8] ls -ld ~/.ssh
drwx------+ 2 whmcclos staff 68 Feb  4 09:05 /Users/whmcclos/.ssh
whmcclos@mbp-wireless:~
[9] ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/whmcclos/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/whmcclos/.ssh/id_rsa.
Your public key has been saved in /Users/whmcclos/.ssh/id_rsa.pub.
The key fingerprint is:
77:93:ef:57:40:7d:ef:9b:6e:99:4a:a3:8a:8b:81:a9 whmcclos@Williams-MacBook-Pro.local
The key's randomart image is:
+--[ RSA 2048]----+
|               . |
|              . o|
|             .  o|
|             .. .|
|        S . +  o |
|    o    . . o  o|
|   o .       o. *|
|  .   o .   o..*.|
| E   . o.... .=o |
+-----------------+
whmcclos@mbp-wireless:~
[10] ls -l .ssh
total 8
-rw-------+ 1 whmcclos staff 1679 Feb  4 09:06 id_rsa
-rw-r--r--+ 1 whmcclos staff  417 Feb  4 09:06 id_rsa.pub

[11] cat $HOME/.ssh/id_rsa.pub | ssh myRemoteHost 'cat >> .ssh/authorized_keys && echo "Key copied"'

введите свой пароль в последний раз. Теперь вы должны иметь возможность ssh на удаленный хост без пароля.

Обратите внимание, что предполагается, что папка $HOME/.ssh была создана на двух хостах: тот, с которого вы приходите, и тот, в который вы входите. Если они этого не сделали, сначала создайте эти папки, прежде чем выполнять вышеуказанные действия. Также обратите внимание, что разрешения для папки $ HOME/.ssh должны быть установлены на chmod 700 $HOME/.ssh на обоих хостах.

На шаге [9] просто примите запись по умолчанию для каждого вопроса, но было бы полезно узнать, что означают вопросы.

0

SSH не позволяет вам передавать пароль, так как это будет считаться небезопасным (вместо этого вы должны использовать публичные ключи, но в школе, вероятно, придется также устанавливать их с самого конца)

PuTTY позволяет передавать пароль из командной строки:

3.8.3.8 -pw: указать пароль
Обратите внимание, что параметр -pw работает только при использовании протокола SSH.

и есть также SSHPass:

Sshpass - это инструмент для неинтерактивного выполнения аутентификации по паролю с помощью так называемой "аутентификации по паролю с интерактивной клавиатуры".

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