[root@vm1 ~]# chage -E 2019-12-12 test3
[root@vm1 ~]# chage -l test3
最近一次密码修改时间 :7月 05, 2018
密码过期时间 :从不
密码失效时间 :从不
帐户过期时间 :12月 12, 2019
两次改变密码之间相距的最小天数 :0
两次改变密码之间相距的最大天数 :99999
在密码过期之前警告的天数 :7
root@vm1 ~]# passwd -l devel3
锁定用户 devel3 的密码 。
passwd: 操作成功
[root@vm1 ~]# passwd -S devel3
devel3 LK 2018-07-05 0 99999 7 -1 (密码已被锁定。)
[root@vm1 ~]# chattr +i /etc/resolv.conf
[root@vm1 ~]# lsattr /etc/resolv.conf
----i----------- /etc/resolv.conf
[root@vm1 ~]# chattr +a /etc/hosts
[root@vm1 ~]# lsattr /etc/hosts
-----a---------- /etc/hosts
[root@vm1 ~]# su - test2 -c "touch /tmp/test.txt"
[root@vm1 ~]# su - test2
上一次登录:四 7月 5 09:37:31 CST 2018pts/0 上
[test2@vm1 ~]$ ls
[test2@vm1 ~]$ ls /tmp/
systemd-private-01e5761eb85544799f5f6c7fe33ed366-chronyd.service-h5uVwf
systemd-private-01e5761eb85544799f5f6c7fe33ed366-cups.service-YykKCo
systemd-private-5c9cd94f58ef471eafe210424de2d446-chronyd.service-lG9hPd
systemd-private-5c9cd94f58ef471eafe210424de2d446-cups.service-u7fczu
test.txt
密钥登陆不太熟
[root@vm1 ~]# gpg -c /etc/rc.d/rc.local
gpg: 已创建目录‘/root/.gnupg’
gpg: 新的配置文件‘/root/.gnupg/gpg.conf’已建立
gpg: 警告:在‘/root/.gnupg/gpg.conf’里的选项于此次运行期间未被使用
gpg: 钥匙环‘/root/.gnupg/pubring.gpg’已建立
[root@vm1 ~]# cat /etc/rc.d/rc.local.gpg
v@:U>!M y/y9^8(
密码加密和解密文件
[root@vm2 ~]# echo 123 > 1.txt
[root@vm2 ~]# gpg -c 1.txt
gpg: 已创建目录‘/root/.gnupg’
gpg: 新的配置文件‘/root/.gnupg/gpg.conf’已建立
gpg: 警告:在‘/root/.gnupg/gpg.conf’里的选项于此次运行期间未被使用
gpg: 钥匙环‘/root/.gnupg/pubring.gpg’已建立
[root@vm1 ~]# gpg -d 1.txt.gpg > 2.txt
gpg: CAST5 加密过的数据
gpg: 以 1 个密码加密
gpg: 警告:报文未受到完整的保护
[root@vm1 ~]# cat 2.txt
123
创建公钥和传输公钥
[root@vm1 ~]# gpg --gen-key ——创建公钥
[root@vm1 ~]# gpg --list-keys———— 查看公钥
[root@vm1 ~]# gpg -a --export tangking > nb.pub—— 导出公钥
root@vm1 ~]# scp nb.pub 192.168.2.30:/tmp——传输公钥
创建加密文件和传输加密文件
[root@vm2 ~]# gpg -e -r nb /etc/rc.d/rc.local ——利用公钥加密文件
gpg: 4E433C1A:没有证据表明这把密钥真的属于它所声称的持有者
pub 2048R/4E433C1A 2018-07-05 tangking (nb)
主钥指纹: 29D6 2629 BFE4 CF01 A8A2 860A A9C7 05DA 4057 03D6
子钥指纹: 2E4C EE86 3EE9 6603 2DDC 76FA 3A38 20DB 4E43 3C1A
这把密钥并不一定属于用户标识声称的那个人。如果您真的知道自
己在做什么,您可以在下一个问题回答 yes。
无论如何还是使用这把密钥吗?(y/N)y
[root@vm2 ~]# ls /etc/rc.d/rc.local ————查看加密的文件
rc.local rc.local.gpg
[root@vm2 ~]# scp /etc/rc.d/rc.local.gpg 192.168.2.20:/root ————传输加密文件
root@192.168.2.20's password:
rc.local.gpg 100% 652 1.0MB/s 00:00
[root@vm1 ~]# gpg -d rc.local.gpg > 3.txt —— 利用私钥解密文件
[root@vm1 ~]# cat 3.txt ——查看解密的文件
签名文件的应用
[root@vm1 ~]# tar zcf log.tar /var/log/ ————文件签名
tar: 从成员名中删除开头的“/”
[root@vm1 ~]# gpg -b log.tar
您需要输入密码,才能解开这个用户的私钥:“tangking (nb) ”
2048 位的 RSA 密钥,钥匙号 405703D6,建立于 2018-07-05
[root@vm1 ~]# ls -lh log.tar*
-rw-r--r--. 1 root root 431K 7月 5 11:07 log.tar
-rw-r--r--. 1 root root 287 7月 5 11:07 log.tar.sig
[root@vm1 ~]# scp log.tar* 192.168.2.30:/root
log.tar 100% 430KB 29.9MB/s 00:00
log.tar.sig 100% 287 248.9KB/s 00:00
[root@vm2 ~]# gpg --verify log.tar.sig log.tar ——签名验证
gpg: 于 2018年07月05日 星期四 11时07分18秒 CST 创建的签名,使用 RSA,钥匙号 405703D6
gpg: 完好的签名,来自于“tangking (nb) ”
gpg: 警告:这把密钥未经受信任的签名认证!
gpg: 没有证据表明这个签名属于它所声称的持有者。
主钥指纹: 29D6 2629 BFE4 CF01 A8A2 860A A9C7 05DA 4057 03D6
入侵技术不太懂
在 vm1 上使用 nmap 扫描 vm2 主机的所有 TCP 服务
抓包服务是不太懂
使用 limit 模块对 nginx 限制并发,限制并发数量为 10,burst 为 10
vim /usr/local/nginx/conf/nginx.conf
limit_req zone=one burst=10;
nginx -s reload
[root@vm1 ~]# ab -c 1000 -n 1000 http://192.168.2.30/
在 vm2 主机,设置 nginx 拒绝所有非 POST 或 GET 的请求
[root@vm2 ~]# vim /usr/local/nginx/conf/nginx.conf
if ($request_method !~ ^(GET|POST)$ ) {
return 444;
}
[root@vm2 ~]# nginx -s reload
[root@vm1 ~]# curl -i -X HEAD http://192.168.2.30 ————报错
[root@vm1 ~]# curl -i -X GET http://192.168.2.30——————正常访问
在 vm2 主机,设置 nginx 防止 buffer 数据溢出
在 vm2 主机登陆 mariadb 服务器,创建一个可以从远程登陆的数据库账户
grant all on
*.*
to tom@
'%'
identified by
'123'
;
创建了数据库帐号,又怎么进入到数据库里面中去
数据库的安全不太懂
数据库抓抓包不懂
普通用户远程数据库,只需要在客户端安装一个mariadb就可以了
安装tomcat 的步骤不熟悉
打补丁这块一面蒙蔽