Pengaturan Server Awal dengan CentOS/RHEL 8


Dalam artikel ini, kami akan memandu Anda melalui langkah-langkah dasar pertama yang perlu Anda terapkan setelah menginstal server CentOS/RHEL 8 minimal tanpa lingkungan grafis untuk mengambil informasi tentang sistem yang diinstal, perangkat keras yang menjalankan server dan mengonfigurasi tugas sistem spesifik lainnya, seperti pembaruan sistem, jaringan, hak akses root, konfigurasi ssh, mengelola layanan, dan lain-lain.

Persyaratan

  1. Panduan Instalasi CentOS 8
  2. Instalasi Minimal RHEL 8
  3. Aktifkan Langganan RHEL di RHEL 8

Penting: Anda harus mengaktifkan Layanan Berlangganan Red Hat di server RHEL 8 Anda untuk melakukan pembaruan sistem dan instalasi perangkat lunak.

Langkah 1: Perbarui Perangkat Lunak Sistem

Pertama, masuk ke server Anda sebagai pengguna root dan jalankan perintah berikut untuk memperbarui sistem sepenuhnya dengan kernel terbaru, patch keamanan sistem, repositori perangkat lunak, dan paket.

dnf check-update
dnf update

Setelah proses pemutakhiran perangkat lunak selesai, untuk mengosongkan ruang disk, Anda dapat menghapus semua paket perangkat lunak yang diunduh beserta semua informasi repositori cache dengan menjalankan perintah berikut.

dnf clean all

Langkah 2: Instal Utilitas Sistem

Utilitas sistem berikut ini bisa sangat berguna untuk tugas administrasi sistem sehari-hari: nano, vim editor, wget & curl (kebanyakan utilitas digunakan untuk mengunduh paket melalui jaringan) net-tools (utilitas untuk mengelola jaringan lokal) lsof (berguna untuk menemukan daftar file yang terbuka berdasarkan proses) dan penyelesaian bash (pelengkapan otomatis baris perintah).

dnf install nano vim wget curl net-tools lsof bash-completion

Langkah 3: Atur Nama Host dan Jaringan

Di CentOS/RHEL 8, terdapat berbagai alat yang disertakan dalam repositori yang digunakan untuk mengonfigurasi dan mengelola jaringan, mulai dari mengubah file konfigurasi jaringan secara manual hingga menggunakan perintah seperti ifconfig, ip, nmcli dan nmtui.

Utilitas termudah yang dapat digunakan pemula untuk mengonfigurasi dan mengelola konfigurasi jaringan seperti menyetel nama host jaringan dan mengonfigurasi alamat IP statis adalah menggunakan utilitas baris perintah grafis nmtui.

Tetapkan Nama Host di CentOS 8

Untuk mengatur atau mengubah nama host sistem, jalankan perintah nmtui-hostname berikut, yang akan meminta Anda memasukkan nama host mesin Anda dan tekan OK untuk menyelesaikan, seperti yang diilustrasikan pada gambar di bawah.

nmtui-hostname

Tetapkan Alamat IP Statis di CentOS 8

Untuk mengonfigurasi antarmuka jaringan, jalankan perintah nmtui-edit berikut, yang akan meminta Anda memilih antarmuka yang ingin Anda konfigurasi dari menu seperti yang ditunjukkan pada gambar di bawah.

nmtui-edit

Setelah Anda mengeklik tombol Edit, Anda akan diminta untuk menyiapkan setelan IP antarmuka jaringan seperti yang diilustrasikan pada gambar di bawah. Setelah selesai, navigasikan ke OK menggunakan kunci [tab] untuk menyimpan konfigurasi dan keluar.

Setelah Anda selesai dengan konfigurasi jaringan, Anda perlu menjalankan perintah berikut untuk menerapkan pengaturan jaringan baru dengan memilih antarmuka yang ingin Anda kelola dan tekan opsi Nonaktifkan/Aktifkan untuk menonaktifkan dan memunculkan antarmuka dengan pengaturan IP, seperti yang ditunjukkan pada gambar di bawah.

nmtui-connect

Untuk memverifikasi pengaturan konfigurasi jaringan, Anda dapat memeriksa konten file antarmuka atau Anda dapat mengeluarkan perintah di bawah ini.

ifconfig enp0s3
ip a
ping -c2 google.com

Anda juga dapat menggunakan utilitas jaringan berguna lainnya seperti ethtool dan mii-tool untuk memeriksa kecepatan antarmuka jaringan, status tautan jaringan, dan memperoleh informasi tentang antarmuka jaringan mesin.

ethtool enp0s3
mii-tool enp0s3

Aspek penting dari jaringan mesin Anda, penting untuk membuat daftar semua soket jaringan yang terbuka untuk memeriksa layanan apa yang mendengarkan pada port apa dan apa status koneksi jaringan yang dibuat dan mencantumkan semua file yang dibuka oleh proses.

netstat -tulpn
ss -tulpn
lsof -i4 -6

Langkah 4: Buat Akun Pengguna Baru

Selalu disarankan untuk memiliki pengguna normal dengan izin root untuk melakukan tugas administratif bila diperlukan. Untuk menetapkan hak akses root pada pengguna normal, pertama-tama, buat pengguna dengan perintah useradd, atur kata sandi dan tambahkan pengguna ke grup roda administratif.

useradd ravisaive
passwd ravisaive
usermod -aG wheel ravisaive

Untuk memverifikasi bahwa pengguna baru memiliki hak akses root, masuk ke sistem dengan kredensial pengguna dan jalankan perintah dnf dengan izin Sudo seperti yang ditunjukkan.

su - ravisaive
sudo dnf update

