Cara Menggunakan Fail2Ban untuk Mengamankan Pelayan Linux Anda
- 3029
- 137
- Chris Little I
Meningkatkan keselamatan pelayan anda harus menjadi salah satu keutamaan anda ketika mengurus pelayan Linux. Dengan mengkaji log pelayan anda, anda mungkin sering menemui percubaan yang berbeza untuk log masuk kekerasan, banjir web, mencari mencari dan banyak lagi.
Dengan perisian pencegahan pencerobohan seperti gagal2ban, Anda boleh memeriksa log pelayan anda dan menambah peraturan iptables tambahan untuk menyekat alamat IP yang bermasalah.
Baca juga: Cara Memasang Fail2Ban untuk Melindungi SSH di CentOS/RHEL 8
Tutorial ini akan menunjukkan kepada anda cara memasang gagal2ban dan persediaan konfigurasi asas untuk melindungi sistem Linux anda dari serangan kekerasan.
Keperluan
Fail2ban ditulis dalam python dan satu -satunya keperluan adalah untuk memasang Python:
- Fail2Ban Cawangan 0.9.x memerlukan python> = 2.6 atau python> = 3.2
- Fail2Ban Cawangan 0.8.x memerlukan python> = 2.4
- Akses root ke sistem anda
- Secara pilihan, iptables atau showewall dan sendmail
Cara Memasang Fail2Ban dalam Sistem Linux
Pemasangan gagal2ban agak mudah:
Pasang Fail2Ban pada CentOS/RHEL
Pertama, kemas kini pakej anda, aktifkan Epel repositori dan pasang gagal2ban seperti yang ditunjukkan.
# yum kemas kini # yum pasang epel-release # yum install fail2ban
Pasang Fail2Ban di Debian/Ubuntu
Pertama, kemas kini pakej dan pasang anda gagal2ban seperti yang ditunjukkan.
# apt-get update &&p-get upgrade -y # apt-get install fail2ban
Secara pilihan, jika anda ingin mengaktifkan sokongan mel (untuk pemberitahuan mel), anda boleh memasang Sendmail.
# yum pasang sendmail [pada Centos/RHEL] # apt-get pasang sendmail sendmail [on Debian/Ubuntu]
Bagi membolehkan gagal2ban dan hantar surat Gunakan arahan berikut:
# Systemctl Mula Fail2Ban # Systemctl Dayakan Fail2Ban # Systemctl Mula Sendmail # Systemctl Dayakan Sendmail
Cara Mengkonfigurasi Fail2Ban dalam Sistem Linux
Secara lalai, gagal2ban menggunakan .Conf
fail yang terletak di /etc/fail2ban/ yang dibaca dahulu. Walau bagaimanapun, mereka boleh ditindih oleh .tempatan
fail yang terletak di direktori yang sama.
Oleh itu, .tempatan
fail tidak perlu memasukkan semua tetapan dari .Conf
fail, tetapi hanya yang anda mahu menimpa. Perubahan harus dibuat di .tempatan
fail, bukan di .Conf
. Ini akan menghalang perubahan menimpa semasa menaik taraf paket Fail2Ban.
Untuk tujuan tutorial ini, kami akan menyalin yang ada gagal2ban.Conf fail ke gagal2ban.tempatan.
# cp/etc/fail2ban/fail2ban.conf/etc/fail2ban/fail2ban.tempatan
Sekarang anda boleh membuat perubahan dalam .tempatan
fail dengan menggunakan editor teks kegemaran anda. Nilai yang boleh anda edit adalah:
- Loglevel - ini adalah tahap perincian yang akan dilog masuk. Pilihan yang mungkin adalah:
- Kritikal
- Ralat
- Amaran
- NOTIS
- Maklumat
- Debug
- logtarget - Log tindakan dalam fail tertentu. Nilai lalai adalah /var/log/fail2ban.log. Anda boleh, bagaimanapun, mengubahnya ke:
- Stdout - output sebarang data
- Stderr - mengeluarkan sebarang kesilapan
- SYSLOG - Pembalakan berasaskan mesej
- Fail - output ke fail
- soket - direktori di mana fail soket akan diletakkan.
- pidfile - Lokasi pidfile.
Konfigurasikan Fail2Ban Jail.tempatan
Salah satu fail terpenting dalam fail2ban adalah penjara.Conf
yang mentakrifkan penjara anda. Di sinilah anda menentukan perkhidmatan yang fail2ban harus diaktifkan.
Seperti yang telah disebutkan sebelumnya .Conf
fail boleh diubah semasa peningkatan, oleh itu anda harus membuat a penjara.tempatan fail di mana anda boleh menggunakan pengubahsuaian anda.
Cara lain untuk melakukan ini adalah dengan hanya menyalin .Conf fail dengan:
# cp/etc/fail2ban/penjara.conf/etc/fail2ban/penjara.tempatan
Sekiranya anda menggunakan Centos atau Fedora, anda perlu menukar backend dalam penjara.tempatan dari "Auto" ke "Systemd".
Dayakan backend di fail2banSekiranya anda menggunakan Ubuntu/Debian, tidak perlu membuat pengubahsuaian ini, walaupun mereka juga menggunakan sistemd.
Fail penjara akan membolehkan SSH secara lalai untuk Debian dan Ubuntu, Tetapi tidak Centos. Sekiranya anda ingin mengaktifkannya, hanya ubah baris berikut /etc/fail2ban/penjara.tempatan:
[sshd] didayakan = benar
Melarang dan mencuba masa
Anda boleh mengkonfigurasi keadaan selepas alamat IP disekat. Untuk tujuan itu, gagal2ban penggunaan Banttime, findtime dan maxretry.
- Banttime - Ini adalah bilangan detik yang alamat IP akan terus dilarang (lalai 10 min).
- findtime - Jumlah masa antara percubaan log masuk, sebelum tuan rumah dilarang. (lalai 10 min). Dengan kata lain, jika fail2ban ditetapkan untuk menyekat alamat IP selepas 3 percubaan masuk yang gagal, mereka 3 percubaan, mesti dilakukan dalam tempoh penemuan (10 min).
- maxretry - Bilangan percubaan dibuat sebelum larangan digunakan. (lalai 3).
Alamat IP Whitelist
Sudah tentu, anda akan mahu memaparkan senarai alamat IP tertentu. Untuk mengkonfigurasi alamat IP tersebut terbuka /etc/fail2ban/penjara.tempatan dengan editor teks kegemaran anda dan uncomment baris berikut:
AbaikanP = 127.0.0.1/8 :: 1
Kemudian, anda boleh meletakkan alamat IP yang anda mahu diabaikan. Alamat IP harus dipisahkan dari ruang atau koma.
Makluman e -mel
Sekiranya anda ingin menerima makluman mel atas acara tersebut, anda perlu mengkonfigurasi tetapan berikut /etc/fail2ban/penjara.tempatan:
- Desemail - alamat mel, di mana anda akan menerima pemberitahuan.
- Nama pengirim - Pengirim yang akan anda lihat ketika menerima mesej.
- pengirim - Alamat e -mel dari mana Fail2ban akan menghantar e -mel.
Lalai MTA (ejen pemindahan mel) ditetapkan ke hantar surat.
Untuk menerima pemberitahuan mel, anda juga perlu menukar "tindakan" menetapkan dari:
Tindakan = %(action_) s
Kepada salah satu daripada ini:
tindakan = %(action_mw) s tindakan = %(action_mwl) s
- %(action_mw) s - akan mengharamkan tuan rumah dan menghantar surat dengan laporan WHOIS.
- %(action_mwl) s - akan mengharamkan tuan rumah, memberikan maklumat WHOIS dan semua maklumat yang relevan dari fail log.
Konfigurasi Penjara Fail2Ban tambahan
Setakat ini kami telah melihat pilihan konfigurasi asas. Sekiranya anda ingin mengkonfigurasi penjara, anda perlu membolehkannya di penjara.tempatan fail. Sintaks cukup mudah:
[Jail_TO_ENABLE] ... enabled = true
Di mana anda harus menggantikan Penjara_TO_ENABLE Dengan penjara sebenar, sebagai contoh, "SSHD". Di dalam penjara.tempatan Fail, nilai berikut akan dipratentukan untuk perkhidmatan SSH:
[sshd] port = ssh logpath = %(sshd_log) s
Anda boleh mengaktifkan penapis yang akan membantu mengenal pasti jika garis dalam log adalah yang gagal. Nilai penapis sebenarnya adalah rujukan kepada fail dengan nama perkhidmatan yang diikuti oleh .Conf. Sebagai contoh: /etc/fail2ban/penapis.D/SSHD.Conf.
Sintaks adalah:
penapis = perkhidmatan
Sebagai contoh:
penapis = sshd
Anda boleh menyemak penapis sedia ada dalam direktori berikut: /etc/fail2ban/penapis.d/.
Gunakan Fail2Ban-Client
Fail2ban dilengkapi dengan pelanggan yang boleh digunakan untuk mengkaji dan mengubah konfigurasi semasa. Oleh kerana ia menyediakan banyak pilihan, anda boleh melalui manualnya dengan:
# Man Fail2Ban-Client
Di sini anda akan melihat beberapa arahan asas yang boleh anda gunakan. Untuk mengkaji status semasa gagal2ban Atau untuk penjara tertentu, anda boleh menggunakan:
# Fail2Ban-Client Status
Hasilnya akan kelihatan serupa dengan ini:
Semak status Fail2BanUntuk penjara individu, anda boleh berlari:
# fail2ban-klien status sshd
Dalam tangkapan skrin di bawah, anda akan melihat bahawa saya sengaja gagal banyak log masuk supaya Fail2Ban dapat menyekat alamat IP yang saya cuba sambungkan:
Periksa status SSH Fail2BanKesimpulan
Gagal2ban adalah sistem pencegahan pencerobohan yang sangat baik dan didokumentasikan dengan baik, yang memberikan keselamatan tambahan kepada sistem Linux anda. Ia memerlukan sedikit masa untuk membiasakan diri dengan persediaan dan sintaksnya, tetapi apabila anda membiasakan diri dengannya, anda akan berasa bebas untuk mengubah dan melanjutkan peraturannya.
- « Cara Memasang dan Konfigurasi Nod Kawalan Ansible - Bahagian 2
- Cara Memasang Apache ActiveMq pada Debian 10 »