Показаны сообщения с ярлыком ssh. Показать все сообщения
Показаны сообщения с ярлыком ssh. Показать все сообщения

вторник, 18 сентября 2012 г.

sshd не принимает ключ

Надо было нагиосу сделать вход по ключу на очередной ноде. Сделал - не пускает. Несколько раз сверил права на .ssh, на authorized_keys, на хомяки - всё правильно. Но не принимает ключ, давай пароль и всё тут. Самое забавное - таких серверов полно, все настроены одинакого - ходит нагиос по ключику. Попробовал себе ключ сделать - пускает.
-vvv ничего интересного кроме очевидного не показал:
 
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /var/spool/nagios/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password

Врубил DEBUG3 в конфиге демона:

debug3: mm_answer_keyallowed entering
debug3: mm_answer_keyallowed: key_from_blob: 0xaaaabbbbcc60
debug1: temporarily_use_uid: 333/333 (e=0/0)
debug1: trying public key file /home/nagios/.ssh/authorized_keys
debug1: restore_uid: 0/0
debug1: temporarily_use_uid: 333/333 (e=0/0)
debug1: trying public key file /home/nagios/.ssh/authorized_keys2
debug1: restore_uid: 0/0
Failed publickey for nagios from 178.111.22.33 port 58970 ssh2
debug3: mm_answer_keyallowed: key 0xaaaabbbbcc60 is not allowed
И это через гугл навело на selinux )) Вот и все дела. Отключил и заработало.

пятница, 7 сентября 2012 г.

ssh: укорачиваем команду

Уже как-то писал про то, как удалось сократить длину некот. git команд за счёт настройки хостов в ssh_config. Решил на ноуте сделать так же для наших хостов, чтобы не набивать "$ ssh username@host.domain.org".
Так, как писать секции самому неохота, сделал скриптик sshgen.sh, вызываемый в цикле:

#!/bin/bash
if [ $# -eq 0 ]; then
        echo "Usage: sshgen.sh host domain user"
else
        echo "Host $1"
        echo "        User $3"
        echo "        HostName $1.$2"
fi
Работает так:
$ for a in {1..7};do for b in vps$a;do ./sshgen.sh $b domain.com username; done; done
Host vps1
        User username
        HostName vps1.domain.com
Host vps2
        User username
        HostName vps2.domain.com
Host vps3
        User username
        HostName vps3.domain.com
Host vps4
        User username
        HostName vps4.domain.com
Host vps5
        User username
        HostName vps5.domain.com
Host vps6
        User username
        HostName vps6.domain.com
Host vps7
        User username
        HostName vps7.domain.com
 Полученный вывод суём в ssh_config и вместо "$ ssh username@host.domain.org" пишем "$ ssh host"

четверг, 11 ноября 2010 г.

SSH host key generate.

Ну вот как-то так. По крайней мере, так в федоре делают.

ssh-keygen -q -t dsa -f /etc/ssh/ssh_host_dsa_key -C '' -N ''
ssh-keygen -q -t rsa -f /etc/ssh/ssh_host_rsa_key -C '' -N ''
ssh-keygen -q -t rsa1 -f /etc/ssh/ssh_host_key -C '' -N ''
chmod 600 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_dsa_key /etc/ssh/ssh_host_key
chmod 644 /etc/ssh/ssh_host_rsa_key.pub /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_key.pub

четверг, 29 мая 2008 г.

Пара слов об SSH

ИМХО, аутентификация по паролю и хосту - это неправильно. Рулит только аутентификация по открытому ключу. В своё время, когда настраивал свой sshd, у меня public key auth не хотела работать, хотя все необходимы настройки были прописаны. Т.е. я пытался зайти на сервер, меня спрашивали пароль юзера, вместо того, чтобы аутентифицировать по ключу.
Потом я обнаружил (причём искал долго), что нужно было прописать:
UsePAM no
В результате получилось:

Port 22
Protocol 2


RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys


RhostsRSAAuthentication no
HostbasedAuthentication no
IgnoreUserKnownHosts yes
IgnoreRhosts yes


PasswordAuthentication no
UsePAM no

X11Forwarding yes
X11UseLocalhost yes

Subsystem sftp /usr/lib64/ssh/sftp-server

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL
AllowTcpForwarding yes
Compression yes
MaxAuthTries 3
PrintMotd yes
Порт менять не стал - не вижу причины.