GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Instal Webmin di Server CentOS 8/RHEL 8

Webmin adalah panel kontrol sumber terbuka dan gratis untuk mengelola server Unix/Linux. Tutorial ini akan menunjukkan cara menginstal Webmin di server CentOS 8/RHEL 8.

Webmin memberi pengguna antarmuka pengguna berbasis web grafis untuk mengonfigurasi tugas dan pengaturan sistem umum. Jika Anda tidak menyukai gagasan menggunakan baris perintah untuk mengelola server Anda, maka Webmin adalah alternatif grafis yang bagus untuk Anda. Berikut adalah daftar fungsi yang disediakan oleh Webmin.

  • Resolver DNS BIND dan server DNS otoritatif
  • Server Samba
  • Server FTP
  • Server SMTP Postfix dan server IMAP/POP3 Dovecot.
  • cadangan sistem file
  • Konfigurasikan rotasi file log.
  • Edit repositori paket, jadwalkan pembaruan perangkat lunak otomatis, dan terima laporan pembaruan melalui email.
  • Kelola pengguna dan grup
  • Jadwalkan tugas Cron.
  • Konfigurasikan firewall iptables
  • Dan masih banyak lagi.

Instal Webmin di CentOS 8/RHEL 8 Dari Repositori Webmin

Webmin telah ada sejak 1997. Pada saat penulisan ini, versi stabil terbaru yang tersedia adalah 1.970, yang dirilis pada 6 Januari 2021. Webmin tidak ada dalam repositori perangkat lunak CentOS/RHEL. Disarankan untuk menginstal Webmin dari repositori resminya sehingga Anda selalu bisa mendapatkan versi terbaru.

Untuk menambahkan repositori Webmin, buat file repositori dengan editor teks baris perintah seperti Nano.

sudo dnf install nano

sudo nano /etc/yum.repos.d/webmin.repo

Tambahkan baris berikut dalam file.

[Webmin]
name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1

Simpan dan tutup file. Untuk menyimpan file di editor teks Nano, tekan CTRL+O , lalu tekan Enter untuk mengkonfirmasi. Untuk menutup file, tekan CTRL+X . Selanjutnya, kita perlu menjalankan perintah berikut untuk mengunduh dan mengimpor kunci penandatanganan PGP Webmin sehingga manajer paket dapat memverifikasi integritas paket yang diunduh dari repositori Webmin.

wget http://www.webmin.com/jcameron-key.asc

Kemudian impor dengan:

sudo rpm --import jcameron-key.asc

Sekarang kita dapat memperbarui repositori dan menginstal Webmin.

sudo dnf update -y

sudo dnf install webmin -y

Setelah diinstal, server web built-in Wemin akan secara otomatis mulai seperti yang dapat dilihat dengan menjalankan perintah systemctl di bawah ini:

systemctl status webmin

Keluaran:

Petunjuk :Jika perintah di atas tidak segera berhenti, Anda dapat menekan tombol Q kunci untuk mendapatkan kembali kendali terminal.

Jika tidak berjalan, Anda dapat memulainya dengan:

sudo systemctl start webmin

Jika Anda melihat “Unit webmin.service could not be found ”, maka Anda perlu me-restart server Anda.

sudo shutdown -r now

Server webmin mendengarkan pada port 10000, jadi Anda perlu membuka port TCP 10000 di firewall.

sudo firewall-cmd --permanent --add-port=10000/tcp

sudo systemctl reload firewalld

Sekarang Anda dapat mengakses panel kontrol berbasis web melalui

https://your-server-ip:10000

Karena berjalan dalam mode HTTPS dan menggunakan sertifikat TLS yang ditandatangani sendiri, maka Anda akan diberi tahu oleh browser bahwa koneksi tidak aman.

Tapi Anda tahu ini adalah server Anda sendiri, jadi cukup klik tombol Advanced tab di Firefox dan tambahkan pengecualian. Jika Anda menggunakan Google Chrome, Anda dapat mengeklik Advanced -> Proceed .

