如何让网站使用https
Let’s encrypt获取ssl证书,让网站安全访问
验证方式
http验证
给你一个随机内容的文件,你把这个文件放在一个特定的位置,用待绑定的域名+特定path可以访问到这个文件,可以认为域名是你的
DNS验证
给你一个随机字符串,你把这个字符串添加为待绑定域名的txt值,只要能通过公网上的DNS服务器解析到这个字串,就认为域名是你的
安装1pip install certbot
http验证http验证比较简单,按照提示步骤即可
1sudo certbot --nginx
DNS验证DNS验证多了一步,要到DNS服务上添加一条text记录
1certbot --text --agree-tos --email <your@email.com> -d <your.domain.com> --manual --preferred-challenges dns --expand --renew-by-default --manual-public-ip-logging-ok certonly
服务器(nginx)其中fullchain.p ...
Linux上轻量桌面对比
性能消耗最小的linux desktop使用的是只有2G内存的CentOS云服务器,尝试一下desktop
linux系统切换桌面环境使用vnc连接桌面,编辑$HOME/.vnc/xstartup
让vnc启动Xfce桌面环境
1/etc/X11/xinit/xinitrc
关闭vnc
1vncserver -kill :1
gnomegnome一开就占用500M空间,且不用的情况下,内存占用还会扩大,作为桌面还是可以的,
但是作为服务器就差强人意了
Xfce
安装
1dnf groupinstall "Xfce"
启动
编辑$HOME/.vnc/xstartup
12# /etc/X11/xinit/xinitrcstartxfce4
测评
实际使用空间在300M,比gnome好很多了
lxde
安装
1pacman -S lxde
启动
编辑$HOME/.vnc/xstartup
12# /etc/X11/xinit/xinitrcexec startlxde
测评
实际空间使用在1 ...
无处不在的linux云服务
cloud serverIBM LinuxONEIBM教育免费服务器,支持免费用120天
inteljupter 10小时使用时长,250G内存,CPU豪华级配置
devcloud 16G 支持使用120天
woiden云主机使用telegram注册,可以使用7天,可以持续续期.
共享公网IP的NAT VPS,可以使用反向代理
[登录IPv6](https://ssh.hax.co.id/)
alwaysdata100M免费空间,可以使用ssh登录,创建定时任务
cloud shell分享各种提供linux shell的云服务
xshellz提供的shell可以连续运行15天
google cloud shell有5G免费空间,可以用tmux一直保持运行,网页版本身就是tmux,每周50小时限制
github codespaces有8G内存,32G空间,写代码专用,30分钟无活动自动关闭
github actions可以创建定时任务
red hat openshift30天免费试用,等待90天后可以再次使用
功能太多,目前找到sandbox ide也非常好用
http ...
如何使用metasploit
网络安全之metasploit各种漏洞测试的工具
metasploit安装这下不能直接命令安装了,搜索官网
123curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \ chmod 755 msfinstall && \ ./msfinstall
开始使用以暴力破解ssh为例,开始演示
12345msfconsoleuse auxiliary/scanner/ssh/ssh_login #使用这个模块msf auxiliary(ssh_login) > set RHOSTS 10.0.0.27 # 设置remote hostmsf auxiliary(ssh_login) > set USERPASS_FILE root_userpass.txt # 设置密码文件msf auxilia ...
P2P原理研究
p2p对于两台公网机器p2p十分容易实现,如今内网都会经过nat,解决用UDP实现p2p
用工具或代码实现
工具配置使用FAQtcp raw_socket对于已经握手成功的tcp连接,假如存在第三者冒出服务器发送数据给客户端是否能成功,
目前实验没有成功,还需要跟踪数据包
模拟环境
1234nc -lvp 1234 # server# when client connected it will show the ip and port of clientnc 127.0.0.1 1234 # client
使用hping3发送恶意改造的数据包
1echo "malicious" | sudo hping3 -c 1 -p client_port -s 1234 -A 127.0.0.1
tcp劫持tcp重建DNS欺诈创建自定义DNS服务器
网站SEO
SEO如何让自己的网站被搜索引擎收录,由于目前网站没有备案,所以用的不是标准443端口
接下来将针对非标准端口举例
Google Search Console
打开Google Search Console
https://search.google.com/search-console/about
选择认证方式
提交sitemap.xml
hexo博客的public目录下有该文件
Bing Webmaster
一条命令设置系统代理
设置系统代理的方法shell由于shell往往是login的,表示一个用户,故shell设置的代理只能在当前shell中使用
通用的shell代理设置方法
设置shell代理
123export all_proxy="socks://127.0.0.1:1080" # 设置全部代理export http_proxy="http://127.0.0.1:1080" # 代理httpexport https_proxy="https://127.0.0.1:1080" # 代理https
关闭shell代理
123unset all_proxyunset http_proxyunset https_proxy
linux gnome代理设置
设置shell代理
12gsettings set org.gnome.system.proxy.socks host 'localhost'gsettings set org.gnome.system.proxy.socks port 1080
关闭shell代 ...
简单暴力破解SSH密码
暴力破解ssh密码工具
crunch(password generator) 密码生成器,原理很简单,直接dfs遍历所有可能的组合即可
1234# debianapt install crunch# macbrew install crunch
hydra(brute force credentials) 暴力破解工具
1234# debianapt install hydra# macbrew install hydra
开始实验
生产随机密码123# crunch <min-len> <max-len> [<charset string>]# 最小长度 最大长度 密码所包含的字符crunch 6 6 0123456789abcdef -o 6chars.txt
开始破解尝试破解ssh123# -l username 用户名# -t thread 线程数hydra -l root -P passwords.txt -t 6 ssh://ip(x.x.x.x)
Ubuntu上使用postfix搭建邮件服务器
postfix mail server on ubuntu考虑到之前用[sendmail](create_mail_server.md)创建的server太旧了,很怕失去维护
所以打算用新的技术栈,为jumhorn.eu.org域名创建邮件服务器
安装1sudo apt install postfix
配置1sudo dpkg-reconfigure postfix
12#使得配置生效systemctl reload postfix
用v2ray实现反向代理
v2ray反向代理为了清晰说明连接方式,这里使用三台机器来说明
A <==> B <==> C
A是提供服务的机器,B是代理服务器,C是普通客户端
现在由于网络限制,A只能向B发起连接,B不能主动连接A
A ==> B <== C
在这种情况下,C想要访问A的服务就需要用到反向代理
实现过程,由A向B发起v2ray连接,B开通监听端口给C访问,并将C的请求转发给A
注意B转发给A是通过,A主动连接B产生的反向连接
A机器配置123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657{ "log": { "loglevel": "debug" }, "reverse": { "bridges": [ { "tag": ...