GNU/Linux >> Belajar Linux >  >> Linux

Keamanan Linux:8 kontrol penguncian sistem lainnya

Penguncian sistem tidak harus menjadi tugas besar atau mengerikan yang menimbulkan ketakutan di hati sysadmin yang paling letih. Tidak, tidak intuitif atau sepele untuk mengunci server Linux dengan benar, tetapi juga bukan fisika kuantum. Dalam artikel saya sebelumnya, Keamanan Sysadmin:8 kontrol penguncian Linux, saya membahas delapan perubahan penting yang perlu Anda lakukan untuk setiap sistem Linux apa pun fungsinya. Dalam artikel ini, saya membahas lebih banyak kontrol sistem yang dapat Anda terapkan dengan cepat dan tanpa biaya.

Kontrol ini berasal dari berbagai sumber, seperti pengalaman saya sendiri, DISA STIG, dan sysadmin lainnya. Kontrol yang tercantum di sini tidak dalam urutan kepentingan atau tingkat keparahan tertentu.

Spanduk

Apakah sistem Anda memiliki antarmuka pengguna grafis atau tidak, Anda perlu membuat spanduk yang ditampilkan kepada pengguna saat masuk. Spanduk perlu memperingatkan pengguna bahwa sistem dilindungi oleh dan bahwa penyalahgunaan sistem adalah pelanggaran pidana. Spanduk perlu ditampilkan untuk pengguna di konsol serta bagi mereka yang masuk melalui jaringan.

Edit /etc/issue untuk pengguna konsol dan /etc/issue.net untuk pengguna jaringan. Pastikan untuk memberikan path lengkap ke file yang Anda gunakan untuk spanduk di /etc/ssh/sshd_config file sebagai berikut:

Banner /etc/issue.net

Anda dapat menggunakan file apa pun yang Anda inginkan, tetapi Anda harus mengedit jalur Banner dan mengarahkannya ke file yang berisi pesan Anda.

Tidak, menyiapkan spanduk pasti tidak akan mencegah penyerang berhasil mengkompromikan sistem Anda. Namun, itu menghancurkan argumen pertahanan bahwa penyerang tidak memiliki kesadaran bahwa sistem tersebut adalah sistem pribadi yang dilindungi.

Penegakan kompleksitas sandi

Terapkan kerumitan sandi, untuk sistem yang masih menggunakan sandi, dengan memodifikasi parameter di /etc/security/pwquality.con file (ditampilkan di bawah). File ini berisi daftar parameter yang dapat diedit untuk menerapkan sandi yang kuat bagi sistem Anda.

# Configuration for systemwide password quality limits
# Defaults:
#
# Number of characters in the new password that must not be present in the
# old password.
# difok = 5
#
# Minimum acceptable size for the new password (plus one if
# credits are not disabled which is the default). (See pam_cracklib manual.)
# Cannot be set to lower value than 6.
# minlen = 9
#
# The maximum credit for having digits in the new password. If less than 0
# it is the minimum number of digits in the new password.
# dcredit = 1
#
# The maximum credit for having uppercase characters in the new password.
# If less than 0 it is the minimum number of uppercase characters in the new
# password.
# ucredit = 1
#
# The maximum credit for having lowercase characters in the new password.
# If less than 0 it is the minimum number of lowercase characters in the new
# password.
# lcredit = 1
#
# The maximum credit for having other characters in the new password.
# If less than 0 it is the minimum number of other characters in the new
# password.
# ocredit = 1
#
# The minimum number of required classes of characters for the new
# password (digits, uppercase, lowercase, others).
# minclass = 0
#
# The maximum number of allowed consecutive same characters in the new password.
# The check is disabled if the value is 0.
# maxrepeat = 0

Berikut ini adalah nilai yang direkomendasikan. Catatan:Pastikan untuk menghapus komentar pada baris parameter untuk mengaktifkan nilai yang diterapkan.

difok = 8

minlen = 15

dcredit = -1

ucredit = -1

lcredit = -1

ocredit = -1

minclass = 4

maxrepeat = 3

maxclassrepeat = 4

Parameter ini membantu memastikan bahwa kata sandi sistem jauh lebih aman daripada pengaturan default. Disarankan untuk menggunakan autentikasi multi-faktor daripada sandi untuk meningkatkan keamanan akses sistem.

Catatan:minlen (panjang minimum) parameter harus diatur ke nilai 15 atau lebih besar. Ajari pengguna untuk menggunakan frasa sandi daripada mencoba menemukan satu kata yang memenuhi kriteria.

Masa pakai sandi minimum

Beberapa pengguna pintar mengubah kata sandi mereka beberapa kali untuk menghindari keamanan sistem. Ketika dipaksa untuk memperbarui kata sandi mereka, mereka mengubah kata sandi mereka cukup lama untuk mengalahkan keamanan sistem untuk akhirnya mengatur kata sandi mereka kembali ke aslinya. PASS_MIN_DAYS parameter di /etc/login.defs file dapat mencegah aktivitas ini. Tetapkan nilainya menjadi 1 atau lebih besar. Standarnya adalah 0, yang menyebabkan masalah keamanan.

PASS_MIN_DAYS 1

Menyetel parameter ini berarti pengguna harus menyimpan sandi baru minimal satu hari sebelum mengubahnya lagi. Anda dapat menyetel nilai ke nomor apa pun yang Anda inginkan, tetapi mencegah pengguna untuk segera mengubah beberapa kali tampaknya menyelesaikan masalah.

Maksimum masa pakai sandi

