文章 35
评论 44
浏览 95845
云服务器定期更换SSL证书(详细步骤实操)

云服务器定期更换SSL证书(详细步骤实操)

1:申请证书 下载对应目标服务器的证书类型(nginx对应pem/key,pem是证书,key是证书加密的私钥) 阿里云下载免费证书(图片来自阿里云指南) 2:部署证书 存入云服务器中(可以使用WinSCP工具,方便直接移动文件到远程服务器中) 本网站使用Nginx反向代理,在Nginx配置文件中填入SSL证书的存储路径 打开配置文件 cd /etc/nginx/sites-available vi default 更改配置文件,填入SSL证书绝对路径 3:重启服务器,使得SSL证书生效 netstat -ntlp|grep 80 # 默认nginx端口是80,所以查找占用80端口的进程 kill -9 XXX # XXX为上面命令查到的占用80端口的进程端口 systemctl restart nginx # 重启服务器 4 验证证书生效 打开网站,如果显示502,可以先等一段时间让DNS更新缓存。还是不行的话,检查上述步骤操作是否有疏漏 打开网站,点击左上角的🔒,查看证书是否为刚申请的证书即可。 通过比对可以得知是否已经更新。

网络安全实验室(脚本区 基情燃烧的岁月)

网络安全实验室(脚本区 基情燃烧的岁月)

思路:暴力破解3位纯数字的验证码 坑:在破解前,需要用脚本模拟点击获取验证码的链接,正如实际情况那样,服务器要先发送验证码,你才能开始输入验证码,否则服务器怎么知道你这验证码是不是正确的呢? #coding=utf-8 from http import cookies import requests; from lxml import etree #解析html页面的包 import threading curtask = 100 maxtask = 999 flag = False lock = threading.Lock() url = "http://lab1.xseclab.com/vcode6_mobi_b46772933eb4c8b5175c67dbc44d8901" s = requests.session() r1 = s.get(url) url3 = "http://lab1.xseclab.com/vcode6_mobi_b46772933eb4c8b5175c67dbc44d8901/vcode.php" r = s.post(url=url3,data={ ....

网络安全实验室(脚本区 逗比验证码第二期)

网络安全实验室(脚本区 逗比验证码第二期)

很无语的解题思路:验证码使用一次后就会失效,这句话意思是不需要使用验证码也可以,即验证码为空串。所以表单中vcode="" 更快的暴力方法是用多线程 代码参考https://www.freesion.com/article/53961309685/ import requests, threading url = 'http://lab1.xseclab.com/vcode2_a6e6bac0b47c8187b09deb20babc0e85/index.php' login = 'http://lab1.xseclab.com/vcode2_a6e6bac0b47c8187b09deb20babc0e85/login.php' header = {'Referer': 'http://lab1.xseclab.com/vcode2_a6e6bac0b47c8187b09deb20babc0e85/index.php', 'Connection': 'keep-alive', 'Upgrade-Insecure-Requests': '1'} s = requests.session....

网络安全实验室(脚本区 逗比验证码第一期)

网络安全实验室(脚本区 逗比验证码第一期)

解决本题的关键是维护同一个账号的会话(session),这样验证码就可以确定下来。 先获取到验证码的地址(在r1.text中),手动输入验证码vode,再进行密码爆破 #coding=utf-8 from http import cookies import requests; from lxml import etree #解析html页面的包 if __name__ == "__main__": url = "http://lab1.xseclab.com/vcode1_bcfef7eacf7badc64aaf18844cdb1c46/index.php" s = requests.session() r1 = s.get(url) print(r1.text) vcode = input() url2 = "http://lab1.xseclab.com/vcode1_bcfef7eacf7badc64aaf18844cdb1c46/login.php" for i in range(1000, 10000): res = s.post(url = url2, data={ 'u....

网络安全实验室(脚本区 快速口算题)

网络安全实验室(脚本区 快速口算题)

#coding=utf-8 from http import cookies import requests; from lxml import etree #解析html页面的包 if __name__ == "__main__": url = "http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php" html = requests.get(url) cookie = html.cookies tree = etree.HTML(html.text) #将html解析成树结构 calculate = tree.xpath("/html/body/form/text()[2]")[0] #取出表达式字段 cal = calculate.replace(' ','').replace('=','') #删除空格和等号 result = eval(cal) #使用库函数计算表达式 #带着计算结果提交,注意需要带上cookie,这样才能保证获得运算式的和提交结果的是同一个用户 res = request....

基于UDP socket的C/S模式下的简单多人聊天室

基于UDP socket的C/S模式下的简单多人聊天室

udp_chating(python) 项目下载地址:https://github.com/Abandon339/udp_chating#udp_chatingpython 说明:基于UDP socket的C/S模式下的简单多人聊天室 (Linux和windows都已兼容) 实现功能: 用户注册:要求服务器端在用户注册好账号后存储账号信息到数据库或者其他存储文件中。 用户登录:要求客户端基于UDP发送账号和密码给服务器,服务器端通过存储本地的账号信息与接收到的信息比较,匹配的话则登录成功,发回响应 公聊:要求客户端发送消息后,服务器能广播消息到所有在线的用户。 私聊:要求客户端指定目标好友发送消息,服务器能对应一个目标进行转发消息 python库介绍 Socket:套接字库,它提供了标准的 BSD Sockets API,可以访问底层操作系统 Socket 接口的全部方法。 mysql.connector:MySQL 官方提供的驱动器,用来连接使用Mysql。 time: 处理时间的标准库。time库能够表达计算机时间,提供获取系统时间并格式化输出的方法,提供系统级精确计时功能(....

第一个个人网站博客!

第一个个人网站博客!

hello world

Life Is Like A Boat