Giải quyết sự cố kết nối SSH
Secure Shell (SSH) là một giao thức quan trọng để truy cập từ xa
máy chủ một cách an toàn. Mặc dù đáng tin cậy, người dùng vẫn có thể gặp
các vấn đề kết nối khi làm việc với SSH. Hướng dẫn này sẽ đề cập đến
các vấn đề kết nối điển hình của SSH và cung cấp giải pháp để chẩn đoán
và giải quyết chúng.
Điều kiện tiên quyết
-
Quyền Truy Cập Quản Trị: Thông tin đăng nhập với
các quyền cần thiết trên máy chủ bạn đang cố gắng
truy cập -
Truy cập mạng: Kết nối internet ổn định và
khả năng truy cập mạng của máy chủ. -
Khách hàng SSH: Một SSH client hoạt động được cài đặt trên
máy tính cục bộ của bạn, chẳng hạn như OpenSSH hoặc PuTTY. -
Thông tin Máy chủ: Địa chỉ IP của máy chủ, SSH
số cổng (mặc định là 22) và tài khoản người dùng thích hợp
thông tin -
Quyền hạn: Nếu sử dụng xác thực dựa trên khóa,
hãy đảm bảo khóa riêng tư của bạn có sẵn và có quyền hạn chính xác
đặt.
Sự cố Thường Gặp và
Nguyên nhân
Xác thực
Những lỗi
Những sự cố này phát sinh khi có sự không khớp giữa thông tin đăng nhập
được cung cấp và những gì máy chủ mong đợi. Các tình huống phổ biến bao gồm:
-
Mật khẩu không chính xác: Lỗi gõ hoặc
thay đổi mật khẩu gần đây có thể gây ra lỗi. -
Vấn đề Khóa Công Khai: Nếu tệp ở phía máy chủ
authorized_key không chứa khóa công khai chính xác
hoặc nếu khóa riêng tư của client không được tải, xác thực sẽ
thất bại. -
Thông tin đăng nhập hết hạn: Một số hệ thống thực thi
chính sách hết hạn mật khẩu hoặc khóa để đảm bảo an toàn.
Vấn đề Mạng
Kết nối có thể bị mất do các sự cố ở tầng mạng, chẳng hạn như:
-
Hạn chế Tường lửa: Tường lửa có thể
được cấu hình để chặn cổng SSH mặc định (22), yêu cầu thay đổi quy tắc
cho phép lưu lượng. -
Cấu hình DNS không chính xác: Cài đặt DNS không chính xác có thể
dẫn đến client phân giải thành địa chỉ IP sai cho
máy chủ -
Gián đoạn dịch vụ: Kết nối Internet không ổn định
kết nối hoặc các sự cố mạng ở phía máy chủ có thể gián đoạn SSH
truy cập
Cấu hình SSH
Lỗi
Cấu hình đúng cho daemon và client SSH là điều cần thiết.
Các vấn đề có thể bao gồm:
-
Cấu hình sshd_config không đúng: Chỉ thị không chính xác
trong file cấu hình SSH của server có thể ngăn kết nối. -
Vấn đề Cấu hình Client: Client SSH
cần cấu hình phù hợp với yêu cầu của server, chẳng hạn như
chấp nhận các loại khóa hoặc thuật toán mã hóa chính xác.
Server quá tải hoặc
Thời gian ngừng hoạt động
Tải server cao có thể làm chậm hoặc gián đoạn dịch vụ SSH, và thời gian ngừng hoạt động lên lịch
hoặc không lên lịch có thể tạm thời khiến server
không thể truy cập
Các bước chẩn đoán
Để xác định và khắc phục sự cố kết nối SSH, hãy thực hiện các bước sau:
các bước chẩn đoán:
Đang kiểm tra mạng
Kết nối
Bắt đầu bằng cách xác nhận rằng kết nối mạng của bạn đang hoạt động và
ổn định. Sử dụng các công cụ như ping or
traceroute để xác minh kết nối tới
địa chỉ IP của server SSH. Điều này sẽ giúp bạn xác định xem vấn đề là ở cấp mạng
cấp độ
Đang xác minh
Thông tin xác thực
Đảm bảo rằng thông tin xác thực SSH mà bạn đang sử dụng là chính xác và
hiện tại. Đối với đăng nhập dựa trên mật khẩu, kiểm tra lại mật khẩu bạn đang
nhập. Đối với đăng nhập dựa trên khóa SSH, hãy xác nhận rằng khóa riêng được
tải vào client SSH và khóa công khai tương ứng được
hiện diện trong authorized_keys có trên server.
Đang kiểm tra SSH
Cấu hình
Kiểm tra các file cấu hình SSH một cách cẩn thận. Trên server, file
sshd_config nên được cấu hình để cho phép truy cập
thông qua các phương pháp dự định (mật khẩu hoặc khóa) và có cổng chính xác
được chỉ định. Ở phía client, cấu hình phải phù hợp với
yêu cầu giao thức của server.
Đang xem lại máy chủ
Nhật ký
Nhật ký server có thể cung cấp những thông tin chi tiết quý giá về nguyên nhân của sự cố SSH
lỗi. Hãy tìm kiếm các lỗi xác thực hoặc thông báo liên quan đến kết nối bị từ chối
Các nhật ký này thường nằm trong
/var/log/auth.log or
/var/log/secure.
Bằng cách làm theo các bước này một cách có hệ thống, bạn có thể xác định
nguyên nhân của các sự cố kết nối SSH.
Khắc phục sự cố
và Giải pháp cho Sự cố Kết nối SSH
Đang xử lý mạng
Vấn đề
Để điều chỉnh cài đặt tường lửa, sử dụng các lệnh sau:
-
Đối với Ubuntu: sudo ufw allow 22 cho phép SSH
lưu lượng trên cổng 22 -
Đối với CentOS: sudo firewall-cmd --permanent
–add-service=ssh theo sau bởi sudo firewall-cmd
–reload.