Langkah 5: Atur Login Tanpa Kata Sandi SSH di CentOS 8

Untuk meningkatkan keamanan server Anda, siapkan autentikasi tanpa kata sandi SSH untuk pengguna baru Anda dengan membuat sepasang Kunci SSH – yang berisi publik dan kunci pribadi, tetapi Anda perlu membuatnya. Ini akan meningkatkan keamanan server Anda dengan memerlukan kunci SSH pribadi untuk terhubung ke sistem.

su - ravisaive
ssh-keygen -t RSA

Setelah kunci dibuat, Anda akan diminta memasukkan frasa sandi untuk mengamankan kunci pribadi. Anda dapat memasukkan frasa sandi yang kuat atau memilih untuk membiarkan frasa sandi kosong jika Anda ingin mengotomatiskan tugas administratif melalui server SSH.

Setelah kunci SSH dibuat, Anda perlu menyalin pasangan kunci publik yang dihasilkan ke server jarak jauh dengan menjalankan perintah ssh-copy-id dengan nama pengguna dan alamat IP server jarak jauh seperti yang ditunjukkan.

ssh-copy-id [email 

Setelah kunci SSH disalin, Anda sekarang dapat mencoba masuk ke server Linux jarak jauh menggunakan kunci pribadi sebagai metode otentikasi. Anda seharusnya bisa login secara otomatis tanpa server SSH meminta kata sandi.

[email 

Langkah 6: Mengamankan Login Jarak Jauh SSH

Di sini, kami akan lebih mengamankan server kami dengan menonaktifkan akses SSH jarak jauh ke akun root di file konfigurasi SSH.

vi /etc/ssh/sshd_config

Temukan baris yang bertuliskan #PermitRootLogin yes, batalkan komentar pada baris tersebut dengan menghapus # dari awal baris dan ubah baris menjadi.

PermitRootLogin no

Setelah itu, restart server SSH untuk menerapkan perubahan terbaru.

systemctl restart sshd

Sekarang verifikasi konfigurasi dengan mencoba masuk sebagai akun root, Anda akan mendapatkan kesalahan Akses SSH Izin Ditolak seperti yang ditunjukkan.

ssh [email 

Ada beberapa skenario di mana Anda mungkin ingin memutuskan sambungan semua koneksi SSH jarak jauh secara otomatis ke server Anda setelah jangka waktu tertentu tidak aktif.

Langkah 7: Konfigurasikan Firewall di CentOS 8

Di CentOS/RHEL 8, firewall defaultnya adalah Firewalld, yang digunakan untuk mengelola aturan iptables di server. Untuk mengaktifkan dan memulai layanan firewalld di server, jalankan perintah berikut.

systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld

Untuk membuka koneksi masuk ke layanan tertentu (SSH), pertama-tama, Anda perlu memverifikasi bahwa layanan tersebut ada dalam aturan firewalld dan, kemudian, menambahkan aturan untuk layanan dengan menambahkan saklar --permanent ke perintah seperti yang ditunjukkan.

firewall-cmd --add-service=[tab]  #List services
firewall-cmd --add-service=ssh
firewall-cmd --add-service=ssh --permanent

Jika Anda ingin membuka koneksi masuk ke layanan jaringan lain seperti HTTP atau SMTP, cukup tambahkan aturan seperti yang ditunjukkan dengan menentukan nama layanan.

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=smtp

Untuk melihat semua aturan firewall di server, jalankan perintah berikut.

firewall-cmd --permanent --list-all

Langkah 8: Hapus Layanan yang Tidak Diinginkan di CentOS 8

Sangat disarankan setelah menginstal server CentOS/RHEL 8 yang baru, Anda perlu menghapus dan menonaktifkan layanan yang tidak diinginkan yang berjalan secara default di server untuk mengurangi serangan pada server.

Untuk membuat daftar semua layanan jaringan yang berjalan termasuk TCP dan UDP di server, jalankan perintah ss atau perintah netstat seperti yang diilustrasikan dalam contoh di bawah.

ss -tulpn
OR
netstat -tulpn

Perintah di atas akan mencantumkan beberapa layanan menarik yang berjalan secara default di server, seperti server email Postfix. Jika Anda tidak berencana untuk menghosting sistem email di server, Anda harus berhenti dan menghapusnya dari sistem seperti yang ditunjukkan.

systemctl stop postfix
systemctl disable postfix
dnf remove postfix

Selain perintah ss dan perintah netstat, Anda juga dapat menjalankan perintah ps, top atau pstree untuk menemukan dan mengidentifikasi semua layanan yang tidak diinginkan dan menghapusnya dari sistem.

dnf install psmisc
pstree -p

Langkah 9: Kelola Layanan di CentOS 8

Di CentOS/RHEL 8, semua layanan dan daemon dikelola melalui perintah systemctl, dan Anda dapat menggunakan perintah ini untuk mencantumkan semua layanan yang aktif, berjalan, keluar, atau gagal.

systemctl list-units

Untuk memeriksa apakah daemon atau layanan diaktifkan secara otomatis saat sistem dimulai, jalankan perintah berikut.

systemctl list-unit-files -t service

Untuk mempelajari lebih lanjut tentang perintah systemctl, baca artikel kami yang menjelaskan – Cara Mengelola Layanan Menggunakan 'Systemctl' di Linux.

Itu saja! Dalam artikel ini, kami telah menjelaskan beberapa pengaturan dan perintah dasar yang perlu diketahui dan diterapkan oleh setiap administrator sistem Linux pada sistem CentOS/RHEL 8 yang baru diinstal atau untuk melakukan tugas sehari-hari pada sistem. .