Dalam dokumen “Guide to General Server”, yang dikeluarkan oleh NIST pada Juli 2008, terdapat panduan untuk mengamankan/ hardening suatu sistem operasi. Adapun langkah-langkahnya adalah sebagai berikut.
a. memasang dan menambal (patch) sistem operasi
b. menghapus layanan, aplikasi, dan protokol yang tidak diperlukan
c. mengkonfigurasi pengguna-pengguna, grup-grup, dan otentikasi
d. mengkonfigurasi kontrol sumberdaya-sumberdaya
e. memasang dan mengkonfigurasi kontrol keamanan tambahan, seperti anti-virus, firewall berbasis host, dan sistem deteksi intrusi (IDS), jika diperlukan
f. menguji keamanan dari dasar sistem operasi untuk memastikan langkah yang dilakukan sesuai dengan yang dibutuhkan keamanan
Dalam artikel ini akan dibahas mengenai langkah hardening (a), (b), (c) dan (d).
Untuk bahasan mengenai langkah hardening (e) dan (f) dapat dilihat pada artikel “Langkah Hardening Sistem Operasi Fedora-Server 21 (2/2)“.
Catatan: - Setiap perintah dalam tutorial ini diakhiri dengan menekan tombol "Enter". - Tambahkan "sudo" di depan perintah jika diperlukan akses sebagai root. - Perintah yang berwarna merah disesuaikan dengan keinginan sendiri. - Tagar di depan perintah menunjukkan komentar, tidak perlu diketik.
a. Memasang dan Menambal (Patch) Fedora-Server 21
Dalam artikel ini akan dibahas langsung mengenai cara menambal (patch) Fedora-Server 21. Untuk langkah pemasangan Fedora-Server 21 bisa dilihat pada artikel sebelumnya (klik di sini).
Pada Fedora-Server, penambalan dilakukan dengan perintah “yum”. Jika penambalan dilakukan melalui proxy, lakukan konfigurasi proxy terlebih dahulu dalam berkas “yum.conf” dengan cara:
1. Gunakan perintah:
vi /etc/yum.conf
2. Tekan huruf “I“, lalu tambahkan baris berikut.
# The proxy server - proxy server:port number
proxy=http://proxy.domain.com:8080
# The account details for yum connections
proxy_username=username
proxy_password=password
3. Tekan tombol “Esc“, lalu ketik “:wq” untuk menyimpan dan keluar.
- Untuk mengecek pemutakhiran (update) terbaru, gunakan perintah:
yum check-update

Secara default Fedora-Server 21 akan mencari peladen mirror tercepat untuk melakukan pemutakhiran. Lalu semua paket yang perlu dimutakhirkan akan ditampilkan.

- Untuk melakukan pemutakhiran terbaru, gunakan perintah:
yum update
Sebelum mengunduh pemutakhiran, Fedora-Server akan menampilkan daftar paket yang akan diunduh beserta ringkasan transaksi pengunduhannya (jika ada) seperti pada Gambar 3.

Pilih huruf “y” untuk mengunduh, lalu tunggu hingga pemutakhiran selesai.

Penambalan selesai! 🙂
b. Menghapus layanan, aplikasi, dan protokol yang tidak diperlukan
Sebelum menghapus layanan dan aplikasi yang tidak diperlukan, kita perlu mengetahui jenis layanan/ aplikasi apa saja yang terdapat Fedora-Server 21.
- Untuk melihat daftar semua layanan, gunakan perintah berikut.
# Layanan SysV chkconfig --list # Layanan systemd systemctl list-unit-files
Untuk melihat semua layanan yang sedang berjalan, gunakan perintah berikut.
service --status-all
- Untuk melihat status dari suatu layanan, gunakan perintah berikut.
service namalayanan status
- Untuk menghidupkan/ mematikan suatu layanan, gunakan perintah berikut.
# Menjalankan suatu layanan systemctl start namalayanan # Menghentikan suatu layanan systemctl stop namalayanan # Membuat suatu layanan hidup setiap boot systemctl enable namalayanan # Membuat suatu layanan mati (bukan sekedar dihentikan) systemctl disable namalayanan # Menjalankan ulang suatu layanan systemctl restart namalayanan
- Untuk melihat daftar semua port yang terbuka beserta layanannya, gunakan perintah berikut.
# Agar muncul soket layanan numerikal netstat -tulpn # Agar muncul soket layanan literal netstat -tulp


