網絡上的服務器很容易受到攻擊,最慘的就是被人登錄並拿到root權限。有幾個簡單的防御措施:
1. 修改ssh服務的默認端口###
ssh服務的默認端口是22,一般的惡意用戶也往往掃描或嘗試連接22端口。所以第一步就是修改這個默認端口
打開/etc/ssh/sshd_config,找到
Port 22
然后將22修改為其它沒有被占用的端口,如1022。最好在1-1024之間,防止與用戶進程端口沖突。
然后重啟sshd即可
sudo /etc/init.d/ssh restart
2. 限制IP###
首先修改/etc/hosts.allow文件,將可訪問服務器ssh服務的客戶IP加入其中,格式如下
sshd:192.168.1.0/255.255.255.0
sshd: 202.114.23.45
sshd: 211.67.67.89
然后修改/etc/hosts.deny文件,加入禁用其它客戶連接ssh服務
sshd: ALL
3.升級服務器###
矛與盾的故事永遠沒有結局,經常升級服務器是必備的
apt-get update
apt-get dist-upgrade
4.檢查登錄日志###
不怕一萬,就怕萬一,沒有攻不破的城堡,有些小偷可能是小白,或者來也匆匆,去也匆匆,在服務器上做完壞事沒有擦除痕跡,所以經常檢查登錄日志,也是一種安全手段
more /var/log/secure // 新版的Ubuntu都沒有這個文件了
who /var/log/wtmp
干了些什么?
root賬戶下輸入su - username
切換到username下輸入
history
能看到這個用戶歷史命令,默認最近的1000條
5、在終端中查看日志###
dmesg的命令顯示Linux內核的消息緩沖器,其被存儲在存儲器中。運行這個命令,你會得到很多的輸出。
要過濾此輸出並搜索你感興趣的消息,你可以將使用管道grep:
dmesg | grep something
你還可以將dmesg命令的輸出管道用less,這樣可以按照你自己的速度滾動瀏覽消息。要退出less,請按Q。
dmesg | less
如果一個grep搜索產生大量的結果,你可以將其輸出管道用less:
dmesg | grep something | less
除了在任何文本編輯器中打開位於/var/log中的日志文件之外,還可以使用cat命令將日志(或任何其他文件)的內容打印到終端:
cat /var/log/syslog
像上面的dmesg命令一樣,這將產生大量的輸出。你可以使用grep和less命令來處理輸出:
grep something /var/log/syslog
less /var/log/syslog
其他有用的命令包括頭和尾命令。頭打印文件中的前n行,而尾部打印文件中的最后n行,如果要查看最近的日志消息,則tail命令特別有用。
head -n 10 /var/log/syslog
tail -n 10 /var/log/syslog
某些應用程序可能不會寫入系統日志,並且可能會產生自己的日志文件,你可以使用相同的方式進行操作,通常也可以在/var/log目錄中找到它們。例如,Apache Web服務器創建一個包含其日志的/var/log/apache2目錄。
6、常用日志目錄代表的意思###
=> /var/log/messages:常規日志消息
=> /var/log/boot:系統啟動日志
=> /var/log/debug:調試日志消息
=> /var/log/auth.log:用戶登錄和身份驗證日志
=> /var/log/daemon.log:運行squid,ntpd等其他日志消息到這個文件
=> /var/log/dmesg:Linux內核環緩存日志
=> /var/log/dpkg.log:所有二進制包日志都包括程序包安裝和其他信息
=> /var/log/faillog:用戶登錄日志文件失敗
=> /var/log/kern.log:內核日志文件
=> /var/log/lpr.log:打印機日志文件
=> /var/log/mail.:所有郵件服務器消息日志文件
=> /var/log/mysql.:MySQL服務器日志文件
=> /var/log/user.log:所有用戶級日志
=> /var/log/xorg.0.log:X.org日志文件
=> /var/log/apache2/:Apache Web服務器日志文件目錄
=> /var/log/lighttpd/:Lighttpd Web服務器日志文件目錄
=> /var/log/fsck/*:fsck命令日志
=> /var/log/apport.log:應用程序崩潰報告/日志文件
=> /var/log/syslog:系統日志
=> /var/log/ufw:ufw防火牆日志
=> /var/log/gufw:gufw防火牆日志
使用tail,more,less和grep命令。
tail -f /var/log/apport.log
more /var/log/xorg.0.log
cat /var/log/mysql.err
less /var/log/messages
grep -i fail /var/log/boot