Tại sao lời nhắc mật khẩu của mật khẩu trực tuyến mất mãi mãi khi tôi SSH vào máy chủ Ubuntu 9.05 của mình?


27

Trả lời: Trên thực tế, nó đã thực hiện phân giải DNS ngược. Dựa trên các đề xuất bên dưới và bài viết này , tôi đã thêm "UseDNS no" vào sshd_config, ssh được khởi động lại và bây giờ lời nhắc mật khẩu sẽ hiển thị ngay lập tức.

Khi tôi SSH vào máy chủ của mình, tôi được cung cấp lời nhắc "đăng nhập là:" tiêu chuẩn, theo sau là dấu nhắc "mật khẩu của người dùng @ host:". Vì lý do gì, cái thứ hai luôn mất một lúc để hiển thị. Máy chủ của tôi không chịu tải và thường thực hiện các lệnh khá nhanh.

Bây giờ, chúng tôi chỉ nói chuyện trong khoảng 10 giây hoặc lâu hơn giữa thời gian tôi nhấn Enter cho tên người dùng và khi lời nhắc thứ hai hiển thị, nhưng khi bạn làm điều này rất nhiều, điều đó sẽ gây khó chịu. Tôi nghi ngờ Ubuntu đang tìm kiếm tài khoản người dùng của tôi, nhưng nó có <5 tài khoản trên toàn bộ cài đặt.

Cập nhật @Josh / var / log / message có chứa gem này:

Oct 28 16:54:59 Athena sudo: pam_sm_authenticate: Called
Oct 28 16:54:59 Athena sudo: pam_sm_authenticate: username = [msmith]
Oct 28 16:54:59 Athena sudo: Warning: Using default salt value (undefined in ~/.ecryptfsrc)
Oct 28 16:55:01 Athena sudo: Passphrase key already in keyring; rc = [1]
Oct 28 16:55:02 Athena sudo: Passphrase key already in keyring; rc = [1]
Oct 28 16:55:02 Athena sudo: There is already a key in the user session keyring for the given passphrase.

Trong đó msmith là tên người dùng của tôi. Tất cả điều này có nghĩa là gì?


Bạn có biết (hoặc muốn tìm hiểu) cách sử dụng trình thám thính gói như Wireshark hay tcpdumpkhông? Điều đó có thể cho bạn biết nếu máy chủ thực sự sử dụng tất cả thời gian đó, hoặc thực sự đang liên lạc với khách hàng.
Arjan

Câu trả lời:


17

Có thể nó đang thực hiện tra cứu DNS ngược trên IP của bạn? Bạn có thể kiểm tra kết quả trực tuyến nếu khách hàng đang sử dụng địa chỉ IP công cộng hoặc sử dụng một cái gì đó như sau từ máy chủ của bạn:

dig -x CLIENT_IP_ADDRESS

Có bất cứ điều gì trong /var/log/messages?


Tôi có Cảnh báo trong nhật ký: Cảnh báo: Sử dụng giá trị muối mặc định (không xác định trong ~ / .ecryptfsrc). Tôi đã đăng toàn bộ phần cho câu hỏi để phân tích của bạn.
RCampbell

@ rrc7cz, vậy còn DNS ngược thì sao? Địa chỉ IP của bạn giải quyết vấn đề gì? (Tôi nghi ngờ điều đó sẽ giúp ích, vì thường thì sẽ cần một vài cái bắt tay để quyết định xem có nên hiển thị lời nhắc cho tên người dùng hay không. Thử nghiệm nhanh bằng Wireshark trên máy Mac của tôi cho thấy SSH được khởi tạo từ lâu trước khi yêu cầu tên người dùng. Nhưng có thể một số khách hàng hỏi tên người dùng đó trước cả khi cố gắng kết nối ...?)
Arjan

3
Tôi gặp vấn đề tra cứu DNS ngược này làm chậm các kết nối ssh của tôi trong vài lần cài đặt ... Nếu bạn thấy đây là trường hợp nhận xét dòng "UseDNS yes" trong / etc / ssh / sshd_config và khởi động lại sshd.
John Barrett

@john, bạn có nhớ nếu điều đó bị chậm lại sau khi gõ tên người dùng không?
Arjan

1
"UseDNS no" cũng giúp tôi! UpVotes cho cả Q & A!
Grizly

14

Có lẽ độ phân giải DNS ngược (máy chủ đang cố lấy tên IP của máy khách) đang mất nhiều thời gian. Bạn có thể kiểm tra xem / etc / ssh / sshd_config có cài đặt "ConfirmReverseMapping có" không? Đặt nó thành "ConfirmReverseMapping no" và kiểm tra xem có giúp ích không.

