GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengamankan Rocky Linux 8

Keamanan adalah pertimbangan penting untuk setiap server yang Anda luncurkan ke lingkungan produksi. Versi terbaru dari Rocky Linux 8 hadir dengan fitur keamanan yang tangguh. Namun, tidak semuanya aktif atau dikonfigurasi dengan benar secara default, sehingga penginstalan baru selalu rentan terhadap peretasan dan serangan penyusupan.

Dalam panduan ini, kita akan melihat beberapa tugas penting yang harus dilakukan di server untuk penyiapan awal dan hardening server dasar.

Prasyarat

  • Server Rocky Linux 8 baru di Atlantic.Net Cloud Platform
  • Kata sandi root yang dikonfigurasi di server Anda

Langkah 1 – Perbarui Server Anda

Sebelum memulai, masuk ke server Rocky Linux 8 Anda melalui SSH atau Konsol VNC yang terletak di sini:https://cloud.atlantic.net/

Setelah login, Anda perlu menginstal patch keamanan terbaru dan pembaruan ke server Anda. Jalankan perintah berikut untuk memperbaruinya.

dnf update -y

Server Atlantic.Net diatur sebagai instalasi minimal untuk menghindari paket yang tidak perlu diinstal dan dibiarkan tidak digunakan. Anda dapat menginstal beberapa paket perangkat lunak dasar dengan menjalankan perintah berikut:

dnf install wget git curl bind-utils tree net-tools -y

Langkah 2 – Ubah Kata Sandi Root Default

Saat Anda meluncurkan server baru, server Anda secara otomatis disetel dengan kata sandi yang aman. Namun, disarankan untuk mengubah kata sandi root Anda setiap 60-90 hari setelahnya untuk memastikannya tetap aman. Anda harus membuat kata sandi root dengan minimal 8 karakter, termasuk karakter huruf kecil, karakter huruf besar, dan angka.

Anda dapat mengubah kata sandi root menggunakan perintah berikut:

passwd root

Langkah 3 – Buat Pengguna Baru dengan Hak Istimewa Sudo

Pertama, buat pengguna baru dengan perintah berikut:

adduser user1

Selanjutnya, atur kata sandi user1 menggunakan perintah berikut:

passwd user1

Setelah membuat pengguna baru, Anda perlu menambahkan pengguna ini ke grup roda sudo. Di Rocky Linux 8, setelah Anda menambahkannya ke grup roda sudo, mereka secara otomatis diberi izin sudo/root.

Jalankan perintah berikut untuk menambahkan pengguna ke grup roda sudo.

usermod -aG wheel user1

Setelah Anda membuat pengguna dengan izin sudo/root, masuk ke user1 dengan perintah berikut:

su - user1

Setelah Anda masuk, jalankan perintah berikut menggunakan sudo:

sudo dnf update -y

Anda akan diminta untuk memberikan kata sandi pengguna1 untuk memperbarui sistem Anda.

Ini akan mengonfirmasi bahwa pengguna sudo Anda berfungsi seperti yang diharapkan.

Langkah 4 – Nonaktifkan Login Root Melalui SSH

Kami telah membuat pengguna admin dengan izin sudo/root untuk melakukan semua tugas. Anda tidak perlu membuat pengguna root tetap tersedia dan rentan terhadap SSH di server Anda, jadi Anda harus menonaktifkan login root melalui SSH.

Edit file konfigurasi utama SSH dengan perintah berikut:

sudo nano /etc/ssh/sshd_config

Temukan baris berikut:

PermitRootLogin yes

Ubah ke baris berikut:

PermitRootLogin no

Simpan dan tutup file, lalu mulai ulang layanan SSH untuk menerapkan perubahan:

systemctl restart sshd

Langkah 5 – Ubah Port Default SSH

Untuk mengubah port SSH, edit file konfigurasi utama SSH:

sudo nano /etc/ssh/sshd_config

Temukan baris berikut:

#Port 22

Ubah ke baris berikut:

Port 2020

Simpan dan tutup file, lalu mulai ulang layanan SSH untuk menerapkan perubahan:

systemctl restart sshd

Anda sekarang dapat masuk ke server Atlantik Anda dari jarak jauh melalui SSH menggunakan perintah berikut:

ssh [email protected] -p 2020

Langkah 6 – Konfigurasi Firewall

firewall-cmd --state

Anda akan melihat bahwa firewall tidak berjalan:

not running

Disarankan untuk mengaktifkan firewall dan mengizinkan port yang diperlukan untuk akses eksternal.

Pertama, aktifkan layanan firewalld dengan perintah berikut:

systemctl start firewalld
systemctl enable firewalld

Selanjutnya, izinkan port SSH 2020 melalui firewall dengan perintah berikut:

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

Selanjutnya, muat ulang layanan firewalld untuk menerapkan perubahan:

sudo firewall-cmd --reload

Anda sekarang dapat memverifikasi port yang ditambahkan dengan perintah berikut:

sudo firewall-cmd --list-ports

Anda akan melihat output berikut:

2020/tcp

Jika Anda memiliki server web yang terinstal dan berjalan di server Anda, Anda mungkin perlu mengizinkan layanan HTTP dan HTTPS melalui firewall untuk mengaksesnya melalui Internet.

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

