Keamanan adalah topik abadi yang menarik bagi sysadmin. Dan mengamankan sistem baru selalu menghadirkan tantangan karena memang tidak ada standar yang ditetapkan untuk melakukannya. Saya menarik daftar tindakan dan kontrol keamanan artikel ini dari berbagai sumber, termasuk pengalaman pribadi, DISA STIG, dan rekomendasi dari administrator sistem dan petugas keamanan lainnya. Meskipun langkah-langkah keamanan ini bagus, itu hanya langkah pertama menuju keamanan sistem yang lebih baik. Kedelapan kontrol sistem ini tidak memiliki urutan kepentingan tertentu.
Kunci SSH
Konfigurasikan autentikasi tanpa kata sandi menggunakan pasangan kunci SSH. Periksa artikel oleh Susan Lauber untuk instruksi:SSH tanpa kata sandi menggunakan pasangan kunci publik-swasta. Kata sandi bukanlah ukuran keamanan yang baik, tidak peduli seberapa panjang atau rumitnya. Dengan menggunakan pasangan kunci SSH dan satu kotak lompat, Anda dapat membuat akses aman tingkat tinggi ke sistem Anda.
Otentikasi SSH
Setelah Anda menyiapkan pasangan kunci SSH untuk autentikasi, Anda harus mengonfigurasi SSHD
untuk menerimanya untuk login jarak jauh. /etc/ssh/sshd_config
file adalah lokasi pusat untuk mengamankan SSHD
pada sistem Anda. Opsi penting untuk diperiksa dan diubah adalah:
Setelan Asli | Ubah Ke |
---|---|
#PermitRootLogin ya | No PermitRootLogin |
#PubkeyAuthentication ya | Otentikasi Pubkey ya |
#PermitEmptyPassword no | No PermitEmptyPasswords tidak |
Otentikasi Kata Sandi ya | Nomor Otentikasi Kata Sandi |
Anda harus memulai ulang SSHD
setelah Anda membuat perubahan pada file konfigurasi agar perubahan Anda berlaku.
sandi NULL
Periksa apakah semua akun menggunakan kata sandi untuk otentikasi. Jangan izinkan akun apa pun memiliki kata sandi nol atau kosong. Menyiapkan pasangan kunci adalah pertahanan yang baik terhadap kata sandi nol. Hapus semua contoh opsi "nullok" di /etc/pam.d/system-auth
dan /etc/pam.d/password-auth
untuk mencegah login dengan kata sandi kosong.
Hapus layanan yang tidak aman
Untuk mengamankan sistem Anda dengan lebih baik, hapus semua layanan tidak aman (layanan yang mengirim kata sandi dalam teks biasa melalui jaringan atau layanan yang mengizinkan koneksi anonim (tidak diautentikasi). Hapus paket-paket berikut:
- ypserv
- server-rsh
- vsftpd*
- server-telnet
- server-tftp
Transfer file dan konektivitas interaktif antar sistem harus dilakukan menggunakan SSH
. Tidak perlu rsh-server
, vsftpd
, dan telnet-server
. Anda harus mengganti LDAP atau Active Directory untuk ypserv
(NIS/NIS+). Adapun tftp-server
, jika Anda harus menggunakannya, persembahkan satu sistem atau mesin virtual untuk itu dan instal ke dalam chroot
penjara untuk keamanan yang lebih baik.
*Sementara vsftpd
mengenkripsi komunikasi, fungsi ini lebih baik ditangani oleh SSH/SFTP/SCP
.
Nonaktifkan otentikasi berbasis host
Hapus semua instance autentikasi berbasis host dalam bentuk .shosts
dan shosts.equiv
file. Otentikasi berbasis host tidak cukup untuk mencegah akses tidak sah ke sistem, karena tidak memerlukan identifikasi interaktif dan otentikasi permintaan koneksi, atau untuk penggunaan otentikasi multi-faktor.
Versi SNMP dan nama komunitas
Gunakan SNMP versi 3.x untuk otentikasi pengguna dan enkripsi pesan. Ubah string komunitas default dari public
atau private
ke nilai string yang berbeda.
Penerusan X11
Pastikan bahwa jika Anda menggunakan protokol X di jaringan Anda, protokol tersebut diamankan oleh SSL. Edit /etc/ssh/sshd_config
dan atur parameter X11Forwarding sebagai berikut:
X11Forwarding yes
Jika parameter ada tetapi dikomentari dengan #
terkemuka , lalu hapus #
dan mulai ulang SSHD.
Mengamankan GNOME
Jika Anda menggunakan GNOME pada sistem server Anda, amankan dengan pengaturan berikut di /etc/gdm/custom.conf
mengajukan. Tambahkan atau edit baris untuk AutomaticLoginEnable
parameter di [daemon]
bagian custom.conf
file ke false, seperti yang ditunjukkan di bawah ini.
[daemon]
AutomaticLoginEnable=false
Dan tambahkan atau edit baris untuk TimedLoginEnable
parameter di [daemon]
bagian /etc/gdm/custom.conf
file ke false, seperti yang ditunjukkan di bawah ini.
[daemon]
TimedLoginEnable=false
Beberapa penasihat keamanan memperingatkan lagi menggunakan antarmuka pengguna grafis (GUI) pada sistem server karena malware yang menargetkan mereka.
[ Tingkatkan lebih lanjut keamanan sistem Anda dengan perangkat lunak Antimalware:3 solusi antimalware untuk sistem Linux ]
Menutup
Meskipun keamanannya yang mirip Unix sangat bagus, Linux tidak 100 persen aman setelah penginstalan. Dan tidak ada yang 100 persen aman, tetapi Anda dapat mengatur beberapa kontrol dan melakukan beberapa tugas dasar untuk mengamankan sistem dengan lebih baik. Saya sedang dalam proses membawakan Anda lebih banyak artikel seperti ini yang berfokus pada keamanan sistem.
[ Ingin mempelajari lebih lanjut tentang keamanan? Lihat daftar periksa keamanan dan kepatuhan TI. ]