Назад | Перейти на главную страницу

sshfs без пароля

Кто-нибудь знает эквивалент ssh -i для sshfs? Я хочу использовать sshfs без запроса пароля

Лучшим решением было бы ssh-agent как предлагает Зоредак.

Другой - вставить ключ ~/.ssh/id_rsa, таким образом он будет обнаружен автоматически. (Используйте id_dsa для ключей DSA.)

Еще один ~/.ssh/config. Поместите в него что-то вроде этого (см. Страницу руководства ssh_config для получения дополнительной информации)

Host somebox.somedomain.tld
  User joe
  IdentityFile ~/key_for_somebox

Host *
  IdentityFile ~/key_for_everything_else

Настройте свою систему для использования Агент SSH и добавьте свой ключ к агенту. Если вы используете последний дистрибутив Linux (например, Ubuntu и другие), возможно, ssh-agent уже настроен для вас. Все что вам нужно сделать ssh-add key.

Другой ответ sshfs -o IdentityFile=/home/me/.ssh/somekey.pem user@host:/path/ mnt/

Кроме того, вы увидите, что люди перечисляют другие способы вызова sshfs:

sshfs -o ssh_command="ssh -i /home/me/.ssh/somekey.pem" user@host:/path/ mnt/

Хотя я соглашусь, что ~/.ssh/config это путь.

Не совсем то, что вы просили, но для пользы всех, кто пытается подключиться к серверу, который не поддерживает аутентификацию по ключу, вы можете использовать sshpass для ввода пароля даже с sshfs.

Например, если вы поместите что-то подобное в /etc/fstab:

sshfs#username@host:/  /mnt/here   fuse   auto,ssh_command=sshpass\040-f\040/root/.ssh/host.password\040ssh  0  0

Затем введите пароль в имя файла, указанное в /etc/fstab:

echo 'secret' > /root/.ssh/host.password

Убедитесь, что вы установили sshpass:

pacman -S sshpass  # if you're using Arch Linux

Тогда должно работать:

mount /mnt/here

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