ssh treo rồi hết giờ


8

Tôi mới sử dụng ssh trên linux. Tôi có hai máy tính được kết nối trên một công tắc. Cái đầu tiên là 192.168.1.2 và cái thứ hai là 192.168.1.3. Khi tôi sử dụng pinglệnh tôi nhận được hồi âm và mọi thứ đều tốt, nhưng khi tôi sử dụng ssh từ máy tính đầu tiên, ssh -v user@192.168.1.3nó sẽ cho tôi,

OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.1.2 [192.168.1.2] port 22.
debug1: connect to address 192.168.1.2 port 22: Connection timed out

Tôi đã cài đặt ssh trên cả hai máy. Bất kỳ ý tưởng về làm thế nào tôi có thể khắc phục vấn đề này?

Câu trả lời:


1

Kiểm tra những điều sau:

  • Cổng 22 mở và có thể nhận kết nối
  • Đảm bảo OpenSSH hoặc một quy trình SSH khác đang chạy trên máy chủ
  • Đảm bảo tệp cấu hình SSH được cung cấp các giá trị phù hợp

9
Ừm. man sshd_config |grep -i appropriatexuất hiện trống trên tất cả các hộp linux của tôi và Solaris cũng vậy
sehe

@sehe Tập tin không nằm trong / etc / ssh /?

3
Điều này làm cho tôi <mũ cứng /> ngay cả khi ở trên giường. Sarcasm thất bại. Những gì tôi (chế giễu) đề xuất, là tài liệu không chứa thông tin về cài đặt (sic) thích hợp
sehe

cảm ơn vì tất cả, thực sự cổng 22 đã đóng nên tôi đã chèn lệnh này [code] iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 22 -j CHẤP NHẬN [/ code]
sam

Cảm ơn @norway, tôi đang đối mặt với cùng một vấn đề. Làm thế nào tôi có thể kiểm tra những thứ đó? Tôi đang sử dụng một Hosting chia sẻ. Cảm ơn.
abu abu

3

Những mẹo xử lí sự cố:

  • Bạn có thể ssh localhosttrên máy chủ?
  • Người dùng có được phép không? ( AllowUserscài đặt)
  • Bạn có liên kết với các NIC bên ngoài? (tìm kiếm ListenAddress 0.0.0.0hoặc ListenAddress ::)
  • Bạn đang chạy trên cổng 22? ( Port)

    • Về cơ bản kiểm tra /etc/ssh/sshd_config.
  • Đã thêm : bạn có thể sử dụng netstat -tlpn | grep 22để tìm hiểu những chương trình (nếu có) đang nghe trên cổng 22 ( chạy dưới quyền root để xem tên quy trình ).

Ngoài ra, hãy xem xét sử dụng kết nối cổng rõ ràng thay vì ping (ví dụ nmap -PN remote -p22hoặc thậm chí chỉ telnet remote 22)


1

Tôi biết, câu hỏi là về mạng riêng, nhưng tôi đã có đầu ra tương tự khi tôi đang cố truy cập một thiết bị qua Internet. Sau khi googling, tôi tìm thấy câu hỏi này; Vì vậy, mặc dù, nó có thể không trả lời câu hỏi, những người khác có thể thấy câu trả lời của tôi hữu ích. Trong trường hợp của tôi, hóa ra ISP của tôi đang chặn cổng 22 / TCP.

Nếu bạn đang cố gắng truy cập một thiết bị qua Internet, về cơ bản có năm khả năng:

  1. Kết nối mạng có thể không được thực hiện giữa các máy. Hãy thử ping địa chỉ IP của máy chủ. Nếu bạn không thể nhận được bất kỳ gói tin nào, thì hãy thử kiểm tra kết nối mạng trên cả hai máy.
  2. Máy chủ SSH có thể bị cấu hình sai. Hãy thử SSH vào thiết bị cục bộ (từ cùng một thiết bị và người dùng đến cùng một thiết bị và người dùng) thông qua:

    ssh localhost
    
  3. Nếu máy chủ được kết nối với Internet thông qua bộ định tuyến, chuyển tiếp cổng có thể không được cấu hình phù hợp. Vì vậy, hãy kiểm tra cấu hình chuyển tiếp cổng trên bộ định tuyến của bạn.

  4. Tường lửa cục bộ trên máy chủ có thể đang lọc kết nối đến. Hãy thử cho phép các kết nối đến trên cổng 22 / TCP trong quy tắc tường lửa của bạn hoặc tạm thời vô hiệu hóa tường lửa.
  5. Một hoặc cả hai ISP có thể lọc kết nối ra. Hãy thử thay đổi cổng trên máy chủ thành thứ gì đó như 2222, khởi động lại máy chủ SSH và SSH bằng cổng mới. Bạn có thể chỉ định cổng trên máy khách thông qua -ptùy chọn trong lệnh như thế này:

    ssh USER@HOST -p PORT
    

0

Trước tiên, hãy kiểm tra xem SSH có chạy ở đầu nhận không. Đăng nhập vào máy từ xa và thử ssh vào localhost (ssh vào cùng máy bạn đang bật).

ssh -v myUserName@localhost

Điều này sẽ nhắc mật khẩu của bạn và sau đó sẽ đăng nhập bạn vào cùng một máy. Nếu điều này không hoạt động, điều đó có nghĩa là máy chủ này không kích hoạt SSH. Kích hoạt "đăng nhập từ xa" trên máy chủ này sẽ khắc phục sự cố.

Tuy nhiên, nếu bạn đã có thể ssh từ máy chủ mục tiêu thành chính nó, thì vấn đề có thể xảy ra ở đâu đó ở giữa. Điều tiếp theo của bạn để kiểm tra là tường lửa trên máy chủ nguồn để đảm bảo rằng chúng không chặn ssh.


1
Tôi gọi là từ bỏ: Enabling "remote login"thực ra không có nghĩa gì cả. Khắc phục sự cố cũng sẽ kích hoạt "đăng nhập từ xa", FWIW
sehe

0

Nếu máy chủ openssh đã được cài đặt, có thể chặn tường lửa ... giả sử bạn đã bật ufw.

Nếu bạn đang đi từ máy 192.168.1.2 đến máy đích 192.168.1.3. Trên máy đích làm ... Sudo ufw cho phép từ 192.168.1.2. Và ngược lại visa sẽ có ích


0

[Đây là câu trả lời đầu tiên của tôi từ trước đến giờ, tôi yêu cầu phê bình mang tính xây dựng nếu cần. Cảm ơn. :)]

Nó có thể là trường hợp bạn bị cấm từ máy đích, ví dụ như vì bạn đã nhập sai mật khẩu nhiều lần.

Chỉnh sửa /etc/fail2ban/jail.localtrên máy mục tiêu ( 192.168.1.3trong trường hợp của bạn). Điều này có thể được thực hiện nếu bạn có thể sshđến máy này từ một máy khác mà bạn không bị cấm.

Hoàn thành dòng ignoreipbên dưới [DEFAULT]với địa chỉ IP của máy nguồn của bạn:

[DEFAULT]

ignoreip = 192.168.1.2

-1

Kiểm tra những điều sau đây:

1) Chạy nmap localhost và kiểm tra trạng thái cổng 22

2) Trên máy tính thứ hai mà bạn muốn kết nối thông qua ssh, hãy thực hiện ssh localhost

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.