Untuk mengizinkan layanan POP3, IMAP, dan SMTP untuk akses eksternal, jalankan perintah berikut:

sudo firewall-cmd --permanent --add-service=pop3s
sudo firewall-cmd --permanent --add-service=imaps
sudo firewall-cmd --permanent --add-service=smtp

Langkah 7 – Instal NTP untuk Sinkronisasi Waktu

Disarankan juga untuk memasang server NTP untuk menyinkronkan waktu dan tanggal komputer melalui jaringan agar tetap akurat dan mutakhir.

Pertama, instal server NTP menggunakan perintah berikut:

sudo dnf install chrony -y

Setelah layanan NTP terinstal, mulai dan aktifkan untuk memulai saat reboot sistem:

sudo systemctl start chronyd
sudo systemctl enable chronyd

Sekarang, server NTP Anda telah terinstal dan akan terus memperbarui waktu server dari server NTP.

Langkah 8 – Nonaktifkan IPv6

Jika Anda tidak menggunakan IPv6, disarankan untuk menonaktifkannya demi alasan keamanan.

Pertama, periksa apakah IPv6 diaktifkan pada instalasi Rocky Linux 8 Anda menggunakan perintah berikut:

ip a | grep inet6

Anda akan melihat baris berikut jika IPv6 diaktifkan:

    inet6 ::1/128 scope host 
    inet6 fe80::200:d8ff:fe62:817/64 scope link 
    inet6 fe80::200:aff:fe62:817/64 scope link

Anda perlu membuat file konfigurasi baru untuk menonaktifkan IPv6:

sudo nano /etc/sysctl.d/70-ipv6.conf

Tambahkan baris berikut:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Simpan dan tutup file, lalu muat ulang file konfigurasi dengan perintah berikut:

sudo sysctl --load /etc/sysctl.d/70-ipv6.conf

Anda akan melihat output berikut:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Untuk memverifikasi IPv6 dinonaktifkan, jalankan perintah berikut:

ip a | grep inet6

Jika perintah tidak mengembalikan apa pun, Anda telah mengonfirmasi bahwa IPv6 telah dinonaktifkan di semua antarmuka jaringan Anda.

Langkah 9 – Buat Ruang Tukar

Swap adalah ruang pada disk yang digunakan ketika jumlah memori RAM fisik penuh. Saat server Anda kehabisan RAM, semua halaman yang tidak aktif dipindahkan dari RAM ke ruang swap.

Saat Anda meluncurkan instance baru di Atlantic.Net, itu tidak membuat partisi swap. Anda perlu membuat ruang swap secara manual setelah meluncurkan instance baru.

Umumnya, ruang swap harus setengah dari RAM Anda yang ada. Jika Anda memiliki Ram sebesar 1GB, maka Anda perlu membuat file 512MB.

Pertama, buat ruang swap (sebesar 512MB) dengan perintah berikut:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=524288

Keluaran:

524288+0 records in
524288+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 10.3523 s, 51.9 MB/s

Anda dapat menghitung ukuran blok menggunakan rumus 1024 x 512MB =524288.

Setelah membuat ruang Swap, format dengan perintah berikut:

sudo mkswap /swapfile

Keluaran:

mkswap: /swapfile: insecure permissions 0644, 0600 suggested.
Setting up swapspace version 1, size = 512 MiB (536866816 bytes)
no label, UUID=8981408a-549d-47aa-a99a-72870b65212d

Selanjutnya, atur izin yang tepat pada /swapfile dengan perintah berikut:

sudo chown root:root /swapfile
sudo chmod 0600 /swapfile

Selanjutnya, aktifkan ruang Swap menggunakan perintah berikut:

sudo swapon /swapfile

Selanjutnya, verifikasi ruang Swap menggunakan perintah berikut:

swapon -s

Keluaran:

Filename				Type		Size	Used	Priority
/swapfile                              	file    	524284	0	-2

Selanjutnya, Anda perlu menambahkan entri file Swap ke /etc/fstab untuk membuatnya aktif bahkan setelah reboot.

nano /etc/fstab

Tambahkan baris berikut:

/swapfile              swap   swap     defaults     0 0

Simpan dan tutup file, lalu verifikasi ruang Swap menggunakan perintah berikut:

free -m

Anda akan melihat output berikut:

              total        used        free      shared  buff/cache   available
Mem:           1817         263         100          68        1452        1329
Swap:           511           0         511

Kesimpulan

Dalam panduan di atas, kami menjelaskan beberapa langkah dasar untuk mengamankan server Rocky Linux 8 Anda. Sekarang Anda dapat melanjutkan untuk meng-host aplikasi apa pun di lingkungan yang aman – coba di akun hosting VPS Anda dari Atlantic.Net!


Linux
  1. Cara Menginstal Gulp.js di Rocky Linux 8

  2. Cara Membuat Pengguna Sudo di Rocky Linux 8

  3. Cara Menginstal MariaDB di Rocky Linux 8

  1. Cara Menginstal MariaDB 10.6 di Rocky Linux 8

  2. Cara Menginstal Docker di Rocky Linux 8

  3. Cara Menginstal Cockpit di Rocky Linux 8

  1. Cara Menginstal GitLab di Rocky Linux 8

  2. Cara Instal FreeIPA di Rocky Linux 8

  3. Cara Menginstal Podman di Rocky Linux 8