Linux操作系統下防黑實用技巧
Linux操作系統下防黑技巧
Linux是一個多用户的系統,一旦人家取得你的root用户之後,他就可以在你的系統上為所欲為了,由於單用户對系統有完全的控制權限,如果操作不當或被他人進入,那麼後果將不堪設想,如何防止入行單用户了,有以下幾個注意的方面。
1、對/etc/inittab文件進行保護,如果把id:3: initdefault中的3改為成1,就可以每次啟動直接進入到單用户方式。對/etc/inittab文件,以root身份進入通過chown 700 /etc/inittab把屬性設為其它用户不能修改就行了。
2、如果是使用的lilo方式進行引導,可能通過linuxconf或直接修改把引導時等待輸入時間設置為0或最短時行。這種情況下,如果進入單用户方式,可以用軟盤進行引導。
3、如果使用是GRUB方式進行引導,最簡單的方法是使用GRUB密碼,對啟動選項進行保護。
4、為了防止他人遠程進行破壞,使系統重啟,除了對ROOT的密碼和/etc目錄下的文件進行有效管理之外,還應當對CMOS進行密碼設置,這樣即使把系統改成單用户方式了,也無法直接的啟動計算機進行操作。
VPS常用安全設置(linux)(一)
一、修改SSH端口
vi /etc/ssh/sshd_config
找到其中的#Port 22(第13行),去掉#,修改成Port 3333
使用如下命令,重啟SSH服務,注:以後用新端口登陸。
service sshd restart
二、禁止ROOT登陸
先添加一個新帳號80st ,可以自定義:
useradd 80st
給weidao 帳號設置密碼:
passwd 80st
仍舊是修改/etc/ssh/sshd_config文件,第39行:#PermitRootLogin yes,去掉前面的#,並把yes改成no,然後,重啟SSH服務。以後,先使用weidao 登陸,再su root即可得到ROOT管理權限。
login as: 80st
weidao@ip password:*****
Last login: Tue Nov 22 15:18:18 2011 from
su root
Password:*********** #注這裏輸入ROOT的`密碼
三、使用DDos deflate簡單防落CC和DDOS攻擊
使用netstat命令,查看VPS當前鏈接確認是否受到攻擊:
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n
IP前面的數字,即為連接數,如果説正常網站,幾十到一百都屬於正常連接,但出現幾百,或上千的就可以墾定這個IP與你的VPS之間可能存在可疑連接現象。
可以使用iptables直接BAN了這個IP的永久訪問:
iptables -A INPUT -s -j DROP
使用軟件DDos deflate來自動檢測並直接BAN掉的方法,首先要確認一下iptables服務狀態,默認CENTOS就安裝的,不看也行。
service iptables status
安裝DDos deflat:
wget
chmod +x
./
安裝後需要修改/usr/local/ddos/,主要是APF_BAN=1要設置成0,因為要使用iptables來封某些可疑連接,注意EMAIL_TO=”root”,這樣BAN哪個IP會有郵件提示:
##### Paths of the script and other files
PROGDIR=”/usr/local/ddos”
PROG=”/usr/local/ddos/”
IGNORE_IP_LIST=”/usr/local/ddos/” //IP地址白名單
CRON=”/etc/cron.d/”//定時執行程序
APF=”/etc/apf/apf”
IPT=”/sbin/iptables”
##### frequency in minutes for running the script
##### Caution: Every time this setting is changed, run the script with –cron
##### option so that the new frequency takes effect
FREQ=1 //檢查時間間隔,默認1分鐘
##### How many connections define a bad IP? Indicate
that below.
NO_OF_CONNECTIONS=150 //最大連接數,超過這個數IP就會被屏蔽,一般默認即可
##### APF_BAN=1 (Make sure your APF version is atleast 0.96)
##### APF_BAN=0 (Uses iptables for banning ips instead of APF)
APF_BAN=1 //使用APF還是iptables。推薦使用iptables,將APF_BAN的值改為0即可。
##### KILL=0 (Bad IPs are’nt banned, good for interactive execution of script)
##### KILL=1 (Recommended setting)
KILL=1 //是否屏蔽IP,默認即可
##### An email is sent to the following address when an IP is banned.
##### Blank would suppress sending of mails
EMAIL_TO=”root”//當IP被屏蔽時給指定郵箱發送郵件,推薦使用,換成自己的郵箱即可
##### Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600 //禁用IP時間,默認600秒,可根據情況調整
四、使用iftop查看詳細網絡狀況
安裝IFTOP軟件:
yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-devel
wget
tar zxvf
cd iftop-0.17
./configure
make && make install
安裝後,使用iftop運行,查看網絡情況。TX,發送流量;RX,接收流量;TOTAL,總流量;Cumm,運行iftop期間流量;peak,流量峯值;rates,分別代表2秒、10秒、40秒的平均流量。
快捷鍵:h幫助,n切換顯示IP主機名,s是否顯示本機信息,d是否顯示遠端信息,N切換端口服務名稱,b切換是否時數流量圖形條。
五、升級LNMP中的NGINX到最新版
現在最新版是0.8.53,如果以後出新版,只要更新版本號就可以,在SSH裏運行:
wget
tar zxvf
cd nginx-0.8.53
./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-http_sub_module
make
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/
cd objs/
cp nginx /usr/local/nginx/sbin/
/usr/local/nginx/sbin/nginx -t
kill -USR2 `cat /usr/local/nginx/logs/`
kill -QUI
T `cat /usr/local/nginx/logs/in`
/usr/local/nginx/sbin/nginx -v
cd ..
cd ..
rm -rf nginx-0.8.53
rm -rf
六、常用netstat命令:
1.查看所有80端口的連接數
netstat -nat|grep -i “80″|wc -l
2.對連接的IP按連接數量進行排序
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n
3.查看TCP連接狀態
netstat -nat |awk ‘{print $6}’|sort|uniq -c|sort -rn
netstat -n | awk ‘/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}’
netstat -n | awk ‘/^tcp/ {++state[$NF]}; END {for(key in state) print key,” ”,state[key]}’
netstat -n | awk ‘/^tcp/ {++arr[$NF]};END {for(k in arr) print k,” ”,arr[k]}’
netstat -n |awk ‘/^tcp/ {print $NF}’|sort|uniq -c|sort -rn
netstat -ant | awk ‘{print $NF}’ | grep -v ‘[a-z]‘ | sort | uniq -c
4.查看80端口連接數最多的20個IP
netstat -anlp|grep 80|grep tcp|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -nr|head -n20
netstat -ant |awk ‘/:80/{split($5,ip,”:”);++A[ip[1]]}END{for(i in A) print A,i}’ |sort -rn|head -n20
5.用tcpdump嗅探80端口的訪問看看誰最高
tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F”.” ‘{print $1″.”$2″.”$3″.”$4}’| sort | uniq -c | sort -nr |head -20
6.查找較多time_wait連接
netstat -n|grep TIME_WAIT|awk ‘{print $5}’|sort|uniq -c|sort -rn|head -n20
7.找查較多的SYN連接
netstat -an | grep SYN | awk ‘{print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -nr | more
linux中php如何安裝CURL擴展方法
如果php已經在系統編譯好,後來又需要添加新的擴展。一種方式就是重新完全編譯php,另一種方式就是單獨編譯擴展庫,以extension的形式擴展。下面以安裝curl擴展為例:
1、下載curl安裝包。(我的php是4.4.4的,下載最新的curl 7.16 不能使用,最後下載7.14的才可以,所以要注意一下版本問題)
./configure
make
php要求curl的目錄要有include和lib目錄,並且include下要有easy.h 和curl.h兩個文件,lib下要有libcurl.a。經編譯後include下的文件有了,但是lib目錄下沒有。原來生成到lib/目錄下,所以要copy到lib目錄
2、進入安裝原php的源碼目錄
cd ext
cd curl
phpize
./configure --with-curl=DIR
make
就會在PHPDIR/ext/curl/moudles/下生成的文件。
3、複製文件到extensions的配置目錄,修改就好
-
嵌入式操作系統的區別
嵌入式操作系統是一種支持嵌入式系統應用的操作系統軟件,它是嵌入式系統的重要組成部分。嵌入時操作系統具有通用操作系統的基本特點,能夠有效管理複雜的系統資源,並且把硬件虛擬化。一起來看看嵌入式操作系統的區別有哪些!從應用角度可分為通用型嵌入式操作系統...
-
Win8.1對比Win8有哪些改進
Windows8.1將在Windows8的基礎上增加開始按鈕,但是按下開始按鈕後會來到WindowsUI界面。Windows8.1的WindowsUI界面將有4種大小的磁貼。Windows8.1的owsUI界面壁紙終於可以和傳統桌面壁紙同步了。Windows8.1搭載了最新的IE11瀏覽器,上網功耗更少了。Windows8.1的...
-
電腦開機密碼忘記應對策略
為了保護個人隱私,我們經常會將電腦設置上個人密碼,但是當忘記密碼時應該怎麼辦呢?下面是小編給大家提供的電腦開機密碼忘記應對策略,大家可以參考閲讀,更多詳情請關注應屆畢業生考試網。方法一在開機時,按下F8進入帶命令提示符的安全模式,輸入NETUSER用户名123456/A...
-
拯救Win XP操作系統假死的三招妙計
使用WindowsXP時間比較長後,有時運行會很不流暢,甚至會不響應鼠標鍵盤對操作。很多時候是系統的假死。和真正的死機不同,假死完全可以被“救活”。假死的根源在於(整個圖形界面的驅動)。既然會假死,那就一定有解決方法,下面就為朋友們介紹一些拯救系統假死的方法。...