Cara Meningkatkan Keselamatan Pelayan Linux dan Unix

PHPz
Lepaskan: 2023-05-19 14:43:06
ke hadapan
1254 orang telah melayarinya

1. Fail rekod keselamatan sistem

Fail rekod di dalam sistem pengendalian adalah petunjuk penting untuk mengesan sama ada terdapat pencerobohan rangkaian. Jika sistem anda disambungkan terus ke Internet dan anda mendapati bahawa terdapat ramai orang yang membuat percubaan log masuk telnet/ftp ke sistem anda, anda boleh menjalankan "#more /var/log/secure grep refused" untuk menyemak serangan pada sistem supaya bahawa anda boleh mengambil tindakan Tindakan balas yang sepadan, seperti menggunakan ssh untuk menggantikan telnet/rlogin, dsb.

2 Keselamatan permulaan dan log masuk

1. Keselamatan BIOS

Tetapkan kata laluan BIOS dan ubah suai urutan but untuk melarang but sistem daripada cakera liut.

2. Kata laluan pengguna

Kata laluan pengguna ialah titik permulaan asas untuk keselamatan Linux Kata laluan pengguna yang digunakan oleh ramai orang terlalu mudah, yang membuka pintu kepada penceroboh Walaupun secara teori, selagi ada masa dan sumber yang mencukupi , ia boleh Dengan bantuan Internet Security, tiada kata laluan pengguna yang tidak boleh dipecahkan, tetapi kata laluan yang dipilih dengan betul sukar untuk dipecahkan. Kata laluan pengguna yang lebih baik ialah rentetan aksara yang hanya dia boleh ingat dan faham dengan mudah, dan tidak boleh ditulis di mana-mana sahaja.

3. Akaun lalai

harus melarang semua akaun yang tidak diperlukan yang dimulakan oleh sistem pengendalian itu sendiri. lebih baik Sistem lebih terdedah kepada serangan.

Anda boleh menggunakan arahan berikut untuk memadam akaun.

# userdel用户名
Salin selepas log masuk

Atau gunakan arahan berikut untuk memadam akaun pengguna kumpulan.

rreeee

4. Fail kata laluan

arahan chattr menambah atribut yang tidak boleh ditukar pada fail berikut untuk menghalang pengguna yang tidak dibenarkan daripada mendapat kebenaran.

# groupdel username
Salin selepas log masuk

5. Lumpuhkan ctrl+alt+delete untuk memulakan semula mesin dengan arahan

untuk mengubah suai fail /etc/inittab dan mengulas baris "ca::ctrlaltdel:/sbin/shutdown -t3 -r now". Kemudian tetapkan semula kebenaran semua fail dalam direktori /etc/rc.d/init.d/ dan jalankan arahan berikut:

# chattr +i /etc/passwd

# chattr +i /etc/shadow

# chattr +i /etc/group

# chattr +i /etc/gshadow
Salin selepas log masuk

Kemudian hanya root boleh membaca, menulis atau melaksanakan semua fail skrip di atas.

6. Hadkan arahan su

Jika anda tidak mahu sesiapa pun boleh su sebagai root, anda boleh mengedit fail /etc/pam.d/su dan menambah dua baris berikut:

# chmod -r 700 /etc/rc.d/init.d/*
Salin selepas log masuk

Pada masa ini, hanya Pengguna kumpulan isd boleh su sebagai root. Selepas itu, jika anda mahu pentadbir pengguna boleh su sebagai root, anda boleh menjalankan arahan berikut:

auth sufficient /lib/security/pam_rootok.so debug

auth required /lib/security/pam_wheel.so group=isd
Salin selepas log masuk

7. Padam maklumat log masuk

Secara lalai, maklumat gesaan log masuk termasuk versi pengedaran Linux, nama versi kernel, nama hos pelayan, dsb. Untuk mesin dengan keperluan keselamatan yang tinggi, ini membocorkan terlalu banyak maklumat. Anda boleh mengedit /etc/rc.d/rc.local untuk mengulas baris berikut yang mengeluarkan maklumat sistem.

# usermod -g10 admin
Salin selepas log masuk

Kemudian, lakukan operasi berikut:

# this will overwrite /etc/issue at every boot. so, make any changes you

# want to make to /etc/issue here or you will lose them when you reboot.

# echo "" > /etc/issue

# echo "$r" >> /etc/issue

# echo "kernel $(uname -r) on $a $(uname -m)" >> /etc/issue

# cp -f /etc/issue /etc/issue.net

# echo >> /etc/issue
Salin selepas log masuk

3 Hadkan akses rangkaian

1. akses nfs

