【问题标题】:What's openssh default kexalgorithms?什么是 openssh 默认 kexalgorithms?
【发布时间】:2015-12-17 15:21:51
【问题描述】:

如果KexAlgorithms 没有在 ssh 配置文件中明确配置,那么 openssh 可能使用的默认密钥交换算法是什么?

我使用的openssh版本是OpenSSH_6.4p1。

【问题讨论】:

    标签: openssh


    【解决方案1】:

    经过进一步检查,可以通过两种方式获取此信息。

    1. 从手册页读取sshd_config(5)

      KexAlgorithms
      Specifies the available KEX (Key Exchange) algorithms.
      Multiple algorithms must be comma-separated.
      The default is
      ecdh-sha2-nistp256 ,
      ecdh-sha2-nistp384 ,
      ecdh-sha2-nistp521 ,
      diffie-hellman-group-exchange-sha256 ,
      diffie-hellman-group-exchange-sha1 ,
      diffie-hellman-group14-sha1 ,
      diffie-hellman-group1-sha1 .
      
    2. ssh -vvv日志读取(第一部分是客户端支持的kexalgorithm,hmac,ciphers;第二部分是sshd服务器的。)

      debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
      debug2: kex_parse_kexinit: ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com,ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com,ssh-rsa,ssh-dss
      debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
      debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
      debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
      debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
      debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
      debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
      debug2: kex_parse_kexinit:
      debug2: kex_parse_kexinit:
      debug2: kex_parse_kexinit: first_kex_follows 0
      debug2: kex_parse_kexinit: reserved 0
      debug2: kex_parse_kexinit: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
      debug2: kex_parse_kexinit: ssh-rsa
      debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,aes192-cbc,aes256-cbc,arcfour256,arcfour128,3des-cbc,blowfish-cbc,cast128-cbc,arcfour
      debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,aes192-cbc,aes256-cbc,arcfour256,arcfour128,3des-cbc,blowfish-cbc,cast128-cbc,arcfour
      debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96,hmac-sha2-256,hmac-sha2-512
      debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96,hmac-sha2-256,hmac-sha2-512
      debug2: kex_parse_kexinit: none,zlib@openssh.com
      debug2: kex_parse_kexinit: none,zlib@openssh.com
      
    3. 查询ssh以获取支持的算法:ssh -Q kex server(大写-Q)

      diffie-hellman-group1-sha1
      diffie-hellman-group14-sha1
      diffie-hellman-group-exchange-sha1
      diffie-hellman-group-exchange-sha256
      ecdh-sha2-nistp256
      ecdh-sha2-nistp384
      ecdh-sha2-nistp521
      diffie-hellman-group1-sha1
      curve25519-sha256@libssh.org
      

    【讨论】:

    • 我认为应该是ssh -Q kex server(大写'Q')
    • ssh -Q kex server 不是真正的命令。 ssh -Q kex 只是查询 ssh 客户端的算法。不涉及服务器 - 只是忽略了参数 - 尝试 ssh -Q kex asdf
    【解决方案2】:

    ssh -G 192.168.1.2 显示包含 kexalgorithms 的配置。 例如,

    kexalgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1
    

    如果您只想为 kexalgorithms 配置 diffie-hellman-group1-sha1,

    ssh -oKexAlgorithms=diffie-hellman-group1-sha1 username@192.168.1.2
    

    【讨论】:

      猜你喜欢
      • 2018-07-16
      • 1970-01-01
      • 2011-08-29
      • 2015-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-22
      • 1970-01-01
      相关资源
      最近更新 更多