rm -rf -- * .*
Это портативно и работы, но это ужасно, потому что кроме с zsh
, это выдает предупреждения:
rm: cannot remove directory: `.'
rm: cannot remove directory: `..'
очевидная проверка
формата authorized_keys ssh-rsa AA ... long_line_of_char комментарий
putty gen иногда дает другую форму.
авторизация:
может быть развернут id ~ root или in ~ user в зависимости от пользователя, к которому вы подключаетесь.
некоторые менее очевидные:
PermitRootLogin №
или комментарий) расположение по умолчанию для authorized_keys AuthorizedKeysFile% h / .ssh / authorized_keys
пример настраиваемого местоположения для authorized_keys AuthorizedKeysFile /foo/bar/authorized_keys.%h
/ foo / bar
. authorized_keys.root
для root authorized_keys.user
для пользователя, файл принадлежит пользователю root Некоторые возможные причины, которые я знаю, связаны с разрешениями на файлы в основном слишком широкие и В частности, я могу вспомнить две причины
.ssh
и/или разрешения на файлы authorized_keys (установите их на 700/600 соответственно, если их больше)точная причина отказа от ключа при запуске дополнительного sshd-сервера на другом порту с опциями отладки и без демонтажа если у вас есть корневой доступ к серверу, вы можете run:
sudo `which sshd` -p 2020 -Dd
на сервере
После того, как вы оставите запущенный ssh на нем:
ssh -p 2020 -i /path/to/refusedkey
На выходе сервера будет указана причина отказа
.Из журнала «Запущенные вами журнал сервера отладки» выглядит как ключ, который вы указали на стороне клиента, просто не совпадает с любым доступным в /testuser/.ssh/authorized_keys.
Если /testuser/.ssh/authorized_keys - ожидаемое местоположение, которое вы должны проверить, что есть линейка открытых ключей, которые соответствуют вашему закрытому ключу, используемым на стороне клиента - То есть если вы используете, id_rsa на клиенте проверяют id_rsa.pub рядом с ним совпадает со одной из строк в /testuser/.ssh/authorized_keys.
Если вы сомневаетесь в файле averalize_keys authorize_keys на сервере, вы должны определить, если вы укажете правильное имя пользователя на стороне клиента.
В моем случае я решил эту проблему следующим образом:
chmod 700 myuserdir/.ssh
chmod 600 myuserdir/.ssh/authorized_keys
На компьютере windows вместо использования puttygen для генерации закрытого ключа rsa я загрузил cygwin с сайта cygwin.org. По умолчанию он предлагает несколько пакетов. Я изменил пакет Net, чтобы установить OpenSSH. Это установило, среди прочего, программу ssh-keygen. Итак, я запустил:
ssh-keygen -t rsa
и оставил пароль пустымid_rsa
в c:/cygwin/home/myusername/.ssh
id_rsa
(не открытый id_rsa.pub
). putty.ppk
. Теперь я могу подключиться, не вводя ни пользователя, ни пароля.
Выполните:
sudo `which sshd` -p 2020 -Dd
от имени root в одном сеансе и в другом сеансе выполните:
ssh -p 2020 -i /path/to/refusedkey refusedkeyusername@hostname
Это помогло мне найти причину. Разрешения моего userid не были установлены на 700. Я получил o/p как показано ниже
debug1: trying public key file /home/userid/.ssh/authorized_keys
debug1: fd 4 clearing O_NONBLOCK
Authentication refused: **bad ownership** or modes for directory /home/sapadmin
debug1: restore_uid: 0/0
Failed publickey for userid from 172.31.2.12 port 27382 ssh2: RSA
Connection closed by 172.31.2.12 [preauth]
ok! Одна из причин в том, что домашний каталог пользователя из файла passwd не является каталогом, из которого вы хотите скопировать файлы. Только root может копировать из каждого каталога, другие пользователи - нет!
например, если вы хотите скопировать из каталога /backup, убедитесь, что домашний каталог пользователя, которого вы хотите аутентифицировать, установлен в /backup (принадлежит ему), чтобы scp нашел правильный путь к authorized_keys "/backup/.ssh/authorized_key"
второе: убедитесь, что вы скопировали в файл authorized_keys именно текст из Putty Key Generator с "ssh-rsa AA...." в одну строку. вы можете удалить любой комментарий типа "rsa-key-xxx..." из конца. В файле authorized_keys должен быть собственный пользователь/группа удачи!