
Saat menjalankan ssh dari host lokal ke host jarak jauh yang menggunakan versi ssh yang berbeda, Anda mungkin mendapatkan pesan “Negosiasi algoritma gagal”. Dalam postingan ini, saya akan menjelaskan cara mengatasi masalah ini dari klien ssh.
1. Tidak dapat melakukan ssh ke host jarak jauh :Dalam contoh ini, ketika mencoba melakukan ssh dari host lokal ke host jarak jauh, kami mendapatkan pesan kesalahan “Algorithm Negosiation failed” seperti yang ditunjukkan di bawah ini. Harap perhatikan bahwa host lokal menjalankan klien ssh2.
[local-host]$ ssh -l jsmith remote-host warning: Authentication failed. Disconnected; key exchange or algorithm negotiation failed (Algorithm negotiation failed.). [local-host]$ ssh -V ssh: SSH Secure Shell 3.2.9.1 (non-commercial version) on i686-pc-linux-gnu [local-host]$ ls -l /usr/local/bin/ssh lrwxrwxrwx 1 root root 4 Mar 10 22:04 /usr/local/bin/ssh -> ssh2
2. Dapatkan lebih banyak informasi debug tentang pesan kesalahan dari SSH . Berikan parameter -v ke klien ssh untuk melihat informasi debug tambahan, yang akan membantu memecahkan masalah ini lebih lanjut seperti yang ditunjukkan di bawah ini.
[local-host]$ ssh -v -l jsmith remote-host debug: SshConfig/sshconfig.c:2838/ssh2_parse_config_ext: Metaconfig parsing stopped at line 3. debug: SshConfig/sshconfig.c:637/ssh_config_set_param_verbose: Setting variable 'VerboseMode' to 'FALSE'. debug: SshConfig/sshconfig.c:3130/ssh_config_read_file_ext: Read 17 params from config file. debug: Ssh2/ssh2.c:1707/main: User config file not found, using defaults. (Looked for '/home/jsmith/.ssh2/ssh2_config') debug: Connecting to 192.168.101.107, port 22... (SOCKS not used) debug: Ssh2Transport/trcommon.c:3676/ssh_tr_create: My version: SSH-1.99-3.2.9.1 SSH Secure Shell (non-commercial) debug: client supports 2 auth methods: 'publickey,password' debug: Ssh2Common/sshcommon.c:537/ssh_common_wrap: local ip = 192.168.1.2, local port = 59514 debug: Ssh2Common/sshcommon.c:539/ssh_common_wrap: remote ip = 192.168.1.3, remote port = 22 debug: SshConnection/sshconn.c:1945/ssh_conn_wrap: Wrapping... debug: SshReadLine/sshreadline.c:2427/ssh_readline_eloop_initialize: Initializing ReadLine... debug: Remote version: SSH-2.0-OpenSSH_5.0 debug: OpenSSH: Major: 5 Minor: 0 Revision: 0 debug: Ssh2Transport/trcommon.c:973/ssh_tr_input_version: All versions of OpenSSH handle kex guesses incorrectly. debug: Ssh2Transport/trcommon.c:1116/ssh_tr_negotiate_one_alg: Algorithm negotiation failed for c_to_s_compr: client list: zlib vs. server list : none,[email protected] debug: Ssh2Transport/trcommon.c:1116/ssh_tr_negotiate_one_alg: Algorithm negotiation failed for s_to_c_compr: client list: zlib vs. server list : none,[email protected] debug: Ssh2Transport/trcommon.c:1367/ssh_tr_negotiate: lang s to c: `', lang c to s: `' debug: Ssh2Common/sshcommon.c:169/ssh_common_disconnect: DISCONNECT received: Algorithm negotiation failed. debug: SshReadLine/sshreadline.c:2485/ssh_readline_eloop_uninitialize: Uninitializing ReadLine... warning: Authentication failed. Disconnected; key exchange or algorithm negotiation failed (Algorithm negotiation failed.). debug: Ssh2Common/sshcommon.c:662/ssh_common_destroy: Destroying SshCommon object. debug: SshConnection/sshconn.c:1997/ssh_conn_destroy: Destroying SshConn object.
Berdasarkan pesan informasi debug yang ditampilkan dalam pesan debug:“Negosiasi algoritma gagal untuk s_to_c_compr:daftar klien:zlib vs. daftar server :none,[email protected] “, sangat jelas bahwa client (local-host) menggunakan kompresi zlib dan server (remote-host) tidak menggunakan zlib.
3. Selesaikan masalah dengan menghubungkan ke SSH host jarak jauh tanpa kompresi. Berikan -o “Compression no” ke klien ssh untuk menyelesaikan masalah, seperti yang ditunjukkan di bawah ini.
[local-host]$ ssh -o "Compression no" -l jsmith remote-host jsmith@remote-host's password: Last login: Wed Jun 25 17:06:31 2008 from 192.168.1.2 [remote-host]$ ssh -V OpenSSH_5.0p1, OpenSSL 0.9.8g 19 Oct 2007
Sekarang Anda terhubung tanpa masalah setelah melewati -o “Compression no” parameter ke klien ssh, Anda dapat melihat bahwa remote-host menggunakan openSSH yang berbeda dari ssh yang berjalan di host-lokal, yang merupakan alasan untuk masalah negosiasi algoritma gagal.