Fail2Ban adalah alat yang berkuasa yang dapat meningkatkan keselamatan pelayan web Apache anda dengan secara aktif mengurangkan serangan kekerasan. Ia berfungsi dengan memantau fail log untuk aktiviti yang mencurigakan, seperti percubaan masuk yang gagal. Apabila ia mengesan corak yang menunjukkan serangan kekerasan, ia secara automatik mengharamkan alamat IP yang menyinggung dengan menambahkannya kepada peraturan iptables firewall (atau setaraf untuk sistem firewall yang lain). Proses ini melibatkan beberapa langkah:
sudo apt-get install fail2ban
. Untuk centos/rhel, gunakan sudo yum install fail2ban
./etc/fail2ban/jail.local
(atau jalan yang sama bergantung kepada pengedaran anda). Anda perlu memastikan bahawa penjara apache-auth
(atau penjara yang sama mensasarkan fail log Apache) diaktifkan dan dikonfigurasi dengan betul. Ini biasanya melibatkan menentukan laluan fail log yang Fail2Ban harus memantau ( logpath
), ungkapan biasa yang mengenal pasti percubaan masuk gagal ( filter
), dan tindakan yang diambil apabila ambang dicapai ( action
). Konfigurasi lalai sering berfungsi dengan baik, tetapi anda mungkin perlu menyesuaikannya berdasarkan format fail log Apache khusus anda.filter
adalah penting. Ia mengandungi ungkapan biasa yang sepadan dengan garis dalam fail log yang menunjukkan percubaan masuk gagal. Regex ini perlu disesuaikan dengan format log Apache anda. Contoh umum untuk format log Apache standard mungkin kelihatan seperti ini: fail2ban-regex = ^\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*.*"(.*?)".*(\d{3})\s*(\d{3})\s*
Anda kemudian akan menggunakan findtime
untuk menentukan tetingkap masa untuk mengira percubaan gagal dan maxretry
untuk menetapkan bilangan percubaan gagal sebelum dilarang.sudo systemctl restart fail2ban
(atau perintah setara untuk sistem anda) untuk memohon perubahan./var/log/fail2ban.log
dan dapat memberikan pandangan yang berharga ke dalam serangan yang dikesan dan mengharamkan alamat IP. Beberapa pilihan konfigurasi utama dalam jail.local
Fail Local adalah penting untuk perlindungan Apache yang berkesan dengan Fail2ban:
enabled = true
: Ini membolehkan penjara. Sangat penting untuk dipenjarakan.port = http,https
: Ini menentukan port Fail2Ban harus memantau serangan. Laraskan ini jika pelayan Apache anda menggunakan port bukan standard.filter = apache-auth
: Ini menentukan penapis untuk digunakan. Penapis ini ditakrifkan dalam fail berasingan (misalnya, /etc/fail2ban/filter.d/apache-auth.conf
) dan mengandungi ungkapan biasa untuk memadankan percubaan masuk gagal. Anda mungkin perlu membuat atau mengubah suai fail ini berdasarkan format log Apache anda.logpath = /var/log/apache2/error.log
: Ini menentukan laluan ke fail log ralat Apache anda. Laluan yang tepat mungkin berbeza berdasarkan konfigurasi sistem anda.maxretry = 5
: Ini menetapkan bilangan maksimum percubaan masuk gagal dalam tetingkap masa yang ditentukan sebelum alamat IP dilarang.findtime = 600
: Ini mentakrifkan tetingkap masa (dalam saat) di mana percubaan maxretry
mesti berlaku. Nilai 600 saat (10 minit) adalah suasana yang biasa.bantime = 3600
: Ini menentukan tempoh (dalam saat) yang mana alamat IP dilarang. Nilai 3600 saat (1 jam) adalah titik permulaan yang sama.action = iptables-multiport
: Ini menentukan tindakan yang diambil apabila alamat IP dilarang. iptables-multiport
adalah tindakan biasa yang menggunakan iptables untuk mengharamkan alamat IP pada port yang ditentukan.Ya, Fail2ban dapat diintegrasikan dengan alat keselamatan lain untuk mewujudkan pertahanan yang lebih mantap terhadap serangan. Integrasi ini dapat meningkatkan ketepatan pengesanan dan masa tindak balas. Beberapa contoh termasuk:
Fail2ban umumnya sangat berkesan untuk mengurangkan serangan kekerasan terhadap Apache. Dengan cepat mengharamkan alamat IP yang berniat jahat, ia menghalang penyerang daripada meneruskan percubaan mereka dan melindungi pelayan anda daripada menjadi terharu. Walau bagaimanapun, penting untuk memahami batasannya:
filter
yang berhati -hati adalah penting untuk meminimumkan risiko ini.Kesimpulannya, walaupun bukan peluru perak, Fail2Ban adalah alat yang berharga untuk meningkatkan keselamatan Apache terhadap serangan kekerasan. Keberkesanannya bergantung kepada konfigurasi dan integrasi yang betul dengan langkah -langkah keselamatan lain untuk mewujudkan strategi keselamatan yang komprehensif.
Atas ialah kandungan terperinci Bagaimanakah saya menggunakan Fail2Ban untuk melindungi Apache terhadap serangan kekerasan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!