Khắc phục Xác thực
Vấn đề
Nếu bạn gặp sự cố truy cập SSH do xác thực,
thực hiện các bước sau:
- Đặt Lại Mật Khẩu: Trong Bảng điều khiển Cloudzy, điều hướng đến
đến Truy cập tab và nhấp vào ĐẶT LẠI CLOUD VPS
MẬT KHẨU để tạo mật khẩu mới.

-
Xác minh Khóa SSH: Trong SSH
Keys phần của bảng điều khiển, hãy đảm bảo rằng bạn nhập khóa công khai của mình
khóa SSH chính xác. Đường dẫn đến authorized_keys tệp
trên máy chủ của bạn, nên chứa khóa công khai của bạn, thường nằm trong
~/.ssh/authorized_keys. -
Kiểm tra Quyền hạn: Trên máy chủ, xác nhận
quyền của bạn ~/.ssh thư mục và
authorized_keys tập tin với chmod 700
~/.ssh và chmod 600
~/.ssh/authorized_keys.
Điều chỉnh SSH
Cấu hình
Để điều chỉnh cấu hình:
-
Xem xét và chỉnh sửa tệp cấu hình máy chủ SSH nằm trong
/etc/ssh/sshd_config trên máy chủ. Xác minh các chỉ thị
như Cho phép đăng nhập Root có và
Xác thực mật khẩu có để đảm bảo chúng khớp với
yêu cầu -
Khởi động lại dịch vụ SSH để áp dụng các thay đổi với sudo
systemctl khởi động lại sshd.
Đang kiểm tra DNS
Cấu hình
Các sự cố với cấu hình DNS có thể dẫn đến mất kết nối SSH
problems. Here's how to verify DNS settings on both the client and
phía máy chủ
- Phía Client (Linux): Sử dụng lệnh dig để
truy vấn các bản ghi DNS:
dig +short yourdomain.com
Lệnh này sẽ trả về địa chỉ IP của máy chủ của bạn. Nếu không,
Có thể có vấn đề với phân giải DNS trên máy khách của bạn
máy

Trên phía Máy khách (Windows): Sử dụng
nslookup trong Command Prompt:
nslookup yourdomain.com
Tương tự như dig, điều này sẽ trả về địa chỉ IP của máy chủ của bạn
địa chỉ nếu DNS đang phân giải đúng.

- Phía máy chủ: Kiểm tra bộ giải quyết DNS
tệp cấu hình, thường /etc/resolv.conf, để làm
chắc chắn rằng nó trỏ đến server DNS chính xác. Nó phải có các mục
tương tự như sau:
nameserver 8.8.8.8
nameserver 8.8.4.4
Đây là các máy chủ công cộng của Google và có thể được thay thế bằng những máy khác
do nhà cung cấp dịch vụ hosting hoặc ISP của bạn cung cấp.

- Kiểm tra độ phân giải DNS trên Server: Sử dụng
dig or nslookup lệnh trực tiếp trên
máy chủ để đảm bảo nó có thể phân giải tên miền thành địa chỉ IP. Nếu nó
không thể phân giải tên miền bên ngoài, điều này có thể cho biết vấn đề với
dịch vụ DNS hoặc cấu hình mạng trên chính máy chủ.
Giám sát Tài nguyên
với htop
Cài đặt htop để giám sát thời gian thực:
-
Ubuntu: sudo apt-get install htop
-
CentOS: sudo yum install htop
Sử dụng htop để theo dõi CPU, mức sử dụng bộ nhớ, và quản lý
các tiến trình trực tiếp trong giao diện.

Bảo trì máy chủ
Sức khỏe
Giữ máy chủ cập nhật để ngăn chặn lỗ hổng bảo mật và
vấn đề về hiệu suất:
-
Ubuntu: Thực thi sudo apt update && sudo apt
nâng cấp để cập nhật tất cả các gói. -
CentOS: Chạy sudo yum update để làm mới
hệ thống.
Để giải quyết hiệu quả các vấn đề kết nối SSH, hãy kiểm tra một cách có hệ thống
và điều chỉnh cài đặt DNS, xác thực thông tin đăng nhập, thay đổi quy tắc tường lửa
và xem lại cấu hình SSH. Cập nhật hệ thống thường xuyên và
giám sát tài nguyên là những thực tiễn thiết yếu để duy trì máy chủ ổn định
và an toàn. Bằng cách tuân theo các bước này, bạn có thể có
truy cập SSH đáng tin cậy đến VPS của bạn, giảm thiểu thời gian ngừng hoạt động và tăng cường
bảo mật. Nếu bạn cần thêm thông tin hoặc hỗ trợ thêm, vui lòng
liên hệ với đội hỗ trợ của chúng tôi tại đang gửi
vé.
Cũng trong Secure Shell Protocol (SSH)
Hướng dẫn liên quan.
Cần giúp đỡ với điều gì khác?
Thời gian phản hồi trung bình dưới 1 giờ. Nhân viên thực tế, không phải bot.