前言:
为什么开加密,这个我就不用多说了吧,国内各种特殊情况,不开加密,各种阻断,链接不正常,还有泄露信息的问题。
教程:
部署教程,我就不写了,之前已经写过了
[ri-post id=”56007″ thumb=”none”]
创建CA证书:
openssl genrsa -out ca.key 2048 openssl req -x509 -new -nodes -key ca.key -subj "/CN=www.lxg2016.com" -days 5000 -out ca.crt
注意第二行命令的www.lxg2016.com 换成你的域名,当然乱写也可以。
报错处理:
注意Can’t load后面的路径,cd到/root之后执行命令
openssl rand -writerand .rnd
在继续执行命令就可以了
Frps服务端
创建my-openssl.cnf
cat > my-openssl.cnf << EOF [ ca ] default_ca = CA_default [ CA_default ] x509_extensions = usr_cert [ req ] default_bits = 2048 default_md = sha256 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca string_mask = utf8only [ req_distinguished_name ] [ req_attributes ] [ usr_cert ] basicConstraints = CA:FALSE nsComment = "OpenSSL Generated Certificate" subjectKeyIdentifier = hash authorityKeyIdentifier = keyid,issuer [ v3_ca ] subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always,issuer basicConstraints = CA:true EOF
openssl genrsa -out server.key 2048
openssl req -new -sha256 -key server.key \ -subj "/C=XX/ST=DEFAULT/L=DEFAULT/O=DEFAULT/CN=server.com" \ -reqexts SAN \ -config <(cat my-openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:localhost,IP:1.1.1.1,DNS:www.lxg2016.com")) \ -out server.csr
openssl x509 -req -days 3650 \ -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial \ -extfile <(printf "subjectAltName=DNS:localhost,IP:1.1.1.1,DNS:www.lxg2016.com") \ -out server.crt
命令中的1.1.1.1 要换成你frps服务器的公网ip,www.lxg2016.com 换成你服务器绑定的域名。
Frps.ini修改:
[common] ............###其他内容省略 tls_only = true tls_cert_file = /cert/server.crt tls_key_file = /cert/server.key tls_trusted_ca_file = /cert/ca.crt ............###其他内容省略
替换cert路径为你服务器证书存放路径,如果是docker 需要增加证书路径的映射,这里我就不写了,配置完成后重启frps。
Frpc客户端:
创建证书:
openssl genrsa -out client.key 2048
openssl req -new -sha256 -key client.key \ -subj "/C=XX/ST=DEFAULT/L=DEFAULT/O=DEFAULT/CN=client.com" \ -reqexts SAN \ -config <(cat my-openssl.cnf <(printf "\n[SAN]\nsubjectAltName=IP:1.1.1.1,DNS:www.lxg2016.com")) \ -out client.csr
openssl x509 -req -days 3650 \ -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial \ -extfile <(printf "subjectAltName=IP:1.1.1.1,DNS:www.lxg2016.com") \ -out client.crt
自行修改1.1.1.1为服务器ip以及www.lxg2016.com。
配置Frpc.ini:
把生成的client.crt、client.key、ca.crt 三个文件,复制到frpc的客户机内。
增加新内容
[common] ............###其他内容省略 tls_enable = true tls_cert_file = /cert/client.crt tls_key_file = /cert/client.key tls_trusted_ca_file = /cert/ca.crt ............###其他内容省略
配置内/cert替换为你的证书存放路径,docker运行的组要做证书路径映射,配置完成后重启frpc。
结尾:
配置双面加密,并不复杂,基本上上面的命令照抄就可以了,证书复制到客户机部分,可以用winspc下载在上传,或者可以用scp命令直接下载到frpc。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
请登录后查看评论内容