Lego使用HTTP或DNS生成SSL通配符证书
简介Lego 实现 Let‘s Encrypt HTTPS 通配符证书。Lego官方仓库地址官方文档地址
下载安装前往官方仓库Release页面下载,本文以lego v4.8.0版本为例
12345cd /usr/local/legowget -c https://github.com/go-acme/lego/releases/download/v4.8.0/lego_v4.8.0_linux_amd64.tar.gztar -zxvf lego_v4.8.0_linux_amd64.tar.gzrm lego_v4.8.0_linux_amd64.tar.gzchmod +x lego
获取证书
获取证书有两种方式,一种HTTP和一种DNS。我更倾向于与DNS,因人而异。
HTTP方式
此方式为在服务器运行一个http服务后完成挑战进行获取证书,需服务器运行lego。
1234# 此命令会占用80端口lego --email="foo@bar.com" --domains="example.com" --http run# 如果您的80 ...
CentOS8安装PostgreSQL13教程
官网
PostgreSQL 官方下载地址→点此跳转PostgreSQL 官方Linux/Redhat下载地址→点此跳转
获取安装脚本
根据自身情况选择系统和数据库版本,这里以CentOS8 PostgreSQL-13版本为例。
选择您的操作系统(Select your operating system family): Linux选择您的Linux发行版(Select your Linux distribution): Red Hat/Rocky/CentOS
跳转至Linux/Redhat下载页面选择版本(Select version): 13选择平台(Select platform): Red Hat Enterprise, Rocky, or Oracle version 8选择架构(Select architecture): x86_64
下方为获取的对应脚本
安装
复制、粘贴和运行安装脚本的相关部分(Copy, paste and run the relevant parts of the setup script)
12345678910111213141516171 ...
CentOS8开启BBR加速
注意:这里是CentOS8开启BBR教程,不是CentOS7。CentOS8使用BBR一键安装脚本会导致脚本卸载系统的内核,结果就是无法链接ssh,你部署好的网站也会没反应,只有重装系统才能正常使用。CentOS7不影响。
开启BBR
CentOS 8 默认内核版本为 4.18.x,内核版本高于 4.9 就可以直接开启 BBR
第一步
1echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
第二步
1echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
保存退出后,执行下边的命令使配置生效
1sysctl -p
检查 BBR 是否开启成功查看是否安装了BBR模块
12> lsmod | grep bbrtcp_bbr 20480 12
查看当前使用的阻塞算法
12> sysctl -n net.ipv4.tcp_congestion_contr ...
Nginx开启gzip压缩
若未安装Nginx,安装教程在这→点此查看Nginx安装教程
开启gzip在nginx.conf的http块或server块中添加如下配置
nginx.conf12345678910111213141516171819202122232425262728293031323334http { server { # 开启和关闭gzip模式 gzip on; # 设置gzip压缩针对的HTTP协议版本 gzip_http_version 1.1; # 是否在http header中添加Vary: Accept-Encoding,建议开启 gzip_vary on; # gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间 gzip_comp_level 4; # Nginx作为反向代理的时候启用,开启或者关闭后端服务器返回的结果,匹配的前提是后端服务器必须要返回包含"Via"的 header头 ...
Nginx与Trojan-go基于SNI共用443端口实现多站点
条件域名A: aaa.example.com域名B: bbb.example.com域名trojan: trojan.example.com域名A,域名B和域名trojan的DNS解析均为同一个IP地址。aaa.example.com和bbb.example.com为不同的其他站点,trojan.example.com为trojan站点。
介绍HTTPS 已经是互联网服务准入的基本门槛了,同时 443 端口作为 HTTPS 请求的默认端口,在虚拟主机服务的支持下,搭配的天衣无缝。
但是 Trojan 比较特殊,因为它的工作方式导致了其必须直接对接流量入口,否则其协议无法被服务端正常识别,同时为了增加服务的隐蔽性,一般会把它配置在 443 端口。但是 443 端口只有一个,虽然 Trojan 提供了「非标请求」的转发功能,但是毕竟是一个新生事物,所有流量都过它手,在稳定、性能、灵活等等方面都不够好,而且还不支持 TLS 转发。
Nginx安装
若未安装Nginx或没有包含对应模块,教程看这→点此查看Nginx安装教程
执行nginx -V查看是否包含--with-stream_ssl_ ...
CentOS安装Nginx以及HTTPS模块、Stream模块和HTTP2模块
CentOS安装Nginx环境配置
操作系统:CentOS
安装前先确保系统安装了如下库
12yum -y install gcc-c++yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
如果是Debian用户可以执行
1apt install build-essential zlib1g-dev libpcre3-dev libssl-dev
下载Nginx上传Nginx安装包nginx-1.21.5.tar.gz至服务器指定位置/usr/local/src并解压
1234cd /usr/local/src# 解压wget http://nginx.org/download/nginx-1.21.5.tar.gztar -zxvf nginx-1.21.5.tar.gz
编译、安装需要SSL功能configure增加--with-http_ssl_moduleSSL模块需要HTTP2功能configure增加--with-http_v2_moduleHTTP模块需要SNI分流功能 即ssl_ ...
Nginx多域名多证书多站点配置最佳实践
在nginx.conf下http块中增加include conf.d/*.conf如下。
/usr/locol/nginx/conf/nginx.conf123http { include conf.d/*.conf;}
以www.example.com为例,在conf.d文件夹下创建www.example.com.conf文件,根据需要增加如下配置块。
/usr/locol/nginx/conf/conf.d/www.example.com.conf12345server { listen 80; server_name example.com www.example.com; return 302 https://$host$request_uri;}
/usr/locol/nginx/conf/conf.d/www.example.com.conf123456789101112131415161718192021222324server { listen 443 ssl; ...
你好,世界
你好,世界。
路漫漫其修远兮,吾将上下而求索。
这里是HaliComing的个人博客