热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

加密与解密linux,security02:加密与解密、扫描与抓包、总结和答疑、SELinux安全防护(示例代码)...

day01一、selinux安全防护二、数据加密解密三、抓包与扫描一、selinux安全防护1.1selinux介绍1.2linux安全保护模型?1.3查看当前系统s

day01

一、selinux安全防护

二、数据 加密 解密

三、抓包与扫描

++++++++++++++++++++++++++++++

一、selinux安全防护

1.1 selinux 介绍

1.2 linux安全保护模型?

1.3 查看当前系统selinux的状态

[[email protected] ~]# sestatus

1.4 selinux配置文件

[[email protected] ~]# 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目录里。

[[email protected] ~]# sed -n ‘29p‘ /etc/vsftpd/vsftpd.conf

anon_upload_enable=YES

[[email protected] ~]#

[[email protected] ~]# mkdir /var/ftp/shardir

[[email protected] ~]# chmod o+w /var/ftp/shardir

[[email protected] ~]# 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。

[[email protected] ~]# 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

[[email protected] ~]# 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

[[email protected] ~]$ gpg --export -a > /tmp/userb.pub

[[email protected] ~]$ cat /tmp/userb.pub

usera(加密)

1 导入公钥文件~/.gnupg

[[email protected] ~]$ gpg --import /tmp/userb.pub

[[email protected] ~]$ ls ~/.gnupg

2 使用公钥加密文件 ,把加密后的文件给userb

[[email protected] ~]$ gpg -e -r usera b.txt

[[email protected] ~]$ mv b.txt.gpg /tmp/

3 userb解密

调用私钥解密 解密文件

[[email protected] ~]$ 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 [扫描类型] [选项]

扫描类型有哪些? -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

过滤条件: 抓包时,不加过滤条件,会抓所有到达的数据包。反之,只抓复合条件的数据包。

[[email protected] ~]# tcpdump -i eth0 -A

[[email protected] ~]# tcpdump -i eth0 -A tcp port 8090

[[email protected] ~]# tcpdump -i eth0 -A tcp port 8090 and host 192.168.4.53

[[email protected] ~]#tcpdump -i eth0 -A tcp port 22 and net 192.168.4.0/24

[[email protected] ~]#tcpdump -i eth0 -A tcp port 22 and not host 192.168.4.53

[[email protected] ~]#tcpdump -i eth0 -A

tcp port 8090 and host 192.168.4.53 or host 192.168.4.54

[[email protected] ~]#tcpdump -i eth0 -A

tcp port 8090 and (host 192.168.4.53 or host 192.168.4.54)

[[email protected] ~]#tcpdump -i eth0 -A tcp port 25 -w /tmp/mail2.cap

[[email protected] ~]#tcpdump -A -r /tmp/mail2.cap

[[email protected] ~]# 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)



推荐阅读
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 本文探讨了容器技术在安全方面面临的挑战,并提出了相应的解决方案。多租户保护、用户访问控制、中毒的镜像、验证和加密、容器守护以及容器监控都是容器技术中需要关注的安全问题。通过在虚拟机中运行容器、限制特权升级、使用受信任的镜像库、进行验证和加密、限制容器守护进程的访问以及监控容器栈,可以提高容器技术的安全性。未来,随着容器技术的发展,还需解决诸如硬件支持、软件定义基础设施集成等挑战。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 本文分享了一位Android开发者多年来对于Android开发所需掌握的技能的笔记,包括架构师基础、高级UI开源框架、Android Framework开发、性能优化、音视频精编源码解析、Flutter学习进阶、微信小程序开发以及百大框架源码解读等方面的知识。文章强调了技术栈和布局的重要性,鼓励开发者做好学习规划和技术布局,以提升自己的竞争力和市场价值。 ... [详细]
  •   一、GeoTrust证书的相关介绍    GeoTrust成立于2001年,其到2006年就占领了全球市场25%的市场份额,所以GeoTrust是目前全球第二大的数字证书颁发机 ... [详细]
  • 一、概述nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,相对于其它一些系统资源监控工具来说,nmon所记录的信息是比较全面的 ... [详细]
  • 加密、解密、揭秘
    谈PHP中信息加密技术同样是一道面试答错的问题,面试官问我非对称加密算法中有哪些经典的算法?当时我愣了一下,因为我把非对称加密与单项散列加 ... [详细]
  • 本文介绍了使用数据库管理员用户执行onstat -l命令来监控GBase8s数据库的物理日志和逻辑日志的使用情况,并强调了对已使用的逻辑日志是否及时备份的重要性。同时提供了监控方法和注意事项。 ... [详细]
  • Redis API
    安装启动最简启动命令行输入验证动态参数启动配置文件启动常用配置通用命令keysbdsize计算key的总数exists判断是否存在delkeyvalue删除指定的keyvalue成 ... [详细]
  • 转自:http:www.phpweblog.netfuyongjiearchive200903116374.html一直对字符的各种编码方式懵懵懂懂,什 ... [详细]
author-avatar
_大盗坂崎由莉nyS
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有