Làm thế nào để hạn chế Brute Force SSH
Tấn công Brute Force là gì?
Brute Force hay Brute Force Attack là hình thức “hack” cổ điển, nhưng nó vẫn hiệu quả và được các hacker ưa chuộng. Đó là hình thức thử mật khẩu đúng sai.
Hacker sẽ sử dụng phần mềm tự động thử đăng nhập username và password phổ biến nhằm đăng nhập trái phép vào các tài khoản. Vì tùy thuộc vào độ dài và độ phức tạp của mật khẩu, việc bẻ khóa mật khẩu có thể mất từ vài giây đến nhiều năm.
Các hình thức tấn công Brute Force Attacks
Hình thức tấn công này dễ phòng chống nhưng lại rất dễ bị dính nếu bạn chủ quan trong việc đặt mật khẩu và username của mình. Thường thì bạn sẽ dễ bị tấn công kiểu này khi:
Đặt username là admin, administrator hoặc tương tự.
Mật khẩu không an toàn, dễ đoán ra, sử dụng phổ biến.
Không bảo mật đường dẫn đăng nhập.
Không thay đổi mật khẩu thường xuyên.
Các bước hạn chế Brute Force
Bước 1: Thay đổi Port SSH: Các bạn có thể tham khảo hướng dẫn tại đây: Cách thay đổi cổng SSH trên Linux Ubuntu 20.04
Bước 2: Sử dụng SSH key, tắt SSH Password Root
Tạo SSH Key: Các bạn có thể tham khảo hướng dẫn sau: Khởi tạo SSH Key bằng Puttygen
Tắt Login bằng Password:
Sau khi đã hoàn tất việc SSH với SSH Key thì bạn thực hiện tắt Login Password. Sở dĩ mình không tắt ngay từ đầu vì sẽ có trường hợp bạn cấu hình chưa đúng và sẽ không SSH vào được nữa.
vi /etc/ssh/sshd_config
Chuyển Yes→No
Sau đó thực hiện khởi động lại sshd
systemctl restart sshd
Cài đặt CSF
CSF (ConfigServer Security & Firewall) là tường lửa Stateful Packet Inspection (SPI) mã nguồn mở phổ biến, giúp bảo vệ hệ thống sử dụng hệ điều hành Linux. Ngoài các tính năng cơ bản của Firewall là filter packet in/out thì CSF còn hỗ trợ ngăn chặn các cuộc tấn công như Brute Force, DDoS Attack.
CSF có thể cấu hình block/restrict port để giới hạn port truy cập. Đồng thời, CSF duy trì danh sách whitelist và blacklist để kiểm soát truy cập. CSF cũng cung cấp Connection Limiting để giới hạn số lượng kết nối, Rate Limitng để giới hạn tần số truy cập, Real Time Block Liste và Port Scan Tracking (chống Scan Port).
Cài đặt Dependencies
Đối với CentOS 7
yum -y install wget perl unzip net-tools perl-libwww-perl perl-LWP-Protocol-https perl-GDGraph -y
CENTOS, RHEL 8
dnf -y install @perl
UBUNTU & DEBIAN
apt-get install perl wget unzip
Cài đặt CSF Firewall
Download CSF vào thư mục /tmp của server bằng lệnh wget, giải nén file bằng lệnh tar và cuối cùng install CSF bằng cách chạy script ./install.sh.
cd /tmp wget https://download.configserver.com/csf.tgz tar -zxvf csf.tgz cd csf ./install.sh
Để cài đặt CSF cho cPanel hoặc cài đặt CSF cho Directadmin, các bạn cũng chỉ cần thực hiện các bước tương tự như trên. Việc chạy file ./install.sh sẽ tự động nhận biết server có đang sử dụng cPanel hoặc Directadmin hay không và sử dụng tiến trình cài đặt tương ứng.