Sekarang Anda akan disajikan dengan layar login Webmin. Anda perlu menggunakan root akun untuk login.

Jika Anda tidak menyukai warna default pada menu navigasi, Anda dapat mengubahnya ke warna lain dengan mengklik theme configuration ikon di bagian bawah menu navigasi,

kemudian pilih opsi menu navigasi dan atur palet warna. Misalnya, saya memilih Midnight blue.

Simpan perubahannya.

Menyiapkan Proksi Terbalik

Jika Anda menginstal Webmin pada server produksi, Anda mungkin ingin mengatur proxy terbalik dengan Apache atau Nginx sehingga Anda dapat menggunakan nama domain untuk mengakses antarmuka Webmin tanpa menentukan nomor port (10000). Ini juga memungkinkan Anda untuk mendapatkan dan menginstal sertifikat Let's Encrypt TLS yang valid untuk Webmin.

Jika Anda tidak memiliki nama domain asli, saya sarankan pergi ke NameCheap untuk membelinya. Harganya rendah dan mereka memberikan perlindungan privasi whois gratis seumur hidup.

Apache

Jika Anda lebih suka menggunakan server web Apache, ikuti petunjuk di bawah ini untuk menyiapkan proxy terbalik.

Instal server web Apache.

sudo dnf install httpd

Kemudian buat file host virtual untuk Webmin.

sudo nano /etc/httpd/conf.d/webmin.conf

Tambahkan teks berikut ke dalam file. Ganti webmin.your-domain.com dengan nama domain Anda yang sebenarnya dan jangan lupa untuk membuat catatan DNS A untuk itu.

<VirtualHost *:80>
    ServerName webmin.your-domain.com

    ProxyPass / http://127.0.0.1:10000/
    ProxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>

Simpan dan tutup file. Muat ulang Apache agar perubahan diterapkan.

sudo systemctl reload httpd

Secara default, SELinux melarang Apache untuk membuat permintaan jaringan ke server lain, tetapi kemudian Apache perlu meneruskan permintaan HTTP ke 127.0.0.1:10000 , jadi kita perlu memberi tahu SELinux untuk mengizinkan Apache dengan perintah berikut.

sudo setsebool -P httpd_can_network_connect 1

Sekarang Anda dapat mengakses Webmin dari jarak jauh dengan memasukkan nama domain (webmin.your-domain.com ) di bilah alamat browser.

Nginx

Jika Anda lebih suka menggunakan server web Nginx, ikuti petunjuk di bawah ini untuk menyiapkan proxy terbalik.

Instal Nginx di CentOS/RHEL.

sudo dnf install nginx

Mulai server web Nginx.

sudo systemctl start nginx

Kemudian buat file blok server baru di /etc/nginx/conf.d/ direktori.

sudo nano /etc/nginx/conf.d/webmin.conf

Rekatkan teks berikut ke dalam file. Ganti webmin.your-domain.com dengan nama domain pilihan Anda dan jangan lupa untuk membuat catatan DNS A untuk itu.

server {
       listen 80;
       listen [::]:80;
       server_name webmin.your-domain.com;

       access_log /var/log/nginx/webmin.access;
       error_log /var/log/nginx/webmin.error;

       location / {
              proxy_pass http://127.0.0.1:10000;
              #proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
        }
}

Simpan dan tutup file. Kemudian uji konfigurasi Nginx.

sudo nginx -t

Jika tes berhasil, muat ulang Nginx.

sudo systemctl reload nginx

Secara default, SELinux melarang Nginx untuk membuat permintaan jaringan ke server lain, tetapi nanti Nginx perlu meneruskan permintaan HTTP ke 127.0.0.1:10000 , jadi kita perlu memberi tahu SELinux untuk mengizinkan Nginx dengan perintah berikut.

sudo setsebool -P httpd_can_network_connect 1

Sekarang Anda dapat mengakses antarmuka Web Webmin melalui webmin.your-domain.com .