Chỉnh sửa: Có vẻ như ConfirmReverseMapping hiện không dùng nữa và useDNS là cấu hình mới trong sshd_config .


Nó có thể đúng, nhưng nó có ý nghĩa khi đó nhắc nhở tên người dùng được hiển thị ngay lập tức, sau đó phải mất 10 giây để được hỏi mật khẩu?
Arjan

Khách hàng có thể phân giải tên máy chủ và gửi yêu cầu, đó là lý do tại sao lời nhắc của người dùng được hiển thị ngay lập tức. Nhưng sau đó, máy chủ cố gắng lấy tên của khách hàng (độ phân giải DNS ngược). Điều này có thể hết thời gian nếu không có liều nhập cảnh. Cài đặt "ConfirmReverseMapping" trong sshd-config kiểm soát kiểm tra này.
safeBadshah

1
Đây là lý do cho sự chậm chạp trong trường hợp của tôi, vì vậy ít nhất nó cũng có ý nghĩa trong một số trường hợp. Xin lưu ý rằng mặc định là yesvậy, vì vậy đừng chỉ tìm kiếm nếu useDNSđược đặt :)
Nanne


3

Bạn luôn có thể đăng nhập bằng tên người dùng để bắt đầu:

ssh user@server

Điều đó có ảnh hưởng gì không?

Nếu bạn đang sử dụng PuTTY, nó có thể được cấu hình trong Kết nối -> Dữ liệu dưới dạng tên người dùng tự động đăng nhập.


1
Mặc dù điều này rõ ràng không tăng tốc thời gian cần thiết để xuất hiện dấu nhắc mật khẩu, nhưng nó chắc chắn sẽ tăng tốc quá trình đăng nhập chung. Cảm ơn
RCampbell

3

Nếu bạn không có tên miền phù hợp cho mọi thứ, hãy tạo một cái gì đó và đặt nó vào /etc/hosts. Xem nếu điều đó diễn ra nhanh hơn ... đừng bận tâm .comchỉ bằng cách sử dụng "bob, carol, ted, alice" hoặc bất cứ điều gì bạn muốn ...

Nếu vấn đề là thời gian chờ giải quyết thì điều này sẽ khắc phục nó.


1

Hãy nhớ rằng máy khách cũng sẽ thực hiện kiểm tra kiểm tra DNS ngược, có thể mất 30 giây trở lên để hết thời gian nếu ánh xạ DNS ngược không tồn tại với các cấu hình độ phân giải nhất định.

Trong một /etc/ssh/ssh_confighoặc trong ~/.ssh/configthiết lập CheckHostIP nođể vô hiệu hóa tra cứu phía máy khách này.

Xem man 5 ssh_configđể biết thêm chi tiết.


1

Tôi đã tìm thấy một giải pháp thay thế cho vấn đề này: - http://www.patrickmin.com/linux/tip.php?name=ssh_pause

Tôi gặp vấn đề tương tự khi đăng nhập vào máy dựng linux bằng Putty dưới windows. Thêm địa chỉ IP của hộp windows của tôi vào / etc / hosts trên máy linux đã giải quyết được vấn đề.


3
Chào mừng bạn đến với Siêu người dùng - Chúng tôi thường thích bạn bao gồm các chi tiết và không chỉ các liên kết. Bạn có thể EDIT câu trả lời của bạn để thêm thông tin từ liên kết?
Simon Sheehan

1

Chỉ để ghi lại, tôi đã gặp phải vấn đề tương tự khi ssh sẽ nhanh chóng từ nhà đến máy chủ nhà của tôi (chủ yếu sử dụng nó cho git), nhưng sẽ mất khoảng 10-20 giây để làm việc để nhận được lời nhắc nhập mật khẩu.

Tôi phải tắt UseDNS novà khởi động lại sshd sudo systemctl restart sshd.service. Sau đó, nó hoạt động từ tất cả các địa điểm.

Tôi biết câu hỏi đã được trả lời và được chấp nhận, nhưng tôi muốn thêm thông tin vì tôi phải "chủ động" đặt nó thành không để khiến nó ngừng sử dụng dns.


0

Vui lòng kiểm tra nếu nslcd (LDAP daemon) đang chạy:

ps -ef | grep nslcd

Nó có thể gây ra vấn đề này.

Nếu nó đang chạy dừng nó và xóa khỏi danh sách các dịch vụ

service nslcd stop
chkconfig nslcd off
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.