zoukankan      html  css  js  c++  java
  • 解决ssh登录过慢问题

    1.首先打开debug,看看慢在哪里

    [root@BC-NFS1 ~]# ssh -v root@192.168.102.41 -p 22
    OpenSSH_6.6.1, OpenSSL 1.0.1e-fips 11 Feb 2013
    debug1: Reading configuration data /etc/ssh/ssh_config
    debug1: /etc/ssh/ssh_config line 56: Applying options for *
    debug1: Connecting to 192.168.102.41 [192.168.102.41] port 22.
    debug1: Connection established.
    debug1: permanently_set_uid: 0/0
    debug1: identity file /root/.ssh/id_rsa type 1
    debug1: identity file /root/.ssh/id_rsa-cert type -1
    debug1: identity file /root/.ssh/id_dsa type -1
    debug1: identity file /root/.ssh/id_dsa-cert type -1
    debug1: identity file /root/.ssh/id_ecdsa type -1
    debug1: identity file /root/.ssh/id_ecdsa-cert type -1
    debug1: identity file /root/.ssh/id_ed25519 type -1
    debug1: identity file /root/.ssh/id_ed25519-cert type -1
    debug1: Enabling compatibility mode for protocol 2.0
    debug1: Local version string SSH-2.0-OpenSSH_6.6.1
    debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1
    debug1: match: OpenSSH_6.6.1 pat OpenSSH_6.6.1* compat 0x04000000
    debug1: SSH2_MSG_KEXINIT sent
    debug1: SSH2_MSG_KEXINIT received
    debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none
    debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com none
    debug1: kex: curve25519-sha256@libssh.org need=16 dh_need=16
    debug1: kex: curve25519-sha256@libssh.org need=16 dh_need=16
    debug1: sending SSH2_MSG_KEX_ECDH_INIT
    debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
    debug1: Server host key: ECDSA 52:28:48:e7:49:2a:c3:56:78:c1:ea:78:58:56:ab:27
    debug1: Host '192.168.102.41' is known and matches the ECDSA host key.
    debug1: Found key in /root/.ssh/known_hosts:2
    debug1: ssh_ecdsa_verify: signature correct
    debug1: SSH2_MSG_NEWKEYS sent
    debug1: expecting SSH2_MSG_NEWKEYS
    debug1: SSH2_MSG_NEWKEYS received
    debug1: Roaming not allowed by server
    debug1: SSH2_MSG_SERVICE_REQUEST sent
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
    debug1: Next authentication method: gssapi-keyex
    debug1: No valid Key exchange context
    debug1: Next authentication method: gssapi-with-mic
    debug1: Unspecified GSS failure.  Minor code may provide more information
    No Kerberos credentials available (default cache: FILE:/tmp/krb5cc_0)
    
    debug1: Unspecified GSS failure.  Minor code may provide more information
    No Kerberos credentials available (default cache: FILE:/tmp/krb5cc_0)
    
    debug1: Next authentication method: publickey
    debug1: Offering RSA public key: /root/.ssh/id_rsa
    debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
    debug1: Trying private key: /root/.ssh/id_dsa
    debug1: Trying private key: /root/.ssh/id_ecdsa
    debug1: Trying private key: /root/.ssh/id_ed25519
    debug1: Next authentication method: password
    root@192.168.102.41's password: 
    View Code

    2.修改配置文件

    在被远程登录的服务器上执行以下操作
    vi /etc/ssh/sshd_config UseDNS no
    看到我的debug信息有这些,说明还需要修改/etc/ssh/sshd_config
    debug1: Next authentication method: gssapi-with-mic debug1: Unspecified GSS failure. Minor code may provide more information
    vi /etc/ssh/ssh_config
    GSSAPIAuthentication no

    3.重启服务

    systemctl restart sshd

    有的人的问题出在输入密码之后要等待10-20s

    root@x.x.x.x's password:
    debug1: Authentication succeeded (password).
    Authenticated to x.x.x.x ([x.x.x.x]:xx).
    debug1: channel 0: new [client-session]
    debug1: Requesting no-more-sessions@openssh.com
    debug1: Entering interactive session.

    通过日志可以发现,密码的验证没有损耗时间,已经正确验证通过Authentication succeeded (password)
    哪么到底是什么原因导致的速度这么慢?

    打开服务器的系统日志,查看

    tail -f /var/log/auth.log
    sshd[12642]: pam_systemd(sshd:session): Failed to create session: Connection timed out
    dbus[617]: [system] Failed to activate service 'org.freedesktop.login1': timed out
    sshd[12642]: Received disconnect from x.x.x.x port 52856:11: disconnected by user
    sshd[12642]: Disconnected from x.x.x.x port 52856
    sshd[12642]: pam_unix(sshd:session): session closed for user root
    sshd[12689]: userauth_pubkey: key type ssh-dss not in PubkeyAcceptedKeyTypes [preauth]
    sshd[12689]: Accepted password for root from x.x.x.x port 52866 ssh2
    sshd[12689]: pam_unix(sshd:session): session opened for user root by (uid=0)
    sshd[12689]: pam_systemd(sshd:session): Failed to create session: Connection timed out
    dbus[617]: [system] Failed to activate service 'org.freedesktop.login1': timed out

    从日志中可以看到[system] Failed to activate service 'org.freedesktop.login1': timed out

    的错误,查了下资料,大致意思如下:
    dbus的服务重启后,systemd-logind服务没有重启导致,可以查看systemctl status systemd-logind的状态,解决方法就是重启该服务 systemctl restart systemd-logind
    重启systemd-logind服务后,发现ssh可以秒连接了

  • 相关阅读:
    PHP扩展开发报错解决[error: ‘PHP_FE_END’ undeclared here (not in a function)] .
    php 如何获取一个变量的名字
    php 使用异或(XOR)加密/解密文件
    php 常用自定义方法
    使用onbeforeunload事件检测窗口是否刷新或关闭
    mysql 优化 insert 性能
    《高级软件测试》11.28.全员配置环境并学习测试环境的使用
    《高级软件测试》11.27.小组开会
    《高级软件测试》11.25.黑盒测试实践作业及任务划分
    第一周小组博客作业
  • 原文地址:https://www.cnblogs.com/liangjiongyao/p/9801135.html
Copyright © 2011-2022 走看看