Jika anda menggunakan perkhidmatan sistem fail rangkaian nfs, anda harus memastikan bahawa /etc/exports anda mempunyai tetapan kebenaran akses yang paling terhad, yang bermaksud jangan gunakan sebarang kad bebas, jangan benarkan kebenaran menulis akar dan hanya Dipasang sebagai sistem fail baca sahaja. Edit fail /etc/exports dan tambahkan dua baris berikut.

# rm -f /etc/issue

# rm -f /etc/issue.net

# touch /etc/issue

# touch /etc/issue.net
Salin selepas log masuk

/dir/to/export ialah direktori yang anda mahu eksport, host.mydomain.com ialah nama mesin yang log masuk ke dalam direktori ini, ro bermaksud lekapkan sebagai sistem baca sahaja dan root_squash melarang root daripada menulis ke direktori ini. Untuk perubahan berkuat kuasa, jalankan arahan berikut.

rreeee

2. tetapan inetd

Mula-mula pastikan bahawa pemilik /etc/inetd.conf adalah akar dan kebenaran fail ditetapkan kepada 600. Selepas tetapan selesai, anda boleh menggunakan perintah "stat" untuk menyemak.

/dir/to/export host1.mydomain.com(ro,root_squash)

/dir/to/export host2.mydomain.com(ro,root_squash)
Salin selepas log masuk

Kemudian, edit /etc/inetd.conf untuk melumpuhkan perkhidmatan berikut.

# /usr/sbin/exportfs -a
Salin selepas log masuk

Jika anda telah memasang ssh/scp, anda juga boleh melumpuhkan telnet/ftp. Agar perubahan berkuat kuasa, jalankan arahan berikut:

# chmod 600 /etc/inetd.conf
Salin selepas log masuk

Secara lalai, kebanyakan sistem Linux membenarkan semua permintaan, dan menggunakan tcp_wrappers untuk meningkatkan keselamatan sistem adalah satu perkara yang penting Anda boleh mengubah suai /etc /. hosts.deny dan /etc /hosts.allow untuk meningkatkan sekatan akses. Sebagai contoh, menetapkan /etc/hosts.deny kepada "semua: semua" menafikan semua akses secara lalai. Kemudian tambahkan akses yang dibenarkan dalam fail /etc/hosts.allow. Contohnya, "sshd: 192.168.1.10/255.255.255.0 gate.openarch.com" bermaksud alamat IP 192.168.1.10 dan nama hos gate.openarch.com dibenarkan untuk menyambung melalui ssh.

Selepas konfigurasi selesai, anda boleh menyemaknya dengan tcpdchk:

ftp telnet shell login exec talk ntalk imap pop-2 pop-3 finger auth
Salin selepas log masuk

tcpchk ialah alat semakan konfigurasi tcp_wrapper, yang menyemak konfigurasi pembungkus tcp anda dan melaporkan semua potensi/masalah sedia ada ditemui.

3. Tetapan terminal log masuk

/etc/securetty fail menentukan peranti tty yang membenarkan log masuk akar Ia dibaca oleh program /bin/login Formatnya ialah senarai nama yang dibenarkan dan Komen baris berikut.

#killall -hup inetd
Salin selepas log masuk

Pada masa ini, root hanya boleh log masuk di terminal tty1.

4. Elakkan daripada memaparkan maklumat sistem dan versi.

Jika anda mahu pengguna log masuk jauh tidak melihat maklumat sistem dan versi, anda boleh menukar fail /etc/inetd.conf melalui operasi berikut:

# tcpdchk 
Salin selepas log masuk

Tambah -h untuk menunjukkan bahawa telnet tidak memaparkan maklumat sistem Sebaliknya, hanya "log masuk:" dipaparkan.

4 Mencegah serangan

1. Sekat ping Jika tiada sesiapa boleh ping sistem anda, keselamatan secara semula jadi meningkat. Untuk melakukan ini, anda boleh menambah baris berikut pada fail /etc/rc.d/rc.local:

# tty1

# tty2

# tty3

# tty4

# tty5

# tty6
Salin selepas log masuk

2. Elakkan penipuan IP

编辑host.conf文件并增加如下几行来防止ip欺骗攻击。

order bind,hosts

multi off

nospoof on 
Salin selepas log masuk

3.防止dos攻击

对系统所有的用户设置资源限制可以防止dos类型攻击。如最大进程数和内存使用数量等。例如,可以在/etc/security/limits.conf中添加如下几行:

  • * hard core 0

  • * hard rss 5000

  • * hard nproc 20

然后必须编辑/etc/pam.d/login文件检查下面一行是否存在。

session required /lib/security/pam_limits.so
Salin selepas log masuk

上面的命令禁止调试文件,限制进程数为50并且限制内存使用为5mb。

Atas ialah kandungan terperinci Cara Meningkatkan Keselamatan Pelayan Linux dan Unix. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!