- Untuk menutup suatu port dapat dilakukan dengan mematikan layanan terkait menggunakan perintah “systemctl” atau dengan menambah aturan baru di firewall menggunakan perintah berikut.
iptables -A INPUT -p tcp/udp --dport jenisprotokol/no.port -j DROP
c. Mengkonfigurasi Pengguna, Grup, dan Otentikasi
Mengkonfigurasi Pengguna dan Grup
- Untuk menambah pengguna baru, gunakan perintah:
useradd username
Lalu buat kata sandi untuk pengguna tersebut dengan perintah:
passwd username
- Untuk menghapus suatu pengguna, gunakan perintah:
userdel username
- Untuk mengetahui adanya id suatu pengguna, gunakan perintah:
id username
- Untuk menambah grup baru, gunakan perintah:
groupadd groupname
- Untuk menghapus suatu grup, gunakan perintah:
groupdel groupname
- Untuk mengetahui daftar grup yang tersedia, gunakan perintah:
groups
- Untuk memasukkan pengguna ke dalam suatu grup, gunakan perintah:
# Menambah ke dalam grup bawaan (default) seperti "root"
usermod -g groupname username
# Menambah ke dalam grup grup tambahan seperti "wheel"
usermod -a -G groupname username
- Untuk mengeluarkan pengguna dari suatu grup, gunakan perintah:
gpasswd -d username groupname
- Agar suatu pengguna diizinkan melakukan perintah “sudo”, masukkan pengguna tersebut ke dalam grup “wheel” dengan perintah:
usermod -a -G wheel username
- Untuk membatasi hak akses root, buka berkas “su” dengan perintah:
vi /etc/pam.d/su
Lalu hilangkan tanda pagar pada baris berikut:
# auth required pam_wheel.so use_uid
Setelah perubahan disimpan, hanya pengguna yang masuk ke dalam grup “wheel” yang dapat mengakses sebagai root.
Mengkonfigurasi Otentikasi
Untuk menerapkan otentikasi yang aman, diperlukan kebijakan kata sandi yang kuat. Salah satu cara menerapkannya adalah dengan menggunakan modul “pam_cracklib.so”.
Modul ini melakukan sejumlah pemeriksaan seperti memastikan kata sandi tidak mirip dengan kata-kata kamus, paling sedikit memiliki panjang tertentu, bukan kebalikan dari kata sandi sebelumnya, dan bukan kata sandi yang hanya diubah sedikit dari kata sandi sebelumnya.
Untuk menggunakan modul ini, lakukan langkah berikut.
1. Buka berkas “system-auth” dengan perintah berikut.
vi /etc/pam.d/system-auth
2. Cari baris “password required” dan edit menjadi seperti di bawah ini.
password required /lib/security/pam_cracklib.so retry=2 minlen=10 difok=6
# Keterangan:
# retry=2, artinya mencoba ulang paling banyak 2 kali
# minlen=10, artinya panjang kata sandi minimum 10 karakter
# difok=6, artinya paling banyak 6 karakter yang boleh sama dengan kata sandi sebelumnya
Selain itu, kata sandi para pengguna juga perlu diatur masa berlakunya supaya otentikasi lebih aman. Untuk mengatur masa berlakunya kata sandi, gunakan perintah berikut.
chage -m mindays -M maxdays -d lastday -I inactive -E expiredate -W warndays namapengguna # Contoh: # chage -m 7 -M 60 -W 7 pengguna1 # Artinya: # -m 7 : jarak antar perubahan kata sandi minimum 7 hari # -M 60: jarak antar perubahan kata sandi maksimal 60 hari # -W 7 : diperingatkan untuk mengganti kata sandi 7 hari sebelum tanggal expire
d. Mengkonfigurasi Kontrol Sumberdaya-Sumberdaya
- Untuk melihat izin akses dari suatu berkas atau direktori, gunakan perintah:
ls -lha
Contoh hasil tampilannya:

Karakter paling kiri berupa tanda “-” jika jenisnya berupa berkas, atau berupa huruf “d” jika berupa direktori. Sembilan karakter lainnya dipecah menjadi tiga bagian yang dapat diubah ke dalam permission bits, masing-masing menunjukkan izin akses dari pemilik, grup pemilik, serta pengguna lain di luar grup pemilik.

Tabel permission bits:
- Untuk mengubah izin akses dapat dilakukan dengan perintah “chmod” (change mode). Perintah ini dapat dilakukan dalam mode oktal atau mode simbolik.
# Mode oktal
chmod permissionbits folder/filename
# Mode simbolik
chmod <references><operator><modes> folder/filename
Reference | Kelas | Deskripsi |
---|---|---|
u | user | pemilik berkas |
g | group | pengguna-pengguna yang merupakan anggota dari grup pemilik berkas |
o | others | pengguna-pengguna bukan pemilik dan juga bukan anggota dari grup pemilik |
a | all | semua pengguna |
Operator | Deskripsi |
---|---|
+ | menambah suatu mode kepada suatu kelas |
- | menghilangkan suatu mode dari suatu kelas |
= | suatu mode dibuat sama persis dengan mode dari suatu kelas |
Mode | Nama | Deskripsi |
---|---|---|
r | read | membuka suatu berkas atau direktori |
w | write | membuat suatu berkas atau direktori |
x | execute | mengeksekusi suatu berkas atau direktori |
Contoh dengan mode oktal:
Demikian pembahasan mengenai langkah hardening (a) sampai (d). Semoga bermanfaat 🙂
Silakan klik di sini untuk membaca artikel kelanjutannya 😀