Berikut pertanyaan yang diajukan oleh Gokul, salah satu pembaca reguler di Techglimpse – hosts.allow not working pada CentOS 7. Instalasi minimal.
Pertanyaan:Saya baru saja menginstal versi minimal CentOS di VPS saya. Setelah menginstal, saya mencoba mengonfigurasi hosts.allow untuk mengizinkan koneksi TCP hanya dari alamat IP yang diketahui dan jangkauannya. Untuk melakukan itu, saya biasanya mengedit /etc/hosts.allow dan mengizinkan alamat IP seperti di bawah ini:
SEMUA:10.180.*.*, 106.*.*.*:izinkan
Tetapi untuk beberapa alasan, saya dapat melakukan SSH ke server dari alamat IP yang tidak tepercaya (yang tidak diizinkan di hosts.allow). Sepertinya hosts.allow tidak berfungsi pada instalasi minimal CentOS 7. Bagaimana cara mengatasi masalah ini? – Gokul
Perbaiki hosts.allow tidak berfungsi pada instalasi minimal CentOS 7
Umumnya, hosts.allow
akan berisi aturan untuk mengizinkan atau menolak koneksi ke layanan jaringan yang dikendalikan oleh tcp_wrappers
Perpustakaan. Jadi jika hosts.allow
Anda entri sudah benar dan jika masih tidak berfungsi, maka Anda perlu melihat apakah tcp_wrappers
library diinstal dalam instalasi OS minimal. Dalam kebanyakan kasus, instalasi minimal mungkin tidak disertai dengan tcp_wrapper
perpustakaan pra-instal. Jadi menginstal tcp_wrapper mungkin menyelesaikan masalah.
Instal pustaka tcp_wrapper:
Sebenarnya daemon yang bertuliskan hosts.allow
dan hosts.deny
adalah tcpd
. Jadi, Anda perlu memeriksa perpustakaan mana yang menyediakan tcpd
daemon seperti di bawah ini:
# yum provides tcpd
Contoh keluaran:
tcp_wrappers-7.6-77.el7.x86_64 : A security tool which acts as a wrapper for TCP : daemons Repo : base Matched from: Filename : /usr/sbin/tcpd
Keluaran sampel mengonfirmasi bahwa tcpd
biner disediakan oleh tcp_wrappers
Perpustakaan. Instal tcp_wrappers
perpustakaan menggunakan yum
.
# yum install tcpd ::::::::::::::::::::: Installed: tcp_wrappers.x86_64 0:7.6-77.el7
Setelah mengedit hosts.allow
dan hosts.deny
, jalankan daemon seperti di bawah ini:
# /usr/sbin/tcpd
Periksa apakah hosts.allow
dengan benar hanya mengizinkan host tepercaya untuk mengakses layanan jaringan.
Masih tidak bekerja? Dalam kebanyakan kasus, Anda harus selalu DENY ALL
di hosts.deny
sebelum mengizinkan di hosts.allow
Misalnya,
What has always worked for me is: /etc/hosts.deny = ALL: ALL: DENY /etc/hosts.allow = sshd: 10.168.1.21
Semoga membantu.