Khi chúng ta đi sâu vào thế giới quản trị mạng, chúng ta thường xuyên sử dụng SSH (Secure Shell) để liên lạc dữ liệu an toàn, đăng nhập dòng lệnh từ xa, thực thi lệnh từ xa và các dịch vụ mạng an toàn khác giữa hai máy tính nối mạng. SSH cung cấp xác thực mạnh mẽ và giao tiếp dữ liệu an toàn qua các kênh không an toàn, làm cho nó trở thành một lựa chọn ưa thích của các quản trị viên hệ thống. Tuy nhiên, một thách thức thường gặp phải trong lĩnh vực này là hết thời gian chờ SSH. Hãy làm rõ nó là gì và cách vô hiệu hóa nó để kết nối liền mạch và liên tục.
Hiểu về SSH Timeout
SSH Timeout, như tên của nó, đề cập đến thời gian nhàn rỗi sau đó máy chủ SSH kết thúc phiên SSH. Đây là một tính năng bảo mật có thể ngăn ngừa các rủi ro bảo mật tiềm ẩn liên quan đến việc để phiên SSH không giám sát mở. Tuy nhiên, điều này có thể gây phiền toái cho các quản trị viên mạng, những người cần giữ cho các phiên SSH hoạt động trong thời gian dài. Máy chủ đột ngột ngắt kết nối do không hoạt động có thể làm gián đoạn các nhiệm vụ đang diễn ra hoặc dẫn đến mất dữ liệu. Đây là lúc vô hiệu hóa thời gian chờ SSH trở nên cần thiết.
Vô hiệu hóa SSH Timeout
Có hai phương pháp chính để ngăn chặn thời gian chờ SSH: sửa đổi cấu hình máy chủ và sửa đổi cấu hình máy khách. Dưới đây là cách bạn có thể triển khai từng loại:
Cấu hình phía máy chủ
Bước 1: Mở tệp cấu hình SSH daemon trên máy chủ của bạn bằng trình soạn thảo văn bản. Tệp thường nằm ở ‘/etc/ssh/sshd_config‘.
sudo nano /etc/ssh/sshd_config
Bước 2: Tìm các dòng sau:
ClientAliveInterval 0
ClientAliveCountMax 3
‘ClientAliveInterval’ chỉ định thời lượng tính bằng giây mà máy chủ đợi trước khi gửi gói rỗng đến máy khách, nhằm duy trì kết nối hoạt động. Mặt khác, ‘ClientAliveCountMax’ đại diện cho số lượng tối đa các tin nhắn lưu giữ chưa được trả lời mà máy chủ có thể gửi đến máy khách trước khi nó coi kết nối là không phản hồi. Nếu máy khách không phản hồi vượt quá giới hạn này, SSH sẽ cắt đứt kết nối, do đó kết thúc phiên.
Bước 3: Sửa đổi các dòng này để đặt khoảng thời gian chờ. Ví dụ: nếu bạn muốn thời gian chờ là 2 giờ, hãy đặt ‘ClientAliveInterval’ thành 7200 (giây) và ‘ClientAliveCountMax’ thành 3. Các thay đổi ngụ ý rằng máy chủ sẽ gửi một tin nhắn giữ sống cứ sau 2 giờ và ngắt kết nối nếu nó không nhận được bất kỳ phản hồi nào sau ba yêu cầu liên tiếp.
ClientAliveInterval 7200
ClientAliveCountMax 3
Bước 4: Lưu và đóng tệp.
Bước 5: Khởi động lại dịch vụ SSH để áp dụng các thay đổi.
sudo systemctl restart sshd
Cấu hình phía máy khách
Bước 1: Mở tệp cấu hình máy khách SSH. Tệp thường nằm ở ‘~/.ssh/config‘. Nếu nó không tồn tại, bạn có thể tạo nó.
nano ~/.ssh/config
Bước 2: Thêm các dòng sau để đặt khoảng thời gian giữ nguyên:
Host _
ServerAliveInterval 60
Cấu hình này có nghĩa là máy khách sẽ gửi một tin nhắn keepalive đến máy chủ cứ sau 60 giây để giữ cho kết nối tồn tại.
Bước 3: Lưu và đóng tệp.
Bây giờ, khách hàng của bạn sẽ tự động gửi các tin nhắn giữ sống này để ngăn máy chủ hết thời gian. Hãy nhớ rằng cấu hình phía máy chủ sẽ áp dụng cho tất cả các máy khách kết nối với máy chủ đó, trong khi cấu hình phía máy khách chỉ áp dụng cho máy khách cụ thể đó.
Kết luận
Vô hiệu hóa thời gian chờ SSH có thể làm giảm đáng kể sự gián đoạn trong quá trình hoạt động mạng của bạn, đảm bảo kết nối trơn tru và liên tục cho các nhiệm vụ của bạn. Tuy nhiên, hãy nhớ rằng tính năng này cũng phục vụ chức năng bảo mật, vì vậy hãy đảm bảo thực hiện nó một cách khôn ngoan và duy trì giám sát thường xuyên để tránh những rủi ro tiềm ẩn. Hiểu cơ chế hết thời gian chờ SSH và quản lý hiệu quả nó sẽ đi một chặng đường dài trong việc nâng cao hiệu quả của bạn với tư cách là quản trị viên mạng.