天天看點

linux安全手冊

   12、"/etc/services"檔案免疫

  使"/etc/services"檔案免疫,防止未經許可的删除或添加服務:

  [[email protected] /]# chattr +i /etc/services

  13、不允許從不同的控制台進行root登陸

  "/etc/securetty"檔案允許你定義root使用者可以從那個TTY裝置登陸。你可以編輯"/etc/securetty"檔案,再不需要登陸的TTY裝置前添加"#"标志,來禁止從該TTY裝置進行root登陸。

  14、禁止通過su指令改變為root使用者

  su(Substitute User替代使用者)指令允許你成為系統中其他已存在的使用者。如果你不希望任何人通過su指令改變為root使用者或對某些使用者限制使用su指令,你可以在su配置檔案(在"/etc/pam.d/"目錄下)的開頭添加下面兩行:

  編輯su檔案(vi /etc/pam.d/su),在開頭添加下面兩行:

  auth sufficient /lib/security/pam_rootok.so debug

  auth required /lib/security/Pam_wheel.so group=wheel

  這表明隻有"wheel"組的成員可以使用su指令成為root使用者。你可以把使用者添加到"wheel"組,以使它可以使用su指令成為root使用者。

15、Shell logging

  Bash shell在"~/.bash_history"("~/"表示使用者目錄)檔案中儲存了500條使用過的指令,這樣可以使你輸入使用過的長指令變得容易。每個在系統中擁有賬号的使用者在他的目錄下都有一個".bash_history"檔案。bash shell應該儲存少量的指令,并且在每次使用者登出時都把這些曆史指令删除。<!--IWMS_AD_BEGIN-->

<script src="../../system/system60.js" type="text/javascript"></script>

<!--IWMS_AD_END-->

  第一步:

  "/etc/profile"檔案中的"HISTFILESIZE"和"HISTSIZE"行确定所有使用者的".bash_history"檔案中可以儲存的舊指令條數。強烈建議把把"/etc/profile"檔案中的"HISTFILESIZE"和"HISTSIZE"行的值設為一個較小的數,比如 30。編輯profile檔案(vi /etc/profile),把下面這行改為:

  HISTFILESIZE=30

  HISTSIZE=30

  這表示每個使用者的".bash_history"檔案隻可以儲存30條舊指令。

  第二步:

  網管還應該在"/etc/skel/.bash_logout" 檔案中添加下面這行"rm -f  $HOME/.bash_history" 。這樣,當使用者每次登出時,".bash_history"檔案都會被删除。

  編輯.bash_logout檔案(vi /etc/skel/.bash_logout) ,添加下面這行:

  rm -f $HOME/.bash_history

  16、禁止Control-Alt-Delete 鍵盤關閉指令

  在"/etc/inittab" 檔案中注釋掉下面這行(使用#):

  ca::ctrlaltdel:/sbin/shutdown -t3 -r now

  改為:

  #ca::ctrlaltdel:/sbin/shutdown -t3 -r now

  為了使這項改動起作用,輸入下面這個指令:

  [[email protected] /]# /sbin/init q

 17、給"/etc/rc.d/init.d" 下script檔案設定權限

  給執行或關閉啟動時執行的程式的script檔案設定權限。

  [[email protected]/]# chmod -R 700 /etc/rc.d/init.d/*

  這表示隻有root才允許讀、寫、執行該目錄下的script檔案。

  在預設情況下,當你登陸到linux系統,它會告訴你該linux發行版的名稱、版本、核心版本、伺服器的名稱。對于黑客來說這些資訊足夠它入侵你的系統了。你應該隻給它顯示一個"login:"提示符。

  第一步:

  編輯"/etc/rc.d/rc.local" 檔案,在下面顯示的這些行前加一個"#",把輸出資訊的指令注釋掉。<!--IWMS_AD_BEGIN-->

<script src="../../system/system60.js" type="text/javascript"></script>

<!--IWMS_AD_END-->

  # 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

  第二步:

  删除"/etc"目錄下的"isue.net"和"issue"檔案:

  [[email protected] /]# rm -f /etc/issue

  [[email protected] /]# rm -f /etc/issue.net

3.預設賬号

  應該禁止所有預設的被作業系統本身啟動的并且不必要的賬号,當你第一次安裝系統時就應該這麼做,Linux提供了很多預設賬号,而賬号越多,系統就越容易受到攻擊。

  可以用下面的指令删除賬号。

  # userdel使用者名

  或者用以下的指令删除組使用者賬号。

  # groupdel username

  4.密碼檔案

  chattr指令給下面的檔案加上不可更改屬性,進而防止非授權使用者獲得權限。

  # chattr +i /etc/passwd

  # chattr +i /etc/shadow

  # chattr +i /etc/group

  # chattr +i /etc/gshadow

7.删減登入資訊

  預設情況下,登入提示資訊包括Linux發行版、核心版本名和伺服器主機名等。對于一台安全性要求較高的機器來說這樣洩漏了過多的資訊。可以編輯/etc/rc.d/rc.local将輸出系統資訊的如下行注釋掉。

  # 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 "">>/etc/issue

  # echo "Kernel 100 100uname -r) on 100 100uname -m)">>/etc/issue

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

  # echo>>/etc/issue

  然後,進行如下操作:

  # rm -f /etc/issue

  # rm -f /etc/issue.net

  # touch /etc/issue

  # touch /etc/issue.net

linux中防止别人用ping指令來測試自己 收藏

<script type="text/javascript"></script><script type="text/javascript"></script>

既然沒有人能ping通你的機器并收到響應,你可以大大增強你的站點的安全性。你可以加下面的一行指令到/etc/rc.d/rc.local,以使每次啟動後自動運作,這樣就可以阻止你的系統響應任何從外部/内部來的ping請求。

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

當然echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all 就又可以讓别人ping 得通自己了哈!