SSH-1挂在“进入交互式会话”(不是DNS;可能与SELinux相关)


9

我在CentOS 6.7上遇到问题,其中SSH登录比该网络上的任何非6.7计算机(例如7.2、5.11)多1秒。在客户端运行调试显示“进入交互式会话”挂起。

我用来作为该测试基础的命令是time ssh <host> true使用SSH密钥从笔记本电脑上获得的。

我已经检查/修改过的两件事是UseDNSGSSAPIAuthentication,并且两者都被禁用。

我在其他端口上启动了单独的守护程序,并进行了调试,并发现发生短挂起的位置:

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

4
如果日志无济于事,您可能应该使用strace并查看挂起的呼叫。
安德鲁B

1
谢谢@AndrewB。我已经在这里发布了它:pastebin.com/raw/3c08tcMd。如果搜索“ / selinux / user”,则在尝试写入该文件时会看到1s的挂起时间。-沿着那条路走,我发现了一篇关于禁用“无限制”域的相关文章(bugzilla.redhat.com/show_bug.cgi?id=811656#c9)。这确实使我的登录时间节省了约.5秒,但仍比Cent7 / FC4慢了0.5秒。如果可能的话,仍然希望获得最后的性能。
Morgon

Answers:


1

这可能没有关系,但是已经在此处报告了基于IPA帐户的与selinux相关的慢度:https : //access.redhat.com/discussions/3499951

这种情况的解决方案是:

我浏览了SSSD和IPA用户论坛,由于我的系统未使用SELINUX,因此我将其添加到sssd配置的domain部分中:

selinux_provider=none

此后,登录过程将按预期立即进行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.