Isu keselamatan rangkaian yang perlu diberi perhatian semasa membina pelayan web di CentOS
Dengan perkembangan pesat Internet, semakin banyak syarikat dan individu telah mula membina pelayan web mereka sendiri untuk mengehoskan laman web. Walau bagaimanapun, isu keselamatan rangkaian juga telah menjadi faktor yang tidak boleh diabaikan. Artikel ini akan memperkenalkan beberapa isu keselamatan rangkaian yang perlu diberi perhatian semasa membina pelayan CentOS, dan memberikan beberapa contoh kod untuk menggambarkan penyelesaian.
1. Kemas kini sistem dan perisian
Sebelum menyediakan pelayan web, anda perlu mengemas kini sistem dan perisian CentOS terlebih dahulu. Gunakan arahan berikut untuk mengemas kini sistem dan pakej anda serta memasang patch keselamatan terkini.
yum update -y
2. Lumpuhkan perkhidmatan yang tidak diperlukan
Apabila membina pelayan web, untuk mengurangkan kemungkinan permukaan serangan, beberapa perkhidmatan yang tidak diperlukan harus dilumpuhkan. Contohnya, matikan perkhidmatan yang tidak selamat seperti FTP dan Telnet, dan hanya dayakan perkhidmatan HTTP dan HTTPS yang diperlukan.
Gunakan arahan berikut untuk melumpuhkan perkhidmatan yang tidak diperlukan:
systemctl disable vsftpd systemctl disable xinetd
3. Konfigurasikan tembok api
CentOS mempunyai tembok api tembok api terbina dalam, yang boleh menyekat IP dan port mengakses pelayan dengan mengkonfigurasi peraturan tembok api. Berikut ialah contoh konfigurasi tembok api mudah:
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --zone=public --add-port=443/tcp --permanent firewall-cmd --reload
Konfigurasi di atas membenarkan akses HTTP dan HTTPS.
4. Gunakan penyulitan HTTPS
Apabila membina pelayan web, anda harus mempertimbangkan untuk menggunakan HTTPS untuk menyulitkan data yang dihantar. HTTPS menggunakan protokol SSL/TLS untuk menyulitkan data, yang boleh menghalang data daripada dicuri dan diusik dengan berkesan.
Pertama, anda perlu menjana sijil SSL dan kunci peribadi untuk pelayan. Berikut ialah contoh menggunakan OpenSSL untuk menjana sijil yang ditandatangani sendiri:
openssl req -newkey rsa:2048 -nodes -keyout server.key -x509 -days 365 -out server.crt
Server.key dan server.crt yang dijana ialah kunci peribadi dan fail sijil masing-masing. Kemudian, anda perlu meletakkan kedua-dua fail ini dalam direktori SSL pelayan web dan mengkonfigurasi pelayan web untuk menyokong akses HTTPS.
5. Lumpuhkan penyemakan imbas direktori yang tidak diperlukan
Apabila membina pelayan web, fungsi penyemakan imbas direktori yang tidak perlu harus dilumpuhkan untuk menghalang penggodam daripada mendapatkan maklumat senarai fail pada pelayan. Ini boleh dicapai dengan mengubah suai fail konfigurasi pelayan web.
Mengambil pelayan Apache sebagai contoh, anda boleh mengubah suai fail httpd.conf dan menambah baris berikut dalam direktori sasaran:
Options -Indexes
6. Hadkan muat naik fail
Apabila membina pelayan web, anda harus mengehadkan jenis dan saiz fail yang dimuat naik untuk mengelakkan Muat naik fail berniat jahat. Ini boleh dicapai dengan mengkonfigurasi pelayan web.
Mengambil pelayan Nginx sebagai contoh, anda boleh mengubah suai fail nginx.conf dan menambah baris berikut dalam blok http:
client_max_body_size 10m;
Konfigurasi di atas mengehadkan saiz maksimum fail yang dimuat naik kepada 10MB.
7. Lindungi kata laluan pangkalan data
Apabila membina pelayan web, jika pangkalan data digunakan, anda harus memberi perhatian untuk melindungi kata laluan pangkalan data. Ini boleh dicapai dengan menyimpan kata laluan pangkalan data dalam fail konfigurasi dan menetapkan kebenaran fail yang sesuai.
Contoh Kod:
import os def read_db_password(): with open('/var/www/config/db_config.txt', 'r') as f: password = f.read().strip() return password def main(): db_password = read_db_password() # do something with the password if __name__ == '__main__': main()
Kod contoh di atas menyimpan kata laluan pangkalan data dalam fail /var/www/config/db_config.txt
dan membaca kata laluan daripada fail. Pastikan fail hanya boleh dibaca oleh pengguna pelayan web.
Ringkasan:
Apabila membina pelayan web CentOS, isu keselamatan rangkaian tidak boleh diabaikan. Dengan mengemas kini sistem dan perisian, melumpuhkan perkhidmatan yang tidak diperlukan, mengkonfigurasi tembok api, menggunakan penyulitan HTTPS, melumpuhkan penyemakan imbas direktori yang tidak perlu, menyekat muat naik fail dan melindungi kata laluan pangkalan data, keselamatan rangkaian pelayan boleh dipertingkatkan dengan berkesan. Pembangun dan pentadbir pelayan harus memberi perhatian yang teliti terhadap ancaman keselamatan terkini dan mengambil langkah keselamatan yang sesuai untuk melindungi keselamatan data pelayan dan pengguna.
Atas ialah kandungan terperinci Isu keselamatan rangkaian yang perlu diberi perhatian semasa membina pelayan web pada CentOS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!