Archive for ssh

Принудительное завершение сессии SSH (со стороны клиента)

// Апрель 22nd, 2017 // No Comments » // noob, ssh

Иногда так случается, что сессия к удаленному серверу «зависает», вариант принудительно завершить со стороны сервера или дожидаться таймаута — не всегда приемлемо, особенно когда по каким-то причинам keepalive пакеты проходят. Открывать новый терминал и подключаться заново часто тоже не всегда удобно, особенно если это цепочка подключений.
Для того что бы завершить сессию со стороны клиент — нужно последовательно нажать:
Enter, ~, .
(кнопка Enter, shift+`(кнопка под Esc), . (точка))

Не удается создать ssh tunnel

// Март 1st, 2016 // No Comments » // linux, ssh

Вот примеры ошибок:

SSH Tunnel: does not support diffie-hellman-group1-sha1 for keyexchange.

и

SSH Tunnel: The negotiation of encryption algorithm is failed

Решение: добавить в конфиг /etc/ssh/sshd_config строки:

KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr

сгенерировать дополнительные ключи:

ssh-keygen -A

перезапустить демон sshd

service ssh restart

ssh клиент, избавляемся от паранойи

// Октябрь 15th, 2014 // No Comments » // ssh

Я думаю всем знакома картина:

# ssh user@10.10.10.10
The authenticity of host '10.10.10.10 (10.10.10.10)' can't be established.
DSA key fingerprint is 68:26:17:4b:ed:10:10:10:10:10:10:10:c5:6f:21:e5.
Are you sure you want to continue connecting (yes/no)?

Если вы не работаете в Пентагоне, а просто обслуживаете пару-тройку десятков серверов, да еще и в локальной сети, думаю, можно пренебречь сверкой ключей. Для этого в конфиге ssh клиента отключить проверку ключей, в файл ~/.ssh/config или глобально для всей системы в /etc/ssh/ssh_config (у некотороых это /etc/ssh_config) добавить строку:

StrictHostKeyChecking no

Есть еще одна не очень приятная штука, поменял сервер, а ключ у тебя в клиенте уже сохранен и получаешь ошибку:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the DSA host key has just been changed.
The fingerprint for the DSA key sent by the remote host is
блаблабла

Такие сообщения часто удручают при очередном апгрейде парка, решение — не хранить ключи =) , а что бы не получать алерты — уменьшить уровень логирования до только ошибок, все в тот же файл ~/.ssh/config  добавить:

UserKnownHostsFile /dev/null
LogLevel error

Cisco pix / ASA не подключается по ssh

// Сентябрь 23rd, 2014 // No Comments » // Cisco, PIX / ASA, ssh

При попытке подключится выдает ошибку:

$ ssh -1 -v 1.2.3.4
 debug1: Reading configuration data /etc/ssh/ssh_config
 debug1: Connection established.
 debug1: identity file /home/user/.ssh/identity type -1
 debug1: identity file /home/user/.ssh/identity-cert type -1
 debug1: identity file /home/user/.ssh/id_rsa type -1
 debug1: identity file /home/user/.ssh/id_dsa type -1
 ssh_exchange_identification: Connection closed by remote host

В версиях 7 и 8 — ошибка появляется, т.к. изначально сертификат не создан. В версиях до 6.3 ошибка может появлявится даже после перезагрузки, т.к. при отсутсвии статичного сертификата он генерируется при каждой загрузке, и, как оказалось, не всегда удачно. Так же решение подходит при ошибке

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

или

The authenticity of host '1.2.3.4 (1.2.3.4)' can't be established
but keys of different type are already known for this host.

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

crypto key zeroize rsa
crypto key generate rsa modulus 1024

для версии 6:

ca zeroize rsa
ca generate rsa key 1024
ca save all

и обязательно сохранить конфиг:

write memory

Генерация новых ключей для SSH

// Сентябрь 10th, 2013 // No Comments » // linux, ssh

Потребность в перегенерации ключей обычно возникает при клонировании виртуальных машин.

OpenSSH использует разные ключи в зависимости от протокола. Все ключи генерируются командой ssh-keygen, комманда доступна при наличии пакета ssh. Процедура генерации практически ничем не отличается от генерации собственных ключей, за исключением того, что вы должны использовать пустой пароль.

Для протокола SSH1, необходим rsa1 ключ, сгенерированный следующим образом:

ssh-keygen -q -f /etc/ssh/ssh_host_key -N '' -t rsa1

Для протокола SSH2, необходимо два ключа, RSA и DSA, сгенерировать так:

ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa
ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa