Pertanyaan: Saya mencoba mengatur server web Apache pada port lain selain port 80. Misalnya, pada port 81, tetapi daemon httpd menolak untuk memulai pada port 81 dan memunculkan pesan kesalahan sebagai "httpd sudah berjalan". Meskipun, saya memverifikasi bahwa port diubah dari 80 menjadi 81 di file httpd.conf, saya masih tidak bisa mendapatkan httpd untuk mendengarkan pada port 81. Setelah googling selama beberapa menit, saya mengerti bahwa SELINUX tidak mengizinkan layanan untuk mendengarkan pada pelabuhan yang berbeda. Selain itu, saya mendapatkan perintah di bawah ini yang menampilkan daftar port yang diterima di SELINUX untuk httpd.
semanage port -l|grep http
Inilah masalah saya – semanage, command not found error di mesin CentOS. Saya mencoba menginstal 'semanage' melalui yum, tetapi tidak dapat menemukan paket seperti itu. Bisakah Anda memberi tahu saya paket mana yang akan memiliki perintah semanage?
Solusi:
Berikut langkah-langkahnya.
Cara menemukan paket mana yang menyediakan perintah 'semanage' menggunakan yum
# yum provides /usr/sbin/semanage (or) # yum whatprovides /usr/sbin/semanage
Contoh keluaran:
policycoreutils-1.33.12-14.13.el5.x86_64 : SELinux policy core utilities. Repo : base Matched from: Filename : /usr/sbin/semanage policycoreutils-1.33.12-14.13.el5.x86_64 : SELinux policy core utilities. Repo : centos Matched from: Filename : /usr/sbin/semanage
Instal paket policycoreutils-python untuk perintah 'semanage'.
# yum -y install policycoreutils-python .............................. Installed: policycoreutils-1.33.12-14.13.el5.x86_64
Sekarang, Anda akan menemukan ‘semanage ' perintah.
# semanage port -l|grep http
Jika Anda perlu menambahkan port 81 ke daftar port yang diizinkan untuk http, maka di bawah ini adalah perintahnya.
# semanage port -a -t http_port_t -p tcp 81