Aktifkan HTTPS

Untuk mengenkripsi lalu lintas HTTP saat Anda mengunjungi antarmuka web Webmin, kami dapat mengaktifkan HTTPS dengan memasang sertifikat TLS gratis yang dikeluarkan dari Let's Encrypt. Jalankan perintah berikut untuk menginstal klien Let's Encrypt (certbot) di CentOS/RHEL.

sudo dnf install certbot

Jika Anda menggunakan Apache, maka Anda perlu menginstal plugin Certbot Apache.

sudo dnf install python3-certbot-apache

Selanjutnya, jalankan perintah berikut untuk mendapatkan dan menginstal sertifikat TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

Jika Anda menggunakan Nginx, maka Anda perlu menginstal plugin Certbot Nginx.

sudo dnf install python3-certbot-nginx

Selanjutnya, jalankan perintah berikut untuk mendapatkan dan menginstal sertifikat TLS.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

Dimana:

  • --apache :Gunakan plugin Apache.
  • --nginx :Gunakan plugin nginx.
  • --agree-tos :Menyetujui persyaratan layanan.
  • --redirect :Memaksa HTTPS dengan pengalihan 301.
  • --hsts :Tambahkan header Strict-Transport-Security ke setiap respons HTTP. Memaksa browser untuk selalu menggunakan TLS untuk domain. Mempertahankan dari SSL/TLS Stripping.
  • --staple-ocsp :Mengaktifkan Stapel OCSP. Respons OCSP yang valid ditempelkan ke sertifikat yang ditawarkan server selama TLS.

Sertifikat sekarang harus diperoleh dan diinstal secara otomatis. Dan Anda akan dapat mengakses antarmuka web Webmin melalui koneksi HTTPS yang aman.

Tambahkan Perujuk Tepercaya

Karena Webmin sendiri berjalan dalam mode HTTP dan kami mengaktifkan HTTPS di Apache/Nginx, Webmin akan berpikir bahwa https://webmin.your-domain.com berada di luar server Webmin. Jadi kita perlu menambahkan perujuk tepercaya.

Edit file konfigurasi Webmin.

sudo nano /etc/webmin/config

Tambahkan baris berikut di akhir.

referers=webmin.your-domain.com

Simpan dan tutup file. Kemudian restart Webmin.

sudo systemctl restart webmin

Nonaktifkan Mode HTTPS di Webmin

Sekarang koneksi TLS diakhiri di Apache/Nginx, kita perlu menonaktifkan mode HTTPS di server web bawaan Webmin. Edit file konfigurasi Webmin.

sudo nano /etc/webmin/miniserv.conf

Temukan baris berikut.

ssl=1

Ubah ke berikut untuk menonaktifkan mode HTTPS di Webmin.

ssl=0

Kami juga dapat menambahkan baris berikut di file ini sehingga server web bawaan hanya mengizinkan akses dari localhost. Pengunjung menggunakan http://public-ip:10000 skema akan dilarang.

allow=127.0.0.1

Simpan dan tutup file. Kemudian restart Webmin.

sudo systemctl restart webmin

Pemecahan Masalah

Jika Anda melihat kesalahan, Anda dapat memeriksa log kesalahan Webmin (/var/webmin/miniserv.error ) untuk memecahkan masalah.


Cent OS
  1. Cara Memasang Wayang Di CentOS 8 / RHEL 8

  2. Instal Webmin di CentOS 7 / RHEL 7

  3. Cara Install Puppet 6.x Di CentOS 7 / RHEL 7

  1. Cara menginstal server email postfix di RHEL 8 / CentOS 8

  2. Cara menginstal Wayang di RHEL 8/CentOS 8

  3. CentOS / RHEL 7:Cara Menginstal GUI

  1. Cara menginstal server vnc di RHEL 8 / CentOS 8

  2. Cara menginstal Nextcloud di server RHEL 8 / CentOS 8

  3. Cara menginstal OwnCloud di server RHEL 8 / CentOS 8