我在CentOS 6.7上遇到问题,其中SSH登录比该网络上的任何非6.7计算机(例如7.2、5.11)多1秒。在客户端运行调试显示“进入交互式会话”挂起。
我用来作为该测试基础的命令是time ssh <host> true
使用SSH密钥从笔记本电脑上获得的。
我已经检查/修改过的两件事是UseDNS
和GSSAPIAuthentication
,并且两者都被禁用。
我在其他端口上启动了单独的守护程序,并进行了调试,并发现发生短挂起的位置:
debug1: SELinux support enabled
debug3: ssh_selinux_setup_exec_context: setting execution context
{1s hang}
debug3: ssh_selinux_setup_exec_context: done
SELinux设置为“宽松”。我不确定为什么它还要打扰“设置上下文”。有什么办法可以使这两个人更好地相处而不完全禁用SELinux?我知道1s并不多,但是我使用这台特定的机器作为SSH网关来托管具有IP白名单的主机(这是一台静态IP机器),并且整日累积。
在运行strace之后,挂起的位置更加细微:
22:16:05.445032 open("/selinux/user", O_RDWR|O_LARGEFILE) = 4 <0.000090>
22:16:05.445235 write(4, "unconfined_u:system_r:sshd_t:s0-s0:c0.c1023 unconfined_u", 56) = 56 <0.334742>
22:16:05.780128 read(4, "18\0unconfined_u:system_r:prelink_mask_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_mount_t:s0-s0:c0.c1023\0unconfined_u:system_r:abrt_helper_t:s0-s0:c0.c1023\0unconfined_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_notrans_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_execmem_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_java_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_mono_t:s0-s0:c0.c1023\0unconfined_u:system_r:chkpwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:passwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:updpwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:mount_t:s0-s0:c0.c1023\0unconfined_u:system_r:rssh_t:s0-s0:c0.c1023\0unconfined_u:system_r:xauth_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_t:s0-s0:c0.c1023\0unconfined_u:system_r:openshift_t:s0-s0:c0.c1023\0unconfined_u:unconfined_r:oddjob_mkhomedir_t:s0-s0:c0.c1023\0unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023\0", 4095) = 929 <0.000079>
写入/selinux/user
仅需350毫秒。
更新1-我尝试过的事情:
- 正在更新。许多盒子需要更新。这对登录时间没有任何实质性影响。
semodule -d unconfined
-这起到了积极的作用,将登录时间减少了大约500毫秒。但是,我的C7和C5.11盒(自从(重新)学习以来,已禁用SELinux)平均〜525ms- 比较我的C6.7机器-事实证明64位盒比32位盒快。也许对于某些人来说这是个“ duh”时刻,但是由于这些盒子中的任何一个都不需特别负担,所以我没想到会有100-300ms的差异。我能够在其中一台64位主机上打破1s标记(850毫秒)。最低的32bit是1.085s
我问得太多了吗?selinux允许的机器可以接受10-1200ms的登录时间吗?好奇别人的基准是什么。
检查系统日志。
—
迈克尔·汉普顿
我有...不幸的是,没有什么值得一提的
—
上海摩根
messages
还是secure
@Morgon:你ckecked如果你运行像“的fail2ban” - fail2ban.org -在机器和/或如果你已在某些方面可以做一些这样的“速率限制”设置“的iptables”传入的SSH连接取决于源IP地址?
—
ricmarques
如果日志无济于事,您可能应该使用
—
安德鲁B
strace
并查看挂起的呼叫。
谢谢@AndrewB。我已经在这里发布了它:pastebin.com/raw/3c08tcMd。如果搜索“ / selinux / user”,则在尝试写入该文件时会看到1s的挂起时间。-沿着那条路走,我发现了一篇关于禁用“无限制”域的相关文章(bugzilla.redhat.com/show_bug.cgi?id=811656#c9)。这确实使我的登录时间节省了约.5秒,但仍比Cent7 / FC4慢了0.5秒。如果可能的话,仍然希望获得最后的性能。
—
Morgon