Làm cách nào để duy trì kết nối SSH?


11

Làm cách nào tôi có thể giữ kết nối SSH tồn tại mà không chủ động sử dụng. Khi tôi sử dụng, nó hoạt động tốt, nhưng khi tôi không sử dụng nó trong vài phút, nó sẽ ngắt kết nối. Khi tôi nhận được email mỗi lần tôi kết nối, làm cách nào tôi có thể duy trì phiên SSH?

Lưu ý: Trong .ssh/configtệp của tôi , ở đầu tôi có

Host *
ServerAliveInterval 3

nhưng nó dường như không hoạt động.


Khách hàng ssh gì? 3 quá ngắn, sử dụng khoảng 60. Bạn cũng có thể đặt nó trong / etc / ssh / ssh_config nếu bạn có quyền truy cập root.
Panther

*nên là tất cả trong số họ, không nên?
NerdOfLinux

Tôi không nghĩ rằng nó hoạt động với PuTTY
Panther

1
Kiểm tra url sau đây để được hướng dẫn PuTTY a2hosting.com/kb/getting-started-guide/accessing-your-account/...
Haitham A. El-Ghareeb

Câu trả lời:


10

Bạn cần chỉ định số lần thử và khoảng thời gian gửi gói đến máy chủ. Bạn có thể đặt các dòng sau trong .ssh/configtập tin của bạn :

Host examplehost
    Hostname examplehost.com
    ServerAliveInterval 180
    ServerAliveCountMax 2

Điều này sẽ gửi một gói đến máy chủ cứ sau 180 giây (3 phút) và nó sẽ thử hai lần trước khi đóng kết nối sau khi không nhận được phản hồi từ máy khách.


2
Tôi hoàn toàn quên mất ServerAliveCountMax, đó có lẽ là điều đã giải quyết vấn đề của tôi.
NerdOfLinux

4

Trên các hệ điều hành Linux và Apple Mac OS X, ~/.ssh/configtệp cho phép bạn chỉ định nhiều cài đặt SSH, bao gồm cả các cài đặt vẫn duy trì kết nối SSH. Để làm điều này, hãy làm theo các bước sau:

  1. Sử dụng trình soạn thảo văn bản ưa thích của bạn để mở ~/.ssh/configtệp trên máy tính cục bộ của bạn. Lưu ý: Nếu .sshthư mục hoặc tệp cấu hình không tồn tại, hãy tạo chúng.

  2. Thêm các dòng sau vào tập tin cấu hình. Các chủ Giá trị có thể là bất kỳ tên nào bạn muốn; nó chỉ đơn giản là một nhãn cho các cài đặt khác. Các Hostname giá trị là các máy chủ từ xa mà bạn muốn truy cập; thay thế example.com bằng tên miền của bạn. Thay thế tên người dùng bằng tên người dùng tài khoản Hosting của riêng bạn:


    Host example
        Hostname example.com
        Port 7822
        User username
        ServerAliveInterval 240
        ServerAliveCountMax 2

Với cấu hình này, máy khách SSH sẽ gửi một gói đến máy chủ cứ sau 240 giây (4 phút) để duy trì kết nối. Nếu máy khách không nhận được phản hồi sau hai lần thử (như được chỉ định bởi cài đặt ServerAliveCountMax), nó sẽ đóng kết nối.

Để biết thông tin chi tiết về tất cả các cài đặt cấu hình SSH có sẵn, hãy nhập man ssh_configvào dòng lệnh.

  1. Lưu các thay đổi vào tập tin cấu hình.

  2. Kết nối với tài khoản của bạn bằng SSH. Để làm điều này, chỉ cần nhập ví dụ ssh trong đó ví dụ đại diện cho giá trị Máy chủ bạn đã chỉ định trong bước 2.

Giám sát kết nối. Nếu nó vẫn giảm, giảm dần ServerAliveIntervalcài đặt trong tệp cấu hình cho đến khi kết nối ổn định.

Kiểm tra url sau để biết thêm chi tiết https://www.a2hosting.com/kb/getting-started-guide/accessing-your-account/keep-ssh-connections-alive


4

Bạn cũng có thể thêm các đối số này trong lệnh ssh, như vậy ...

ssh -o ServerAliveInterval=180 -o ServerAliveCountMax=2 $HOST
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.