Webmin adalah panel kontrol web modern untuk OS Linux apa pun termasuk Ubuntu yang akan saya gunakan untuk contoh tutorial ini. Webmin memungkinkan kamu untuk mengelola server kamu melalui antarmuka yang sederhana. Dengan Webmin, kamu dapat mengubah pengaturan untuk paket umum dengan cepat.
Dalam tutorial ini, kamu akan menginstal dan mengonfigurasi Webmin di server kamu dan mengamankan akses ke antarmuka dengan sertifikat yang valid menggunakan Let's Encrypt . Kamu kemudian akan menggunakan Webmin untuk menambahkan akun pengguna baru, dan memperbarui semua paket di server kamu hanya dari dasbor.
Persyaratan Sebelum Instal Webmin
Sebelum kamu menginstal webmin di distro linux kamu, harap memperhatikan prasarat berikut :
- Mempunyai satu server Ubuntu 20.04 dengan mengikuti panduan penyiapan server awal Ubuntu 20.04 , termasuk pengguna non-root Sudo dan firewall.
- Menginstal Linux Apache, MySQL, PHP (LAMP) stack di Ubuntu 20.04 . Kita akan menggunakan Apache untuk melakukan verifikasi domain Let's Encrypt.
- Fully-Qualified Domain Name (FQDN), dengan record DNS A yang menunjuk ke alamat IP server kamu.
Langkah 1 : Menginstal Webmin
Pertama, kita perlu menambahkan repositori Webmin sehingga kita dapat dengan mudah menginstal dan memperbarui Webmin menggunakan manajer paket kita. Caranya dengan menambahkan repositori ke file /etc/apt/sources.list.
Buka file menggunakan editor nano :
$ sudo nano /etc/apt/sources.list
Kemudian tambahkan baris ini ke bagian bawah file untuk menambahkan repositori baru:
deb http://download.webmin.com/download/repository sarge contrib
Simpan file dan keluar dari editor.
Selanjutnya, tambahkan Webmin PGP key sehingga sistem Anda akan mempercayai repositori baru:
$ wget http://www.webmin.com/jcameron-key.asc
$ sudo apt-key add jcameron-key.asc
Selanjutnya, perbarui daftar paket untuk menyertakan repositori Webmin:
$ sudo apt-get update
Kemudian instal Webmin:
$ sudo apt-get install webmin
Setelah instalasi selesai, Anda akan disajikan dengan output berikut:
Webmin install complete. You can now login to
https://your_server_ip:10000 as root with your
root password, or as any user who can use `sudo`.
Catatan: Jika Anda menginstal firewall ufw selama langkah prasyarat, Anda harus menjalankan perintah sudo ufw allow 10000 untuk mengizinkan Webmin melalui firewall. Untuk keamanan ekstra, Anda mungkin ingin mengonfigurasi firewall agar hanya mengizinkan akses ke port ini dari rentang IP tertentu.
Langkah 2 : Menambahkan Sertifikat yang Valid dengan Let's Encrypt
Webmin sudah dikonfigurasi untuk menggunakan HTTPS, tetapi menggunakan sertifikat yang ditandatangani sendiri dan tidak tepercaya. Mari kita ganti dengan sertifikat yang valid dari Let's Encrypt.
Buka menggunakan web browser https://your_domain:10000, ganti dengan nama domain yang kamu tunjuk di server kamu.
Catatan: Saat masuk untuk pertama kalinya, kamu akan melihat kesalahan "SSL tidak valid". Ini karena server telah membuat sertifikat yang ditandatangani sendiri. Biarkan pengecualian berlanjut sehingga kamu dapat mengganti sertifikat yang ditandatangani sendiri dengan sertifikat dari Let's Encrypt.
Kamu akan disajikan dengan layar login. Masuk dengan pengguna non-root yang kamu buat saat memenuhi prasyarat untuk tutorial ini.
Setelah kamu masuk, layar pertama yang akan kamu lihat adalah dashboard Webmin. Sebelum kamu dapat menerapkan sertifikat yang valid, kamu harus mengatur nama host server. Cari field System hostname dan klik link di sebelah kanan, seperti terlihat pada gambar berikut:
Anda akan dibawa ke halaman Hostname dan DNS Client . Cari kolom Hostname , dan masukkan Fully-Qualified Domain Name Anda ke dalam kolom tersebut. Kemudian tekan tombol Simpan di bagian bawah halaman untuk menerapkan pengaturan.
Setelah Anda mengatur nama host, klik Webmin di bilah navigasi kiri, lalu klik Webmin Configuration .
Kemudian, pilih SSL Encryption dari daftar ikon, lalu pilih tab Let's Encrypt . Anda akan melihat layar seperti gambar berikut:
Dengan menggunakan layar ini, Anda akan memberi tahu Webmin cara mendapatkan dan memperbarui sertifikat Anda. Sertifikat Let's Encrypt kedaluwarsa setelah 3 bulan, tetapi kita dapat menginstruksikan Webmin untuk secara otomatis mencoba memperbarui sertifikat Let's Encrypt setiap bulan.
Let's Encrypt mencari file verifikasi di server kita, jadi kita akan mengonfigurasi Webmin untuk menempatkan file verifikasi di dalam folder /var/www/html, yang merupakan folder yang digunakan oleh server web Apache yang Anda konfigurasikan di prasyarat. Ikuti langkah-langkah ini untuk menyiapkan sertifikat Anda:
- Isi Hostname for certificate dengan FQDN Anda.
- Untuk Website root directory for validation file , pilih Other directory dan masukan /var/www/html.
- Untuk Months between automatic renewal , pilih Only renew manually dan masukkan angka 1.
- Klik tombol Request Certificate . Setelah beberapa detik, Anda akan melihat layar konfirmasi.
Untuk menggunakan sertifikat baru, restart Webmin dengan mengklik tombol refresh di browser Anda, dan mengklik tombol Restart Webmin . Tunggu sekitar 30 detik, lalu muat ulang halaman dan masuk lagi. Browser Anda sekarang seharusnya menunjukkan bahwa sertifikat tersebut valid.
Langkah 3 : Memperbarui Paket
Webmin memungkinkan Anda memperbarui semua paket Anda melalui antarmuka penggunanya. Untuk memperbarui semua paket Anda, pertama, buka tautan Dasbor , lalu temukan bidang Package updates . Jika ada pembaruan yang tersedia, Anda akan melihat tautan yang menyatakan jumlah pembaruan yang tersedia, seperti yang ditunjukkan pada gambar berikut:
Klik tautan ini, lalu tekan Update selected packages untuk memulai pembaruan. Anda mungkin diminta untuk me-reboot server, yang juga dapat Anda lakukan melalui antarmuka Webmin.
Kesimpulan
Anda sekarang memiliki instance Webmin yang aman dan berfungsi dan Anda telah menggunakan antarmuka untuk membuat pengguna dan memperbarui paket. Webmin memberi Anda akses ke banyak hal yang biasanya perlu Anda akses melalui konsol, dan mengaturnya dengan cara yang intuitif. Misalnya, jika Anda menginstal Apache, Anda akan menemukan tab konfigurasi di bawah Servers , lalu Apache .