SSH - 1 giây bị treo tại phiên bản Bước vào phiên tương tác trực tuyến (Không phải DNS; có thể liên quan đến SELinux)


9

Tôi đang gặp sự cố trên CentOS 6.7 trong đó thông tin đăng nhập SSH nhiều hơn bất kỳ máy nào không có 6.7 trên mạng này (ví dụ 7.2, 5.11). Chạy gỡ lỗi ở phía máy khách cho thấy tình trạng treo ở "Bước vào phiên tương tác".

Lệnh tôi đang sử dụng để dựa trên bài kiểm tra này là time ssh <host> truetừ máy tính xách tay của tôi, sử dụng Khóa SSH.

Hai điều tôi đã kiểm tra / sửa đổi được UseDNSGSSAPIAuthentication, và cả hai đều là người tàn tật.

Tôi đã bắt đầu một trình nền riêng biệt trên một cổng khác với gỡ lỗi và đã tìm thấy nơi xảy ra tình trạng treo ngắn:

debug1: SELinux support enabled
debug3: ssh_selinux_setup_exec_context: setting execution context

{1s hang}

debug3: ssh_selinux_setup_exec_context: done

SELinux được đặt thành 'cho phép'. Tôi không chắc tại sao nó thậm chí còn bận tâm với "bối cảnh thiết lập". Có cách nào để hai người này hòa hợp với nhau hơn mà không vô hiệu hóa hoàn toàn SELinux không? Tôi nhận ra số 1 không nhiều, nhưng tôi sử dụng máy cụ thể này làm cổng SSH để lưu trữ với danh sách trắng IP (đây là máy IP tĩnh) và nó hoạt động suốt cả ngày.

Sau khi chạy một bước, hang bị chi tiết hơn một chút:

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>

Viết để /selinux/usermất 350ms một mình.

Cập nhật 1 - Những điều tôi đã thử :

  • Đang cập nhật. Nhiều trong số các hộp yêu cầu cập nhật. Điều này đã không có bất kỳ hiệu ứng vật chất về thời gian đăng nhập.
  • semodule -d unconfined- Điều này đã có tác động tích cực, giảm thời gian đăng nhập khoảng 500ms. Tuy nhiên, các hộp C7 và C5.11 của tôi (mà tôi đã học được (đã) bị vô hiệu hóa) trung bình ~ 525ms
  • So sánh các máy C6.7 của tôi - Hóa ra các hộp 64 bit nhanh hơn các hộp 32 bit của tôi. Có thể đây là một khoảnh khắc 'duh' đối với một số người, nhưng vì không có hộp nào trong số này bị đánh thuế đặc biệt, tôi không mong đợi mức chênh lệch 100-300ms. Tôi đã có thể phá vỡ mốc 1s (850ms) trên một trong những máy chủ 64 bit. Thấp nhất trên 32 bit đã là 1.085

Tôi có hỏi quá nhiều không? 10-1200ms có phải là thời gian đăng nhập chấp nhận được cho các máy cho phép selinux không? Tò mò những điểm chuẩn của người khác là gì.


Kiểm tra nhật ký hệ thống của bạn.
Michael Hampton

Tôi có ... Thật không may, không có gì đáng chú ý trong messageshoặcsecure
Morgon

@Morgon: Bạn đã ckecked nếu bạn đang chạy một cái gì đó như "fail2ban" - fail2ban.org - trong máy đó và / hoặc nếu bạn đã thiết lập "iptables" theo cách nào đó có thể đang thực hiện một số loại "giới hạn tỷ lệ" kết nối SSH đến tùy thuộc vào địa chỉ IP nguồn?
ricmarques 17/1/2016

4
Nếu nhật ký không giúp ích, có lẽ bạn nên sử dụng stracevà xem nó được gọi là gì.
Andrew B

1
Cảm ơn, @AndrewB. Tôi đã đăng nó ở đây: pastebin.com/raw/3c08tcMd . nếu bạn tìm kiếm "/ selinux / người dùng", bạn sẽ thấy thời gian treo 1 giây trong khi cố gắng ghi vào tệp đó. - Đi xuống con đường đó, tôi tìm thấy một bài viết liên quan đến lề về việc vô hiệu hóa các tên miền 'không được kiểm soát' ( bugzilla.redhat.com/show_orms.cgi?id=811656#c9 ). Điều này không cạo ~ 0,5 giây từ thông tin đăng nhập của tôi, nhưng vẫn chậm hơn 0,5 giây so với Cent7 / FC4. Vẫn đang tìm cách giảm bớt hiệu suất cuối cùng, nếu có thể.
Morgon

Câu trả lời:


1

Điều này có thể không liên quan, nhưng sự chậm chạp liên quan đến selinux đã được báo cáo cho các tài khoản dựa trên IPA tại đây: https://access.redhat.com/discussions 43299951

Giải pháp cho trường hợp đó là:

Tôi đã xem xét các diễn đàn người dùng SSSD và IPA và vì các hệ thống của tôi không sử dụng SELINUX, tôi đã tiếp tục và thêm phần này vào phần tên miền trong cấu hình sssd:

selinux_provider=none

Sau đó, quá trình đăng nhập là ngay lập tức, như mong đợi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.