Od wczoraj za każdym razem, gdy próbuję połączyć się z serwerem ssh, pojawia się pytanie o moje hasło. Co powinienem zrobić, aby SSH nie pytał o hasło za każdym razem.
Od wczoraj za każdym razem, gdy próbuję połączyć się z serwerem ssh, pojawia się pytanie o moje hasło. Co powinienem zrobić, aby SSH nie pytał o hasło za każdym razem.
Odpowiedzi:
Włóż swój klucz publiczny hostnachine:~/.ssh/authorized_keysi upewnij się, że ma on odpowiednie uprawnienia - chmod 600. Aby uzyskać więcej informacji, zobacz stronę podręcznika man, sekcja UWIERZYTELNIANIE. Zauważ, że sshd może być skonfigurowany tak, aby nie pozwalał na tę metodę logowania, chociaż nie mogę pojąć, dlaczego.
Sprawdź uprawnienia do katalogu i uprawnienia do plików.
$HOME nie może być zapisywany przez grupę ani przez inne osoby.
$HOME/.sshmusi mieć 700uprawnienia, nieczytelne, zapisywalne lub wykonywalne przez grupę i inne.
$HOME/.ssh/authorized_keys nie może być zapisywany ani wykonywalny przez nikogo.
Jeśli okaże się, że uprawnienia nie są wystarczająco surowe, spróbuj dowiedzieć się, co spowodowało problem. Ostatnim razem, gdy mi się to przydarzyło, skompilowałem PHP od zera. Wykonanie make installjako root (Slackware) zmieniło uprawnienia i własność /lub, /homejak pamiętam, i uniemożliwiło ssh pracę z plikami authorized_keysi id_rsa.pubplikami, które istniały i działały przez wieki. Chcesz ustalić, co spowodowało problem, ponieważ zmiana własności katalogu i / lub uprawnień może się zdarzyć z powodu instalacji rootkita lub coś podobnego.
ssh-add -l.