1、openvpn配置
网络防火墙允出站和转发
系统软件包,先更新列表,系统中用opkg update效果一样
安装luci-app-openvpn和easyrsa,这里从上到下安装,如果openssl版本出现问题后openvpn客户端连接会有TLS错误,就需要重装系统了
基本需要重启才能看到Openvpn的web
1.1 openvpn服务端配置文件
测试无误的配置文件,这里push的DNS按需修改
config openvpn 'myvpn'
option dev 'tun'
option topology 'subnet'
option server '10.8.0.0 255.255.255.0'
option comp_lzo 'adaptive'
option ca '/etc/openvpn/ca.crt'
option dh '/etc/openvpn/dh.pem'
option cert '/etc/openvpn/server.crt'
option key '/etc/openvpn/server.key'
option persist_key '1'
option persist_tun '1'
option user 'nobody'
option group 'nogroup'
option max_clients '10'
option keepalive '10 120'
option verb '3'
option status '/var/log/openvpn_status.log'
option log '/tmp/openvpn.log'
option proto 'udp4'
list push 'route 192.168.31.0 255.255.255.0'
list push 'route 192.168.0.0 255.255.255.0'
list push 'comp-lzo adaptive'
list push 'redirect-gateway def1 bypass-dhcp'
list push 'dhcp-option DNS 192.168.31.115'
option ddns '192.168.31.115'
option port '1196'
option script_security '3'
option auth_user_pass_verify '/etc/openvpn/checkpsw.sh via-file'
option verify_client_cert 'none'
# 这个参数没有的话起不来
option enabled 1'
配置文件为:/etc/config/openvpn
web界面会去读取
1.2 openvpn生成证书
# 配置一些变量
OVPN_DIR="/etc/openvpn"
OVPN_PKI="/etc/openvpn"
export EASYRSA_PKI="${OVPN_PKI}"
export EASYRSA_REQ_CN="ovpnca"
export EASYRSA_BATCH="1"
export EASYRSA_CERT_EXPIRE="3650"
# 初始化PKI
easyrsa init-pki
# 生成ca,这里有时候不需要输入密码,看情况吧
easyrsa build-ca nopass
Enter PEM pass phrase: 两次输入一样
# 生成 服务证书请求
easyrsa gen-req server nopass
# 签发服务证书
easyrsa sign-req server server
Enter pass phrase for /etc/openvpn/private/ca.key:输入之前的
# 生成dh证书
easyrsa gen-dh
1.3 openvpn客户端配置文件
证书内容需要写入,否则客户端会提示没有证书
client
dev tun
proto udp4
remote xxx 11xx
resolv-retry infinite
nobind
persist-key
persist-tun
verb 3
auth-user-pass
<ca>
</ca>
<cert>
</cert>
<key>
</key>
1.4 openvpn报错
最后openvpn连接失败,
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_PROTO=990
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_MTU=1600
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_CIPHERS=AES-128-CBC:AES-192-CBC:AES-256-CBC:AES-128-GCM:AES-192-GCM:AES-256-GCM:CHACHA20-POLY1305
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_LZO=1
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_GUI_VER=OCmacOS_3.4.9-4830
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_SSO=webauth,crtext
2024-08-14 14:14:27 192.168.31.1:60043 peer info: IV_BS64DL=1
2024-08-14 14:14:27 192.168.31.1:60043 WARNING: Failed running command (--auth-user-pass-verify): could not execute external program
2024-08-14 14:14:27 192.168.31.1:60043 TLS Auth Error: Auth Username/Password verification failed for peer
2024-08-14 14:14:27 192.168.31.1:60043 SIGTERM[soft,auth-control-exit] received, client-instance exiting
如果你不需要 OpenSSL 特有的功能,可以继续使用 openvpn-mbedtls。确保所有配置和认证脚本都是基于这个版本,通常这已经足够支持大多数的 VPN 配置需求。
如果你需要使用 openvpn-openssl,则需要先卸载 openvpn-mbedtls 包,然后安装 openvpn-openssl。这可以通过以下命令完成:
opkg remove openvpn-mbedtls
opkg install openvpn-openssl
更换ssl包以后就能识别命令了!
2、passpall配置
2.1 下载适合自己系统的安装包
https://github.com/xiaorouji/openwrt-passwall/releases/tag/4.78-1
按照当前设备型号选择x86或者aarch
2.2 安装
解压后,如果依赖失败太多,考虑更换opkg源(我用的是istoreos22版本系统,装的23.5包也没问题,会有个别几个包失败,不影响passpall运行)
opkg install *.ipk --force-reinstal
2.3 添加个人节点或节点订阅
安装订阅机场,配置非常简单
如果是自己的个人节点,节点列表中添加节点