J'ai un problème sur CentOS 6.7 où les connexions SSH sont 1s de plus que toutes les machines non 6.7 sur ce réseau (par exemple 7.2, 5.11). L'exécution du débogage côté client a montré le blocage de "Entrée dans une session interactive".
La commande que j'utilise pour baser ce test provient time ssh <host> true
de mon ordinateur portable, en utilisant les clés SSH.
Les deux choses que j'ai déjà vérifiées / modifiées sont UseDNS
et GSSAPIAuthentication
, et les deux sont désactivées.
J'ai démarré un démon distinct sur un port différent avec le débogage, et j'ai trouvé où se produit le blocage court:
debug1: SELinux support enabled
debug3: ssh_selinux_setup_exec_context: setting execution context
{1s hang}
debug3: ssh_selinux_setup_exec_context: done
SELinux est défini sur «permissif». Je ne sais pas pourquoi cela dérangerait même avec "la mise en contexte". Existe-t-il un moyen de faire mieux s'entendre ces deux sans désactiver complètement SELinux? Je me rends compte que 1s n'est pas grand-chose, mais j'utilise cette machine particulière comme passerelle SSH vers des hôtes avec des listes blanches IP (il s'agit d'une machine IP statique), et cela s'ajoute tout au long de la journée.
Après avoir exécuté une strace, le blocage est un peu plus granulaire:
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>
L'écriture /selinux/user
prend 350 ms seule.
Mise à jour 1 - Ce que j'ai essayé depuis :
- Mise à jour. Beaucoup de boîtes nécessitaient des mises à jour. Cela n'a pas eu d'effet significatif sur les temps de connexion.
semodule -d unconfined
- Cela a eu un effet positif, réduisant les temps de connexion d'environ 500 ms. Cependant, mes boîtes C7 et C5.11 (que j'ai depuis (ré) apprises ont désactivé SELinux) en moyenne ~ 525 ms- Comparer mes machines C6.7 - Il s'avère que les boîtiers 64 bits sont plus rapides que mes boîtiers 32 bits. Peut-être que c'est un moment «duh» pour certains, mais comme aucune de ces boîtes n'est particulièrement taxée, je ne m'attendais pas à un écart de 100 à 300 ms. J'ai pu briser la marque des 1 (850 ms) sur l'un des hôtes 64 bits. Le plus bas sur 32 bits a été de 1,085 s
Suis-je trop demander? 10-1200 ms est-il un temps de connexion acceptable pour les machines autorisant le selinux? Curieux de savoir quelles sont les références des autres.
messages
ousecure
strace
et voir à quel appel il est suspendu.