Mungkin yang lebih berbahaya daripada masa pakai kata sandi minimum adalah pengaturan umur kata sandi maksimum. Standarnya adalah 99999, yang berarti bahwa pengguna tidak perlu mengubah kata sandi mereka. Ini adalah pelanggaran keamanan yang serius.

Bergantung pada kebijakan dan kebutuhan keamanan perusahaan Anda, Anda harus menerapkan perubahan sandi dalam rentang 60 hingga 90 hari. Untuk menerapkan perubahan di seluruh sistem seperti itu, edit PASS_MAX_DAYS pengaturan di /etc/login.defs berkas.

PASS_MAX_DAYS 60

Pengaturan ini memaksa pengguna untuk mengubah sandi mereka setiap 60 hari. Ya, Anda akan mendengar gerutuan, apalagi jika ditambah dengan PASS_MIN_DAYS larangan. Keamanan menang atas keluhan pengguna.

Keamanan Sudoer

Seringkali, sysadmin mengonfigurasi akun pengguna mereka untuk menggunakan sudo perintah tanpa kata sandi. Ini adalah pelanggaran keamanan yang serius dan yang tidak boleh diizinkan dalam keadaan apa pun pada sistem apa pun, apa pun fungsinya.

Edit /etc/sudoers file dengan visudo dan hapus semua contoh NOPASSWD dalam file.

Selain itu, periksa contoh "!authentication" di /etc/sudoers mengajukan. Entri ini memungkinkan pengguna yang memiliki sudo akses untuk terus menggunakan sudo tanpa otentikasi ulang. Ini adalah pelanggaran keamanan. Hapus semua contoh "!authentication" dari /etc/sudoers berkas.

Penundaan login gagal

Untuk membantu menggagalkan serangan brute force pada akun pengguna, Anda harus menyetel penundaan gagal masuk setidaknya 4 detik. Ini mencegah serangan brute force tetapi juga dapat membantu pengguna memasukkan sandi yang benar, yang memang menjadi lebih sulit untuk sandi dan frasa sandi yang lebih panjang.

Parameter ini diatur di /etc/login.defs mengajukan. Angkanya adalah jumlah detik yang dijeda sistem sebelum menampilkan prompt login baru setelah upaya login yang gagal.

FAIL_DELAY 4

Empat detik cukup singkat untuk tidak membuat frustrasi pengguna yang mungkin salah menekan tombol secara tidak sengaja, tetapi cukup lama untuk mencegah upaya login berulang oleh bot.

Nonaktifkan pemasangan otomatis perangkat

Pemasangan otomatis sistem file menimbulkan risiko keamanan dari perangkat tidak dikenal yang mungkin dicolokkan ke sistem. Dengan kata lain, penyerang dapat mencolokkan perangkat USB untuk mengirimkan muatan saat perangkat melakukan automount. Nonaktifkan pemasangan otomatis dengan menghentikan dan menonaktifkan autofs layanan.

$ sudo systemctl stop autofs

$ sudo systemctl disable autofs

Mungkin sedikit kurang nyaman jika harus memasang sistem file secara manual setelah perangkat baru dicolokkan ke sistem, tetapi peningkatan keamanan mengimbangi tiga detik tambahan tenaga yang diperlukan untuk memasang perangkat. Ini memberikan kesempatan kepada administrator sistem untuk menonaktifkan, menghapus, atau mengeluarkan perangkat yang tidak sah.

Batasi izin pembuatan file

Kita akan kembali ke /etc/login.defs file untuk membuat perubahan di seluruh sistem. Saat pengguna membuat file baru, mereka biasanya menerima izin 644 yang dihasilkan dari umask pengaturan filter 022. Untuk meningkatkan keamanan, semua file baru harus dibuat dengan umask dari 077, yang menghasilkan file baru yang memiliki 600 sebagai izin defaultnya.

UMASK 077

Bagi sebagian besar pengguna, ini mungkin tidak terlalu penting, tetapi untuk file yang dibuat oleh root, pengaturan ini wajib. Menyetelnya ke seluruh sistem memastikan konsistensi.

Menutup

Meningkatkan keamanan sistem adalah salah satu tugas utama administrator sistem. Sistem baru, sistem warisan, dan sistem yang melayani fungsi khusus adalah yang paling rentan di jaringan Anda. Perhatian khusus harus diberikan untuk melindungi setiap sistem jaringan. Seringkali kompromi dari satu sistem memungkinkan kompromi lebih karena sekarang penyerang berada di dalam jaringan dan memiliki kendali atas satu atau lebih sistem.

Beberapa dari kontrol keamanan ini mungkin tampak berat, tetapi dibandingkan dengan pemulihan setelah pelanggaran, ini hanyalah bagian dari "normal" saat ini.

[ Ingin mempelajari lebih lanjut tentang keamanan? Lihat daftar periksa keamanan dan kepatuhan TI. ]


Linux
  1. Pelatihan dan sertifikasi untuk administrator sistem Linux

  2. Menyeimbangkan keamanan Linux dengan kegunaan

  3. berapa panjang maksimal kata sandi pada sistem unix/linux?

  1. Berikan firewall sistem Linux Anda peningkatan keamanan

  2. Bertahan dari audit keamanan dengan Linux perusahaan

  3. Keamanan Linux:Lindungi sistem Anda dengan fail2ban

  1. Keamanan sysadmin:8 kontrol penguncian Linux

  2. Pelajari lebih lanjut tentang sistem Linux Anda dengan inxi

  3. Mengubah kata sandi sistem Linux dalam skrip bash