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

ssh доступ без пароля

Я знаю, что можно подключиться к другому серверу по ssh без пароля, если на обоих серверах установлены ключи аутентификации. Но я хотел бы знать, можно ли разрешить пользователям с любого IP-адреса (известного / неизвестного) иметь беспарольный ssh-доступ к каталогу, в котором они могут сохранять свои данные самым простым способом?

Я ищу решение SSH, а не FTP.

Я бы сказал, что самым безопасным решением этой проблемы является создание SSH-ключа без пароля для каждой машины и добавление его в список authorized_keys на другом.

На машине 1 (как пользователь, который входит на другой сервер):

$ ssh-keygen -t rsa
$ ssh-add ~/.ssh/id_rsa
$ cat .ssh/id_rsa.pub

Если keygen запрашивает у вас пароль, просто нажмите Enter, чтобы создать ключ без пароля.

На машине 2:

  1. Создать или отредактировать ~/.ssh/authorized_keys для пользователя, с которым вы входите в систему.
  2. Добавьте содержимое id_rsa.pub (убедитесь, что это .паб файл, а не закрытый ключ) к файлу. Все id_rsa.pub должен умещаться в одной строке.

Когда это будет сделано, вы сможете сделать это с машины 1:

$ ssh username@machine-2

и просто войдите в систему, не вводя пароль. То же самое и с scp / sftp.

Если это не сработает, убедитесь, что у вас есть PubkeyAuthentication yes в твоем /etc/ssh/sshd_config

Имейте в виду, что это серьезный угроза безопасности, поэтому вы определенно захотите сделать это в ограниченной среде, работающей под ограниченной оболочкой или только для учетных записей chrooted. Предложение @Kimvais о scponly находится на правильном пути.

В клиенте создайте ключ .ssh / id_rsa с пустой кодовой фразой - это создаст незашифрованный закрытый ключ. Затем скопируйте .ssh / id_rsa.pub с клиента в .ssh / authorized_keys на сервере - следите за правильными разрешениями! (0700 для .ssh, 0600 для .ssh / authorized_keys).

Теперь вы можете подключиться к серверу по ssh / scp / sftp, не вводя кодовую фразу.

Вы хотите использовать ключи для обеспечения безопасности, но не писать пароли. Как насчет чего-то вроде этого?

Если это openssh, вы можете установить PermitEmptyPasswords yes в вашем / etc / ssh / sshd_config

Я думаю, вы хотите разрешить только scp, поэтому вы, вероятно, настроили scponly как оболочка для пользователей.

Кроме того, не разрешайте доступ из Интернета :)

Я действительно сомневаюсь, что можно избежать пароля и / или ключа для аутентификации SSH. Причина в самом SSH, он создан для Безопасная оболочка доступ. Рассмотрите возможность переключения для FTP / telnet на небезопасный вариант.