網絡安全是一個非常重要的課題,基本上你運行的服務后臺越多,你就可能打開更多的安全漏洞.如果配置的恰當的話,Linux本身是非常安全可靠的,假使在Linux系統中有某個安全缺陷,由于Linux的源碼是開放的,有成千上萬的志愿者會立刻發現并修補它。本文旨在介紹用來增強你的網絡安全性的常用技巧,以Redhat Linux作為操作環境。
1.操作系統內部的log file是檢測是否有網絡入侵的重要線索,當然這個假定你的logfile不被侵入者所破壞,如果你有臺服務器用專線直接連到Internet上,這意味著你的IP地址是永久固定的地址,你會發現有很多人對你的系統做telnet/ftp登錄嘗試,試著運行#more /var/log/secure | grep refused 去檢查。
2. 限制具有SUID權限標志的程序數量,具有該權限標志的程序以root身份運行,是一個潛在的安全漏洞,當然,有些程序是必須要具有該標志的,象passwd程序。
3.BIOS安全。設置BIOS密碼且修改引導次序禁止從軟盤啟動系統。
4. 用戶口令。用戶口令是Linux安全的一個最基本的起點,很多人使用的用戶口令就是簡單的‘password,這等于給侵入者敞開了大門,雖然從理論上說沒有不能確解的用戶口令,只要有足夠的時間和資源可以利用。比較好的用戶口令是那些只有他自己能夠容易記得并理解的一串字符,并且絕對不要在任何地方寫出來。
5./etc/exports 文件。如果你使用NFS網絡文件系統服務,那么確保你的/etc/exports具有最嚴格的存取權限設置,這意味著不要使用任何通配符,不允許root寫權限,mount成只讀文件系統。編輯文件/etc/exports并且加:例如:
/dir/to/export host1.mydomain.com(ro,root_squash) /dir/to/export host2.mydomain.com(ro,root_squash) |
/dir/to/export 是你想輸出的目錄,host.mydomain.com是登錄這個目錄的機器名,ro意味著mount成只讀系統,root_squash禁止root寫入該目錄。
為了讓上面的改變生效,運行/usr/sbin/exportfs -a
6.確信/etc/inetd.conf的所有者是root,且文件權限設置為600 。
[root@deep]# chmod 600 /etc/inetd.conf ENSURE that the owner is root. [root@deep]# stat /etc/inetd.conf File: "/etc/inetd.conf" Size: 2869 Filetype: Regular File Mode: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root) Device: 8,6 Inode: 18219 Links: 1 Access: Wed Sep 22 16:24:16 1999(00000.00:10:44) Modify: Mon Sep 20 10:22:44 1999(00002.06:12:16) Change:Mon Sep 20 10:22:44 1999(00002.06:12:16) |
編輯/etc/inetd.conf禁止以下服務:
ftp, telnet, shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger, auth, etc. 除非你真的想用它。特別是禁止那些r命令.如果你用ssh/scp,那么你也可以禁止掉telnet/ftp。
為了使改變生效,運行#killall -HUP inetd 你也可以運行#chattr +i /etc/inetd.conf使該文件具有不可更改屬性。只有root 才能解開,用命令 #chattr -i /etc/inetd.conf
7. TCP_WRAPPERS
默認地,Redhat Linux允許所有的請求,用TCP_WRAPPERS增強你的站點的安全性是舉手之勞,你可以放入
“ALL: ALL”到/etc/hosts.deny中禁止所有的請求,然后放那些明確允許的請求到/etc/hosts.allow中,如:
sshd: 192.168.1.10/255.255.255.0 gate.openarch.com |
對IP地址192.168.1.10和主機名gate.openarch.com,允許通過ssh連接。配置完了之后,用tcpdchk檢查
[root@deep]# tcpdchk |
8. 別名文件aliases
編輯別名文件/etc/aliases(也可能是/etc/mail/aliases),移走/注釋掉下面的行。
# Basic system aliases -- these MUST be present. MAILER-DAEMON: postmaster postmaster: root # General redirections for pseudo accounts. bin: root daemon: root #games: root ?remove or comment out. #ingres: root ?remove or comment out. nobody: root #system: root ?remove or comment out. #toor: root ?remove or comment out. #uucp: root ?remove or comment out. # Well-known aliases. #manager: root ?remove or comment out. #dumper: root ?remove or comment out. #operator: root ?remove or comment out. # trap decode to catch security attacks #decode: root # Person who should get roots mail #root: marc |
共3頁: 1 [2] [3] 下一頁 | ||
|