centos安装scrambled openvpn

该文详细介绍了在CentOS系统中如何安装OpenVPN,包括必要的依赖库如gcc、openssl、lzo等,以及从源代码编译和应用patch。在编译过程中可能遇到的autoreconf和make错误的解决方案也一并给出。此外,文章还解决了在Docker容器中运行OpenVPN时遇到的TUN/TAP设备权限问题,需在创建容器时添加--cap-addNET_ADMIN选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 首先检查系统是否安装了gcc编译器,如果没有安装,请使用yum安装:
yum install gcc
  1. 检查是否安装了openssl库,如果没有安装,请使用yum安装:
yum install openssl-devel
  1. 检查是否安装了lzo库,如果没有安装,请使用yum安装:

yum install lzo-devel
4. 检查是否安装了pam库,如果没有安装,请使用yum安装:

yum install pam-devel

5.Install the RHEL EPEL Repo on CentOS 6

yum install epel-release

6.安装git

yum install git
可合并为一句
yum -y install gcc openssl-devel lzo-devel pam-devel epel-release git

7.Download the OpenVPN source file and the packet obfuscate patch.
下载到随便一个目录中,归好用root权限用户操作

wget https://github.com/OpenVPN/openvpn/archive/release/2.4.zip
wget https://github.com/clayface/openvpn_xorpatch/archive/master.zip
unzip 2.4.zip
unzip master.zip

8.Apply the patch to the source files.

cp openvpn_xorpatch-master/openvpn_xor.patch openvpn-release-2.4/
cd openvpn-release-2.4/
git apply --check openvpn_xor.patch
git apply openvpn_xor.patch
cd ..
mv ./openvpn-release-2.4/ /etc/openvpn

9。Make sure you have install the packages in the prerequisite section. We will now build the OpenVPN server from source.

cd /etc/openvpn/
autoreconf -i -v -f
./configure --prefix=/opt/openvpn
make
make install
如果autoreconf报错则
yum -y install autoconf automake libtool net-tools
如果make报错则
yum -y install make

10。用你购买vpn时得到的证书和配置文件运行

cd /opt/openvpn/sbin
./openvpn 你的配置文件.ovpn
如果报ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)则
最开始报错/dev/net/tun not found,所以我手动创建了/dev/net/tun

mkdir /dev/net -pv

mknod /dev/net/tun c 10 200

chmod 666 /dev/net/tun

这个问题解决过后继续报错

ERROR: Cannot ioctl TUNSETIFF tun: Operation not permitted (errno=1)



经过一番google找到解决方法

创建容器时加入--cap-add NET_ADMIN即可解决



所以最终解决的过程是

创建容器时指定--cap-add NET_ADMIN

docker create -it -h openvpn --cap-add SYS_PTRACE --cap-add NET_ADMIN --net=none --name openvpn_172.16.22.20 --cpu-quota=1200000 --cpu-period=10000 -v /data1/docker_volume/resolv.conf:/etc/resolv.conf:ro -v /data1/docker_volume/beebank.repo:/etc/yum.repos.d/bee.repo:ro 8315978ceaaa "/sbin/init"

在docker compose.yml文件中可以这样配置
![在这里插入图片描述](https://img-blog.csdnimg.cn/432673be9c974571948fe80b31fc09f4.png#pic_center)


参考

https://www.5axxw.com/questions/simple/mwwmnz

https://lowendtalk.com/discussion/21539/tutorial-build-your-ultimate-scrambled-vpn

CentOS 9 安装 OpenVPN 客户端通常需要几个步骤。首先,请确保您的系统已经更新了软件包,并且安装了必要的工具。你可以通过以下命令来完成这个过程: ```bash sudo yum update -y sudo yum install epel-release -y # 如果需要,安装EPEL仓库,因为OpenVPN不在官方仓库里 sudo yum install openvpn easy-rsa ca-certificates -y ``` 然后,你需要下载并配置 OpenVPN 的客户端证书文件。如果你还没有创建证书,可以按照 easy-rsa脚本的指示操作: ```bash cd /etc/openvpn/easy-rsa/ source ./vars ./clean-all ./build-ca ./gendh 2048 ./generate-key-cert client ${USER} ``` 接下来,将生成的 `client.crt` 和 `client.key` 文件复制到合适的目录,例如 `/home/$USER/.openvpn`。 最后,设置客户端连接的配置文件。在这个示例中,我们假设服务器地址为 `server.example.com`,并且端口是 `1194`。创建一个名为 `client.conf` 的文件: ```bash sudo nano /etc/openvpn/client.conf ``` 并在其中添加以下内容: ``` client dev tun proto tcp remote server.example.com 1194 resolv-retry infinite nobind ca /etc/openvpn/easy-rsa/issued/ca.crt cert /home/$USER/.openvpn/client.crt key /home/$USER/.openvpn/client.key tls-auth /home/$USER/.openvpn/ta.key ta-client auth-user-pass cipher AES-256-CBC verb 3 ``` 保存并关闭文件后,启动OpenVPN服务: ```bash sudo systemctl start openvpn@client.service sudo systemctl enable openvpn@client.service ``` 现在,OpenVPN客户端应该已经配置好并运行。你可以通过 `sudo journalctl -fu openvpn@client.service` 查看日志来验证连接是否成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值