ssh与sftp登录对端缓慢问题
2020-08-23 08:02 youxin 阅读(1299) 评论(0) 编辑 收藏 举报SSH is slow to make a connection
1. su
2. vi /etc/ssh/sshd_config
3. add UseDNS no
4. /etc/init.d/sshd restart
http://www.cyberciti.biz/faq/howto-restart-ssh/
http://superuser.com/questions/359344/ssh-is-slow-to-make-a-connection
https://blog.csdn.net/qq_37467907/article/details/93618122
使用strace命令来跟踪慢的问题
- 检查服务器SSH配置文件(sshd_config)的UseDNS配置项是否开启
vi /etc/ssh/sshd_config
- 该配置文件,默认会有一个注释的(#UseDNS yes)配置项,但该项的缺省值是yes,所以需要显式地设置为no
-
#UseDNS yes
-
UseDNS no
注:UseDNS配置项主要用于安全加固,默认为yes开启时,连接过程慢是因为客户端(Client)通过SSH协议连接服务端(Server)时,服务端会进行4次的DNS反向解析请求(每次请求失败间隔5s),即服务端会根据客户端的IP进行DNS反向解析查询出客户端的主机名,然后再根据查询出的主机名进行DNS正向解析,最后验证解析出来的IP与原始客户端IP是否一致,已达到防止客户端欺骗的目的。如果我们的客户端IP在DNS服务器中没有配置PTR反向解析记录,那么就会导致请求无响应,直至请求超时才会进行下一步的SSH连接。
- 重启ssh服务
service sshd restart
vscode sftp插件问题:
https://blog.csdn.net/d200746/article/details/87626932
https://github.com/liximomo/vscode-sftp/wiki/Common-Config
更改connectTimeout的值即可完成最大超时时间的配置,改成300,
默认值是:
connectTimeout
number - the maximum connection time
Default
10000
https://blog.csdn.net/iteye_5495/article/details/82676449
SFTP点上传有时候没有反应,我们观察下正常的上传日志:
run command 'Upload File'
[03-09 00:59:15] [warn] ENOENT: no such file or directory, open 'C:\Users\Admin\.ssh\config' load C:\Users\Admin\.ssh\config failed
[03-09 00:59:15] [trace] handle upload file for e:xxx.js
[03-09 00:59:15] [debug] Local ident: 'SSH-2.0-ssh2js0.4.5'
[03-09 00:59:15] [debug] Client: Trying 7.13.18.230 on port 19800 ...
[03-09 00:59:15] [debug] Client: Connected
[03-09 00:59:15] [debug] Remote ident: 'SSH-2.0-OpenSSH_7.4'
[03-09 00:59:15] [debug] Outgoing: Writing KEXINIT
[03-09 00:59:15] [debug] DEBUG: Comparing KEXINITs ...
[03-09 00:59:15] [debug] (local) KEX algorithms: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
[03-09 00:59:15] [debug] (remote) KEX algorithms: 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,diffie-hellman-group1-sha1
[03-09 00:59:15] [debug] KEX algorithm: ecdh-sha2-nistp256
[03-09 00:59:15] [debug] (local) Host key formats: ssh-ed25519,ssh-rsa,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
[03-09 00:59:15] [debug] (remote) Host key formats: ssh-rsa,rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519
[03-09 00:59:15] [debug] Host key format: ssh-ed25519
[03-09 00:59:15] [debug] (local) Client->Server ciphers: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm,aes128-gcm@openssh.com,aes256-gcm,aes256-gcm@openssh.com
[03-09 00:59:15] [debug] (remote) Client->Server ciphers: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,aes192-cbc,aes256-cbc,blowfish-cbc,cast128-cbc,3des-cbc
[03-09 00:59:15] [debug] Client->Server Cipher: aes128-ctr
[03-09 00:59:15] [debug] (local) Server->Client ciphers: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm,aes128-gcm@openssh.com,aes256-gcm,aes256-gcm@openssh.com
[03-09 00:59:15] [debug] (remote) Server->Client ciphers: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,aes192-cbc,aes256-cbc,blowfish-cbc,cast128-cbc,3des-cbc
[03-09 00:59:15] [debug] Server->Client Cipher: aes128-ctr
[03-09 00:59:15] [debug] (local) Client->Server HMAC algorithms: hmac-sha2-256,hmac-sha2-512,hmac-sha1
[03-09 00:59:15] [debug] (remote) Client->Server HMAC algorithms: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
[03-09 00:59:15] [debug] Client->Server HMAC algorithm: hmac-sha2-256
[03-09 00:59:15] [debug] (local) Server->Client HMAC algorithms: hmac-sha2-256,hmac-sha2-512,hmac-sha1
[03-09 00:59:15] [debug] (remote) Server->Client HMAC algorithms: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
[03-09 00:59:15] [debug] Server->Client HMAC algorithm: hmac-sha2-256
[03-09 00:59:15] [debug] (local) Client->Server compression algorithms: none,zlib@openssh.com,zlib
[03-09 00:59:15] [debug] (remote) Client->Server compression algorithms: none,zlib@openssh.com
[03-09 00:59:15] [debug] Client->Server compression algorithm: none
[03-09 00:59:15] [debug] (local) Server->Client compression algorithms: none,zlib@openssh.com,zlib
[03-09 00:59:15] [debug] (remote) Server->Client compression algorithms: none,zlib@openssh.com
[03-09 00:59:15] [debug] Server->Client compression algorithm: none
[03-09 00:59:15] [debug] Outgoing: Writing KEXECDH_INIT
[03-09 00:59:16] [debug] DEBUG: Checking host key format
[03-09 00:59:16] [debug] DEBUG: Checking signature format
[03-09 00:59:16] [debug] DEBUG: Verifying host fingerprint
[03-09 00:59:16] [debug] DEBUG: Host accepted by default (no verification)
[03-09 00:59:16] [debug] DEBUG: Verifying signature
[03-09 00:59:16] [debug] Outgoing: Writing NEWKEYS
[03-09 00:59:16] [debug] Outgoing: Writing SERVICE_REQUEST (ssh-userauth)
[03-09 00:59:16] [debug] Outgoing: Writing USERAUTH_REQUEST (none)
[03-09 00:59:16] [debug] Client: none auth failed
[03-09 00:59:16] [debug] Outgoing: Writing USERAUTH_REQUEST (password)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_OPEN (0, session)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_REQUEST (0, subsystem: sftp)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing MKDIR
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing LSTAT
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing OPEN
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing FSTAT
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing FSETSTAT
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing WRITE
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing WRITE
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing WRITE
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing WRITE
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing FSETSTAT
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [debug] Outgoing: Writing CLOSE
[03-09 00:59:16] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 00:59:16] [info] local ➞ remote e:\xxx.js
[03-09 00:59:46] [debug] Outgoing: Writing ping (GLOBAL_REQUEST: keepalive@openssh.com)
有时候点xx.js上传几秒没有反应,这时候又点击上传,有反应了:
03-09 01:05:01] [trace] run command 'Upload File'
[03-09 01:05:01] [trace] run command 'Upload File'
[03-09 01:05:01] [trace] handle upload file fore:\xx.js
[03-09 01:05:01] [trace] handle upload file fore:\xx.js
[03-09 01:05:01] [debug] Outgoing: Writing MKDIR
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing MKDIR
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing LSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing LSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing OPEN
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing OPEN
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing FSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing FSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing FSETSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing FSETSTAT
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing WRITE
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:01] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing WRITE
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing WRITE
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing FSETSTAT
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing WRITE
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing CLOSE
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [debug] Outgoing: Writing FSETSTAT
[03-09 01:05:02] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:02] [info] local ➞ remotee:\xx.js
[03-09 01:05:03] [debug] Outgoing: Writing CLOSE
[03-09 01:05:03] [debug] Outgoing: Writing CHANNEL_DATA (0)
[03-09 01:05:03] [info] local ➞ remotee:\xx.js
有时候是这里没有反应:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2018-08-23 visual studio 2017 (vs2017安装)
2014-08-23 Creating a web server in pure C(c/c++ 写web server)
2014-08-23 lighttpd 介绍及安装
2014-08-23 《 UNIX网络编程》源码的使用
2014-08-23 linux netcat命令
2014-08-23 windows下使用远程工具登录虚拟机上的Linux、访问虚拟机上的服务 、端口转发、win7 telnet登陆虚拟机
2014-08-23 Ubuntu Telnet 配置(openbsd-inetd)