security 02: 加密与解密 、 扫描与抓包 、 总结和答疑 、 SELinux安全防护

day01
一、selinux安全防护
二、数据 加密 解密
三、抓包与扫描
++++++++++++++++++++++++++++++
一、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 非对称加密(使用密钥对)
公钥 加密
私钥 解密
发 收
usera -------------- > userb
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
usera
#cat /tmp/c.txt
#gpg --verify /tmp/c.txt.sig
+++++++++++++++++++++++++++++++
三、抓包与扫描
3.1 扫描nmap
3.2 抓包tcpdump 
3.3 协议分析软件的使用wireshark

3.1 扫描nmap
180 which nmap
181 rpm -qf /bin/nmap
182 rpm -q nmap

man 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

nmap -n -sP 172.40.55.100-200 --exclude 172.40.55.143,172.40.55.158

#vim /root/ip.txt
172.40.55.143
172.40.55.158
172.40.55.180
:wq

nmap -n -sP 172.40.55.100-200 --excludefile /root/ip.txt

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
:wq
+++++++++++++++++++++++++++++
#mkdir /myself
#mv /root/web.sh /myself/checkweb
#chmod +x /myself/checkweb

#vim /etc/profile
....
export PATH=/myself:$PATH
:wq

#resource /etc/profile
#echo $PATH
#cd /usr/local/
#checkweb

++++++++++++++++++++++++++++++++++++
#checkweb 3306 112 130 129
#checkweb 11211 112 130 129

3.2 抓包tcpdump 
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 (宿主机)
安装软件包

yum -y install wireshark wireshark-gnome

rpm -q wireshark wireshark-gnome

打开图形界面
应用程序->互联网->软件名 ---> 文件菜单->打开文件/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,如需转载请自行联系原作者




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 注:一共五部分,请全部下载完成后,放同一目录下解决即可。 目录: 第1章 窗体及菜单设计 实例001 自定义最大化、最小化和关闭按钮 2 实例002 磁性窗体的设计 5 实例003 鼠标穿透窗体 12 实例004 窗体的浮动及隐藏 14 实例005 手动改变自制窗体的大小 16 实例006 自定义屏保 19 实例007 向窗体中拖放图片并显示 22 实例008 仿Windows XP系统的任务栏菜单 26 实例009 用树型列表动态显示菜单 28 第2章 控件开发与应用 实例010 自定义水晶按钮控件 34 实例011 自制数值文本框组件 38 实例012 美化单选按钮和复选按钮 43 实例013 重绘ListBox控件 48 实例014 带行数和标尺的RichTextBox 49 实例015 根据文件大小显示文件复制进度条 54 实例016 弹出模式窗口显示进度条 58 实例017 Popup窗口提醒 61 实例018 Vista风格的日历 64 实例019 像Excel一样复制DataGridView中的单元格区域数据 69 实例020 DataGridView中单元格合并及添加、显示行号 74 实例021 从DataGridView控件中拖放数据到TreeView控件 78 第3章 图形图像及多媒体应用 实例022 生成中文验证码 86 实例023 生成图片缩略图 88 实例024 不失真压缩图片 90 实例025 批量图像格式转换 93 实例026 屏幕颜色拾取器 96 实例027 为数码照片添加日期 98 实例028 批量添加图片水印 100 实例029 仿QQ截图功能 104 实例030 屏幕抓图 107 实例031 抓取网站整页面 109 实例032 电子石英钟 113 实例033 图片自动播放 115 实例034 MP3播放器 118 实例035 播放FLV文件 121 实例036 Flash播放器 125 第4章 报表打印技术 实例037 自定义横向或纵向打印 130 实例038 自定义打印页码范围 133 实例039 分页打印 138 实例040 打印条形码 141 实例041 打印学生个人简历 145 实例042 打印商品入库单据 148 实例043 批量打印学生证书 150 实例044 动态绑定水晶报表 153 实例045 设计信封标签报表 157 实例046 设计汇款单式报表 157 第5章 鼠标键盘控制 实例047 自定义动画鼠标 161 实例048 鼠标设置器 163 实例049 屏蔽鼠标按键 167 实例050 虚拟键盘 172 实例051 设置/屏蔽系统热键 182 实例052 使用键盘控制窗体或控件的移动 189 实例053 多功能键盘 190 第6章 操作系统相关技术 实例054 利用API设置桌面背景 196 实例055 音乐风景桌面 198 实例056 定时关闭计算机 201 实例057 设置任务栏时间 205 实例058 CPU使用率 206 实例059 进程管理器 209 实例060 数字大小写转换 212 实例061 系统挂机锁 214 实例062 全角半角转换 218 实例063 动态系统托盘图标 221 实例064 开机启动项管理 224 实例065 显示器控制 228 实例066 屏幕放大镜 231 实例067 身份证号码验证工具 233 第7章 文件及数据流应用 实例068 文件批量更名 241 实例069 分割与合成文件 244 实例070 伪装文件夹 247 实例071 获取所有逻辑磁盘目录 250 实例072 汉字转拼音 253 实例073 使用C#操作INI文件 255 实例074 使用C#操作XML文件 257 实例075 创建PDF文档 261 实例076 批量将Word文档转换为HTML网页 263 实例077 Word目录提取工具 265 实例078 文件批量解压缩 269 第8章 网络开发应用 实例079 局域网端口扫描 276 实例080 局域网IP地址扫描 280 实例081 自动更换IP地址 283 实例082 IP地址及手机号码归属地查询 286 实例083 获取网络信息及流量 290 实例084 获取指定地区天气预报 292 实例085 发送与接收邮件 297 实例086 调用OutLook发送邮件 304 实例087 以断点续传方式下载文件 306 实例088 远程关闭与重启计算机 308 实例089 点对点聊天程序设计 311 实例090 网络电台 314 第9章 数据库及LINQ技术 实例091 通用数据库连接 319 实例092 读取数据库中的数据表结构 324 实例093 对数据库进行分离、附加、备份及还原操作 331 实例094 综合查询职工详细信息 338 实例095 使用二进制存取用户头像 342 实例096 使用交叉表实现商品销售统计 345 实例097 通过视图修改职工信息 347 实例098 通过存储过程对职工信息进行管理 350 实例099 使用触发器添加、修改及删除职工信息 356 实例100 使用LinqToSql操作SQL数据库 358 实例101 使用LinqToObjects操作数组及集合 363 实例102 使用LinqToDataSet操作数据集 365 实例103 使用LinqToXML操作XML文件 369 第10章 程序安全控制 实例104 防止SQL注入式攻击 377 实例105 对文件进行加密保护 378 实例106 对数据报进行加密保障通信安全 384 实例107 使用伪随机数加密技术加密用户登录密码 388 实例108 使用口令加密可执行文件 390 实例109 限制软件的使用次数 394 实例110 使用强名称标识软件 399 实例111 软件加壳常用工具及使用 400 第11章 硬件开发技术 实例112 加密狗实现软件注册 405 实例113 通过摄像头制作大头贴 408 实例114 短信猫实现短信投票 412 实例115 企业员工IC卡开发 416 实例116 多路视频监控 422 实例117 使用ID卡识别员工编号 428 实例118 使用数据采集器实现库存盘点 434 实例119 员工考勤指纹识别 436 第12章 游戏开发 实例120 贪吃蛇 444 实例121 华容道 451 实例122 俄罗斯方块 458 实例123 五子棋 466 技术要点对应实例位置 479

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值