Keamanan adalah topik yang populer di kalangan administrator sistem Linux. Setiap forum yang saya baca, setiap konferensi yang saya hadiri, dan setiap diskusi yang berpusat pada TI yang saya ikuti selalu beralih ke keamanan, dan kemudian percakapan beralih, tak terhindarkan, ke keamanan Linux. Ini adalah pengalaman saya, dan ketidakmampuan saya untuk tidak menguping pembicaraan teknologi tentang Linux adalah asal mula artikel ini. Ini adalah lima rekomendasi saya untuk memulai dengan instalasi Linux yang lebih aman.
[Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis.]
Tetap minimal
Ketika saya menginstal Linux, saya selalu menginstal versi sekecil mungkin. Untuk CentOS atau Red Hat Enterprise Linux, ini berarti instalasi minimal. Saya lebih suka memulai dari yang kecil dan kemudian menambahkan apa yang saya butuhkan daripada menghapus apa yang tidak saya butuhkan. Manfaat tambahan untuk memilih instalasi minimal adalah jejak sistem juga minimal. Ruang disk murah, tetapi siapa yang ingin membuang ruang disk untuk aplikasi berlebihan yang mungkin akan kembali menghantui kita nanti dengan masalah keamanan? Yang saya butuhkan awalnya adalah instalasi dasar dengan server SSH sehingga saya dapat terhubung dan mengelolanya dari jarak jauh. Saya dapat menambahkan apa pun yang saya butuhkan melalui DNF nanti.
Server adalah zona bebas GUI
Jika sistem Linux Anda akan hidup sebagai server, jangan menginstal antarmuka pengguna grafis. Beberapa orang memperdebatkan hal ini. Dari sudut pandang keamanan, menginstal GUI—bahkan yang kecil—membutuhkan banyak paket perangkat lunak tambahan. Semua ini bisa rentan terhadap masalah keamanan. Beberapa paket GUI dapat membuka port pada sistem Anda, yang tidak diinginkan karena tindakan itu meningkatkan permukaan serangan. Terakhir, kinerja sistem Anda mungkin (akan) menderita karena memiliki antarmuka grafis, karena GUI menghabiskan banyak sumber daya sistem.
Biarkan GUI di desktop. Pelajari baris perintah.
Firewall adalah wajib
Pada sistem berbasis Red Hat (Red Hat Enterprise Linux, Fedora, dan CentOS), firewalld
adalah firewall default Anda. Gunakan. Firewall berbasis host ini melindungi sistem Anda dari gangguan yang tidak diinginkan melalui semua port, kecuali yang telah Anda izinkan secara eksplisit. Anda juga dapat secara selektif membatasi lalu lintas keluar melalui firewall.
Namun, metode paling aman untuk membatasi lalu lintas keluar adalah dengan menyiapkan server proxy internet internal, dan hanya mengizinkan lalu lintas keluar ke sistem itu. Anda juga dapat mengizinkan lalu lintas SSH ke subnet lokal Anda jika Anda perlu terhubung dari satu sistem ke sistem lainnya. Firewall berbasis host dapat membuat frustasi saat menguji konektivitas antar sistem, terutama untuk layanan yang baru dikonfigurasi, tetapi ini sepadan dengan beberapa saat frustrasi. Gantungkan tanda tepat di atas monitor Anda di bilik Anda yang bertuliskan, "PERIKSA FIREWALL," dan Anda akan baik-baik saja.
SELinux layak dipelajari
Ah, SELinux yang sangat dibenci dan disalahpahami. Biasanya, administrator sistem menonaktifkan atau menghapus SELinux sama sekali daripada berurusan dengan kecemasan ekstrim yang ditingkatkan keamanan yang dihasilkannya. Saran saya adalah membiarkan layanan ini aktif, diaktifkan, dan disetel ke penerapan.
SELinux menggunakan apa yang dikenal sebagai kontrol akses wajib (atau MAC), sedangkan firewall menggunakan kontrol akses berbasis aturan, dan izin *nix standar dikenal sebagai kontrol akses diskresioner. Sebelum menyerah dan menonaktifkan SELinux, harap baca beberapa dokumentasi tentang konfigurasinya. Karena sebagian besar sistem hanya menjalankan sekumpulan kecil layanan, mengonfigurasi tidak terlalu merepotkan dibandingkan dengan bahaya jika layanan ini tidak diaktifkan.
SELinux harus diatur dengan cara tertentu, memungkinkan file diberi label, diatur dalam konteks keamanan, dan di-boot ulang beberapa kali untuk menyelesaikannya. Baca dokumentasi. SELinux, bertentangan dengan kepercayaan populer, BUKAN firewall (atau penggantinya), solusi anti-malware, pengganti mekanisme otentikasi seperti otentikasi multi-faktor, atau obat mujarab keamanan dengan imajinasi apa pun.
SELinux adalah pertahanan terhadap eskalasi hak istimewa dari layanan yang dijalankan sebagai pengguna root. Mematikannya mungkin adalah ide yang buruk. Menggunakan SELinux dengan benar merupakan lapisan perlindungan tambahan yang dibutuhkan di era ancaman persisten tingkat lanjut dan malware yang lebih cerdas saat ini.
Login root jarak jauh adalah ide yang buruk
Secara default, pada sistem berbasis Red Hat, pengguna root dapat login dari jarak jauh melalui SSH. Saya dapat memahami mengapa fitur ini disetel secara default pada sistem yang baru diinstal, tetapi fitur ini harus dinonaktifkan setelah sistem aktif dan dapat dioperasikan, dan akun dengan akses sudo telah dibuat.
Menonaktifkan login root jarak jauh akan mencegah penyerang menggunakan metode brute force untuk menebak sandi root Anda. Upaya dicatat tetapi tidak akan berpengaruh pada keamanan Anda karena akun root tidak dapat masuk dari jarak jauh. Dan jika Anda memiliki skrip atau layanan pencegahan intrusi yang diinstal, upaya berulang secara otomatis menghasilkan aturan DROP baru atau pembuatan /etc/hosts.deny
entri.
Periksa untuk melihat apakah login root jarak jauh diaktifkan:
$ sudo grep -i root /etc/ssh/sshd_config
PermitRootLogin yes
# the setting of "PermitRootLogin without-password".
#ChrootDirectory none
Jika Anda melihat PermitRootLogin yes
, maka pengguna root dapat login dari jarak jauh melalui SSH. Edit /etc/ssh/sshd_config
file dan tempatkan #
untuk mengomentari baris, atau ubah yes
untuk no
. Mulai ulang sshd
layanan untuk menerima konfigurasi baru:
$ sudo systemctl restart sshd.service
Pengguna root tidak lagi dapat masuk melalui SSH.
Menutup
Baca survei apa pun selama sepuluh tahun terakhir dan Anda akan melihat bahwa keamanan adalah prioritas atau perhatian utama bagi administrator sistem. Jadikan itu milik Anda prioritas untuk mengamankan sistem dengan setidaknya lima tips ini sebelum sistem Anda mulai diproduksi. Keamanan bukanlah sesuatu yang bisa Anda tunda atau santai. Lima tips ini akan membantu Anda menghadirkan sistem yang lebih aman secara online dan menjadikan jaringan Anda tempat yang lebih aman untuk bekerja.