day01
一、selinux安全防護
二、資料 加密 解密
三、抓包與掃描
++++++++++++++++++++++++++++++
1.1 selinux 介紹
1.2 linux安全保護模型?
1.3 檢視目前系統selinux的狀态
[root@svr7 ~]# sestatus
1.4 selinux配置檔案
[root@host50 ~]# cat /etc/selinux/config
1.5 檢視安全上下文
檢視程序 ps aux -Z
ps aux -Z | grep -i 程序名
檢視檔案 ls -lZ 檔案名
檢視目錄 ls -ldZ 目錄名
1.6 安全上下文的組成?
system_u:object_r:passwd_file_t:s0
system_u:object_r:net_conf_t:s0
使用者:角色:通路類型:參數
1.7 常見的通路類型?
1.8 SELinux啟用後的一般操作規律?
建立新檔案時,新檔案繼承父目錄的安全上下文。
移動檔案時,保持原有的安全上下文不變
拷貝檔案時,繼承目标目錄的安全上下文
1.9 修改通路類型?
]# chcon -R -t 通路類型 目錄名 //遞歸修改
]# chcon -t 通路類型 檔案名
]# chcon -t httpd_sys_content_t /var/www/html/test1.html
1.10 恢複檔案通路類型?
]# restorecon -R 目錄名 //遞歸恢複
]# restorecon 檔案名
]# restorecon /var/www/html/test2.html
練習檔案selinux 通路類型的修改 (以網站服務檔案為例)
1.11 selinux布爾值 (功能開關)
檢視bool值
#getsebool -a
#getsebool -a | grep -i ftp
修改bool值
#setsebool -P 選項=1|0
#setsebool -P 選項 on|off
環境準備,啟動vsftpd服務,配置允許匿名ftp使用者, 可以上傳和下載下傳檔案到/var/ftp/shardir目錄裡。
[root@host50 ~]# sed -n '29p' /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES
[root@host50 ~]#
[root@host50 ~]# mkdir /var/ftp/shardir
[root@host50 ~]# chmod o+w /var/ftp/shardir
[root@host50 ~]# systemctl restart vsftpd
592 setsebool -P ftpd_anon_write=1
593 setsebool -P ftpd_full_access on
594 getenforce -a | grep -i ftp
597 setenforce 1
用戶端:
yum -y install ftp
lcd 切換到本機目錄
get 下載下傳
put 上傳
+++++++++++++++++++++++++++++++++++++
啟用selinux日志程式記錄報錯資訊:
啟用selinux 後,修改網站服務使用的端口号為8090。
[root@host50 ~]# cat /var/log/messages | grep -n -i setroubleshoot | tail -1
37272:Jan 28 22:38:31 host50 setroubleshoot: SELinux is preventing /usr/sbin/httpd from name_bind access on the tcp_socket port 8090. For complete SELinux messages. run sealert -l a9db74ee-ff0d-45c7-8a4d-34d4bf5bc3c4
[root@host50 ~]# sealert -l a9db74ee-ff0d-45c7-8a4d-34d4bf5bc3c4
]# semanage port -a -t http_port_t -p tcp 8090
+++++++++++++++++++++++++++++++
2.1 為什麼要加密?
2.2 什麼加密? 什麼是解密?
發送方 加密 接收方 解密
2.3 什麼是算法? 加/解密計算規則
秘鑰(公鑰加密 私鑰解密)
|——> 可以是指令 或 一段代碼
2.4 加密方式?
對稱加密: 加密和解密使用相同的計算規則
非對稱加密:加密和解密使用不相同的計算規則
對稱加密算法: DES AES
非對稱加密算法: RSA DSA
Hash散列技術,保證資料的完整性。 md5 sha
gpg 對稱加密 -c -d
發 收
usera -------------- > userb
usera 加密 gpg -c 檔案名
userb 解密 gpg -d 檔案名
++++++++++++++++++++++++++
gpg 非對稱加密(使用密鑰對)
公鑰 加密
私鑰 解密
userb(解密 )
1 建立密鑰對 ~/.gnupg/
#gpg --gen-key
#ls ~/.gnupg/
2 導出公鑰 并把公鑰檔案傳給usera
[userb@room9pc17 ~]$ gpg --export -a > /tmp/userb.pub
[userb@room9pc17 ~]$ cat /tmp/userb.pub
usera(加密)
1 導入公鑰檔案~/.gnupg
[usera@room9pc17 ~]$ gpg --import /tmp/userb.pub
[usera@room9pc17 ~]$ ls ~/.gnupg
2 使用公鑰加密檔案 ,把加密後的檔案給userb
[usera@room9pc17 ~]$ gpg -e -r usera b.txt
[usera@room9pc17 ~]$ mv b.txt.gpg /tmp/
3 userb解密
調用私鑰解密 解密檔案
[userb@room9pc17 ~]$ gpg -d /tmp/b.txt.gpg > u.txt
cat u.txt
++++++++++++++++++++++++++++++++++
gpg數字簽名 功能驗證資料完整性
-b --verify --fingerprint
userb
私鑰簽名
26 vim c.txt
28 gpg -b c.txt
ls c.
30 cp c. /tmp/
33 gpg --fingerprint
usera
公鑰驗證簽名
#gpg --verify /tmp/c.txt.sig
#cat /tmp/c.txt
root# sed -i '1s/^/aaa/' /tmp/c.txt
3.1 掃描nmap
3.2 抓包tcpdump
3.3 協定分析軟體的使用wireshark
180 which nmap
181 rpm -qf /bin/nmap
182 rpm -q nmap
文法格式
#nmap [掃描類型] [選項] <ip位址>
掃描類型有哪些? -sS -sT -sU -sP
選項有哪些? -A -n -p
ip位址表示方式?
192.168.4.53
192.168.4.100-200
192.168.4.53,57,68
#nmap -sP 172.40.55.122
185 nmap -sP 172.40.55.122
186 nmap -sP 172.40.55.180
187 nmap 172.40.55.180
188 nmap -n -sT -p 80 172.40.55.180
189 nmap -n -sT -p 25,80 172.40.55.180
190 nmap -n -sT -p 21-100,3306 172.40.55.180
191 nmap -n -A 172.40.55.180
#vim /root/ip.txt
172.40.55.143
172.40.55.158
172.40.55.180
:wq
vim /root/web.sh
#/bin/bash
for ip in 180 143 158
do
nmap -n -sS -p 80 172.40.55.$ip | grep -q open
if [ $? -eq 0 ];then
echo " 172.40.55.$ip 80 open"
else
echo " 172.40.55.$ip 80 closed"
fi
done
+++++++++++++++++++++++++++++
#mkdir /myself
#mv /root/web.sh /myself/checkweb
#chmod +x /myself/checkweb
#vim /etc/profile
....
export PATH=/myself:$PATH
#resource /etc/profile
#echo $PATH
#cd /usr/local/
#checkweb
++++++++++++++++++++++++++++++++++++
#checkweb 3306 112 130 129
#checkweb 11211 112 130 129
tcpdump [選項] [過濾條件]
選項
-i 網絡接口名 //不指定接口名時,預設抓eth0 接口進出的包
-c 數字 //指定抓包個數,不指定的話會一直抓包
-A //以可閱讀的方式抓取資料包
-w 檔案名.cap //把抓到的資料資訊存儲到檔案裡。預設會輸出到螢幕上。
-r 檔案名.cap //讀取抓封包件的内容
110 tcpdump
112 tcpdump -i br1
113 tcpdump -i br1 -c 2
114 tcpdump -i br1 -c 2 -A
115 tcpdump -i br1 -c 2 -A -w /tmp/tcpdump.cap
116 tcpdump -A -r /tmp/tcpdump.cap
過濾條件: 抓包時,不加過濾條件,會抓所有到達的資料包。反之,隻抓複合條件的資料包。
[root@host50 ~]# tcpdump -i eth0 -A
[root@host50 ~]# tcpdump -i eth0 -A tcp port 8090
[root@host50 ~]# tcpdump -i eth0 -A tcp port 8090 and host 192.168.4.53
[root@host50 ~]#tcpdump -i eth0 -A tcp port 22 and net 192.168.4.0/24
[root@host50 ~]#tcpdump -i eth0 -A tcp port 22 and not host 192.168.4.53
[root@host50 ~]#tcpdump -i eth0 -A
tcp port 8090 and host 192.168.4.53 or host 192.168.4.54
[root@host50 ~]#tcpdump -i eth0 -A
tcp port 8090 and (host 192.168.4.53 or host 192.168.4.54)
[root@host52 ~]#tcpdump -i eth0 -A tcp port 25 -w /tmp/mail2.cap
[root@host52 ~]#tcpdump -A -r /tmp/mail2.cap
[root@host52 ~]# scp /tmp/mail2.cap 192.168.4.254:/root/
3.3 協定分析軟體的使用wireshark (主控端)
安裝軟體包
打開圖形界面
應用程式->網際網路->軟體名 ---> 檔案菜單->打開檔案/root/mail2.cap
tcp 傳輸協定 标記位
SYN 新連接配接
ACK 确認連接配接
FIN 斷開連接配接
push( P) 傳輸資料
RST 重建立立連接配接
應用層 http smtp ftp
傳輸層 tcp upd
網絡層 ip包
實體層 資料流 (0101)
本文轉自sweak_h 51CTO部落格,原文連結:http://blog.51cto.com/13478354/2067028,如需轉載請自行聯系原作者