Câu trả lời:
Tất cả các nỗ lực đăng nhập được đăng nhập vào /var/log/auth.log
.
Mở một thiết bị đầu cuối, và gõ dưới đây; nếu nó dài hơn 1 trang, bạn sẽ có thể cuộn lên xuống; gõ q
để thoát:
grep sshd.\*Failed /var/log/auth.log | less
Đây là một ví dụ thực tế từ một trong các VPS của tôi:
Ngày 18 tháng 8 11:00:57 izxvps sshd [5657]: Mật khẩu không thành công cho root từ 95.58.255.62 cổng 38980 ssh2 Ngày 18 tháng 8 23:08:26 izxvps sshd [5768]: Mật khẩu không thành công cho root từ 91.205.189.15 cổng 38156 ssh2 Ngày 18 tháng 8 23:08:30 izxvps sshd [5770]: Mật khẩu không thành công cho ai từ 91.205.189.15 cổng 38556 ssh2 Ngày 18 tháng 8 23:08:34 izxvps sshd [5772]: Mật khẩu không thành công cho dấu hoa thị người dùng không hợp lệ từ 91.205.189.15 cổng 38864 ssh2 Ngày 18 tháng 8 23:08:38 izxvps sshd [5774]: Mật khẩu không thành công cho sjobeck người dùng không hợp lệ từ 91.205.189.15 cổng 39157 ssh2 Ngày 18 tháng 8 23:08:42 izxvps sshd [5776]: Mật khẩu không thành công cho root từ 91.205.189.15 cổng 39467 ssh2
Sử dụng lệnh này:
grep sshd.*Did /var/log/auth.log | less
Thí dụ:
Ngày 5 tháng 8 22:19:10 izxvps sshd [7748]: Không nhận được chuỗi nhận dạng từ 70.91.222.121 Ngày 10 tháng 8 19:39:49 izxvps sshd [1919]: Không nhận được chuỗi nhận dạng từ 50.57.168.154 Ngày 13 tháng 8 23:08:04 izxvps sshd [3562]: Không nhận được chuỗi nhận dạng từ 87.216.241.19 Ngày 17 tháng 8 15:49:07 izxvps sshd [5350]: Không nhận được chuỗi nhận dạng từ 211.22.67.238 Ngày 19 tháng 8 06:28:43 izxvps sshd [5838]: Không nhận được chuỗi nhận dạng từ 59.151.37.10
/var/log/secure
systemctl -eu sshd
Tôi cho rằng nhật ký giám sát là một giải pháp yếu đặc biệt là nếu bạn có mật khẩu yếu trên tài khoản. Nỗ lực vũ phu thường thử ít nhất hàng trăm phím mỗi phút. Ngay cả khi bạn có một công việc định kỳ được đặt để gửi email cho bạn về những nỗ lực vũ phu, có thể mất vài giờ trước khi bạn đến máy chủ của mình.
Tôi rất muốn giới thiệu fail2ban
. Wiki của họ nói những gì nó làm tốt hơn tôi có thể.
Fail2ban quét các tệp nhật ký (ví dụ
/var/log/apache/error_log
) và cấm các IP hiển thị các dấu hiệu độc hại - quá nhiều lỗi mật khẩu, tìm cách khai thác, v.v. Nói chung Fail2Ban được sử dụng để cập nhật các quy tắc tường lửa để từ chối địa chỉ IP trong một khoảng thời gian xác định, mặc dù vậy hành động khác tùy ý (ví dụ gửi email hoặc đẩy khay CD-ROM) cũng có thể được định cấu hình. Fail2Ban đi kèm với các bộ lọc cho các dịch vụ khác nhau (apache, curier, ssh, v.v.).
Nhận được bảo vệ từ nó là đơn giản như sudo apt-get install fail2ban
.
Theo mặc định ngay khi ai đó có ba lần thất bại, IP của họ bị cấm năm phút. Kiểu trì hoãn đó về cơ bản sẽ ngăn chặn nỗ lực vũ phu của SSH nhưng sẽ không làm hỏng ngày của bạn nếu bạn quên mật khẩu (nhưng dù sao bạn cũng nên sử dụng khóa!)