Cara menyekat akses pengguna pada mesin linux
- 4978
- 939
- Mr. Ramon Runolfsson
Objektif
Ketahui cara menyekat akses pengguna pada mesin Linux
Sistem operasi dan versi perisian
- Sistem operasi: - Semua pengagihan Linux
Keperluan
- Keizinan akar
Kesukaran
Mudah
Konvensyen
- # - Memerlukan arahan Linux yang diberikan dengan keistimewaan akar sama ada
secara langsung sebagai pengguna akar atau dengan menggunakansudo
perintah - $ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak
Pengenalan
Dalam tutorial ini kita akan belajar bagaimana untuk menyekat akses ke mesin Linux dengan berinteraksi dengan dua fail: /etc/securetty
, yang membolehkan kita menentukan dari konsol apa yang mungkin untuk log masuk secara langsung sebagai akar, dan /etc/keselamatan/akses.Conf
, Di mana kita dapat menetapkan beberapa peraturan untuk menyekat akses kepada pengguna atau kumpulan tertentu dari asal -usul tertentu.
Hadkan log masuk root
Perkara pertama yang akan kita lakukan, ini adalah untuk belajar cara mengeditnya /etc/securetty
fail untuk membolehkan akses root langsung hanya pada beberapa konsol tertentu. Mari kita lihat fail: Inilah yang kelihatan seperti pada mesin CentOS7:
console vc/1 vc/2 vc/3 vc/4 vc/5 vc/6 vc/7 vc/8 vc/9 vc/10 vc/11 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 ttyS0 ttysclp0 sclp_line0 3270/ TTY1 HVC0 HVC1 HVC2 HVC3 HVC4 HVC5 HVC6 HVC7 HVSI0 HVSI1 HVSI2 XVC0
Apa yang kita lihat di sana hanya senarai semua terminal dari mana akses langsung sebagai pengguna root dibenarkan. Mari fokus pada tty
peranti buat masa ini. Buka fail dengan editor teks dan komen tty1
Kemasukan:
[...] #tty1 tty2 tty3 tty4 tty6 tty7 tty8 tty9 tty10 tty11 [...]
Simpan dan keluar dari editor teks. Sekarang, jika kita beralih ke yang pertama tty
dengan menekan Ctrl + alt + 1
atau dengan berlari CHVT 1
, Dan cuba log masuk sebagai akar, kami akan mempunyai hasil berikut:
Seperti yang dijangkakan, sistem menafikan akses AS sebagai akar dari TTY yang ditentukan. Untuk mendapatkan keistimewaan akar dan menyelesaikan tugas pentadbiran, kita mesti log masuk sebagai pengguna biasa dan kemudian gunakan sudo
atau su
(atau log masuk dari TTY lain jika dibenarkan).
Ketahui bahawa ini tidak akan menjejaskan keupayaan untuk log masuk sebagai akar semasa menggunakan SSH. Untuk mengelakkan tingkah laku tertentu, anda harus mengkonfigurasi pelayan SSH, mengubah suai /etc/ssh/sshd_config
fail, dan tetapkan PermitRootlogin
arahan ke tidak
Peraturan akses persediaan dalam/etc/keselamatan/akses.Conf
Jika /etc/securetty
Fail membolehkan kami menentukan dari terminal yang mana mungkin untuk log masuk secara langsung sebagai root, menetapkan peraturan akses di /etc/keselamatan/akses.Conf
fail, kami boleh membenarkan atau menafikan akses kepada pengguna atau kumpulan tertentu dari asal -usul tertentu.
Masukkan PAM_ACCESS.Jadi modul
Sebelum menetapkan peraturan kita, kita perlu mengubah suai /etc/Pam.d/log masuk
, untuk menambah PAM_ACCESS.Jadi
modul yang akan membolehkan Pam
untuk mengimbas akses.Conf
fail untuk peraturan yang akan kami tentukan. Gunakan editor teks kegemaran anda untuk mengubah suai fail supaya kelihatan seperti ini:
#%PAM-1.0 auth [user_unknown = abaikan kejayaan = ok abaikan = abaikan lalai = bad] PAM_SECURETTY.Oleh itu, auth-auth-auth Auth Auth Auth termasuk akaun postlogin yang diperlukan PAM_NOLOGIN.Jadi akaun diperlukan PAM_Access.Jadi akaun termasuk kata laluan sistem-auth termasuk sistem-auth # PAM_SELINUX.begitu dekat mestilah sesi peraturan sesi pertama yang diperlukan PAM_SELINUX.Sesi Tutup Diperlukan Pam_Loginuid.Jadi sesi pilihan PAM_CONSOLE.SO # PAM_SELINUX.Jadi terbuka hanya boleh diikuti dengan sesi yang akan dilaksanakan dalam sesi konteks pengguna yang diperlukan PAM_SELINUX.jadi sesi terbuka diperlukan PAM_NAMESPACE.Jadi sesi pilihan Pam_Keyinit.Oleh itu, sesi Force Revoke termasuk Sesi Sistem -Auth termasuk Pam_CK_Connector POSTLOGIN.Jadi
Apa yang telah kami lakukan ialah menambah Akaun diperlukan PAM_ACCESS.Jadi
garis di hujung akaun
seksyen. Sekarang kita persediaan Pam
Kita boleh mula bercakap mengenai peraturan akses.
Peraturan sintaks
Untuk menentukan peraturan di akses.Conf
fail, kita mesti menghormati sintaks yang sangat mudah dan jelas. Peraturan terdiri daripada tiga bahagian, dipisahkan oleh kolon:
Kebenaran: Pengguna: Asal
Bahagian pertama peraturan menentukan keizinan, dan terdiri daripada a -
atau +
Tanda: Yang pertama mencipta apa yang dapat kita panggil peraturan 'menafikan', sementara yang terakhir menentukan peraturan di mana kebenaran akses diberikan.
Di bahagian kedua kami menyediakan subjek peraturan. Bahagian ini terdiri daripada senarai kumpulan atau nama log masuk. Untuk mengelakkan konflik antara pengguna dan kumpulan yang boleh dinamakan dengan cara yang sama, penyertaan kumpulan boleh ditentukan dalam kurungan, tetapi hanya jika Nodefgroup
pilihan ditetapkan dalam /etc/Pam.d/log masuk
fail yang kami ubah di atas, di hujung baris yang kami tambah.
Bahagian ketiga peraturan menentukan sumber dari mana akses itu dibenarkan atau ditolak, iaitu: satu atau lebih ttys
, Nama tuan rumah, alamat tuan rumah, atau domain.
Kata kunci
Sintaks peraturan marilah kita menggunakan beberapa kata kunci yang kuat. Pertama sekali kita ada SEMUA
. Kata kunci ini akan selalu dipadankan: sebagai contoh, apabila digunakan di bahagian kedua, ia akan sepadan dengan semua pengguna atau kumpulan yang mungkin, atau apabila digunakan di tempat ketiga, semua sumber yang mungkin.
The Tiada
kata kunci mempunyai kesan bertentangan tepat SEMUA
, dan Tempatan
, yang hanya mempunyai rasa di Asal
bahagian peraturan, akan sepadan dengan setiap rentetan yang tidak mengandungi '.'. Akhirnya kata kunci yang sangat kuat adalah Kecuali
yang membolehkan kita menentukan pengecualian kepada peraturan yang ditetapkan.
Beberapa contoh
Fail ini memberikan beberapa contoh berguna, mari kita lihat sebahagian daripada mereka. Pertama sekali kita ada yang berikut:
- : Semua kecuali akar: tty1
Garis ini, akan membolehkan kita memperoleh hasil yang bertentangan yang telah kami perolehi sebelum ini dengan mengubah suai /etc/securetty
Fail: Pertama sekali kita ada -
tanda, yang bermaksud ia adalah menafikan
peraturan. Di bahagian seterusnya, dipisahkan oleh kolon, kita ada Semua kecuali akar
,yang menentukan bahawa peraturan mesti digunakan untuk semua pengguna kecuali akar
, Dan di bahagian ketiga, kita melihat bahawa peraturan yang ditentukan hanya sah apabila seseorang cuba mengakses dari tty1
.
Satu lagi contoh, kali ini dengan pelbagai nama pengguna:
-: wsbscaro wsbsecr wsbspac wsbsym wscosor wstaiwde: semua
Peraturan ini melarang akses kepada pengguna WSBSCARO, WSBSECR, WSBSPAC, WSBSYM, WSCOSOR dan WSTAIWDE dari semua sumber (lihat SEMUA
Kata kunci dalam tindakan)
Sesuatu yang lebih kompleks. Kali ini peraturan menafikan akses kepada semua pengguna yang bukan ahli kumpulan roda tempatan
Log masuk:
-: Semua kecuali (roda): Tempatan
Akhirnya contoh yang menentukan peraturan untuk log masuk jauh:
+ : akar: 192.168.200.1 192.168.200.4 192.168.200.9
Seperti yang kita faham sekarang, peraturan ini membenarkan akar
Untuk mengakses sistem hanya dari alamat IP yang ditentukan.
Kes ujian
Kita dapat mengesahkan apa yang kita katakan di atas dengan kes ujian: mari kita bina peraturan untuk menolak akses ke Egdoc
(akaun saya mengenai sistem ini) dari tty1
dan masukkannya pada akhir /etc/keselamatan/akses.Conf
Fail:
-: egdoc: tty1
Sekarang, jika kita beralih ke tty1
Dan cuba log masuk, kami mendapat tindak balas kasar ini dari sistem:
Harap maklum bahawa perintah peraturan yang ditentukan di /etc/keselamatan/akses.Conf
Fail sangat penting, kerana peraturan dinilai mengikut rupa penampilan.
Tutorial Linux Berkaitan:
- Perkara yang hendak dipasang di Ubuntu 20.04
- Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
- Fail Konfigurasi Linux: 30 teratas yang paling penting
- Muat turun linux
- Bolehkah linux mendapat virus? Meneroka kelemahan Linux ..
- Distro linux terbaik untuk pemaju
- Perkara yang perlu dilakukan setelah memasang Ubuntu 22.04 Jur -ubur Jammy ..
- Perintah Linux: Top 20 Perintah Paling Penting yang Anda Perlu ..
- Pasang Arch Linux di Workstation VMware
- Perintah Linux Asas
- « Ssh ke linux komputer anda dari android dengan termux
- Cara Menggunakan GetOpts Untuk Menguraikan Pilihan Skrip »