zoukankan      html  css  js  c++  java
  • 在ubuntu 18.04下装有线守护wg

    wg你懂的是什么,下面讲讲我这段时间安装过程,发觉这个软件和CENTOS 7下面不是很合拍,它更适合ubuntu,因为ubuntu仍然用iptables,而CENTOS 早就用了firewalld了,完全废除iptables,为了不影响CENNTOS的设置 建议使用UBUNTU,不要用CENTOS,我折腾了一个星期才搞懂它怎样安装,下面分享一下在UBUNTU下面怎样安装

    我是用18.04的,wg很依赖内核,内核越新越好,18.04内核是 4.15的(CENTOS 7的是 3.10,好像对wg支持不太好),这个不错,wg会把自己编译成内核模块(kernel modules),所以不适合用在docker上,github上有两个wg的docker镜像,但我搞不懂怎样用,我用docker两个镜像都失败了,无论在CENTOS 7和UBNTU 16.04和 18.04上都试过不行,在github上问他们怎样使用,5天过去没有任何人回答,所以没有用docker方式使用下去,

    https://github.com/activeeos/wireguard-docker

    https://blog.jessfraz.com/post/installing-and-using-wireguard/

    安装过程我只知道要安装内核头文件(kernel headers),一般ubuntu已经自带(CENTOS 要自己安装),也不用自己安装,另外ubuntu可以用命令行安装

    add-apt-repository ppa:wireguard/wireguard
    apt-get update
    apt-get install wireguard

    然后就要建立服务端和客户端的私钥和公钥,由于我自己用一键脚本建立过,所以我直接把之前的 /etc/wireguard/里的东西覆盖,然后输入下面命令就搞定
    wg-quick up wg0
    [#] ip link add wg0 type wireguard
    [#] wg setconf wg0 /dev/fd/63
    [#] ip address add 192.168.255.1/24 dev wg0
    [#] ip link set mtu 8921 dev wg0
    [#] ip link set wg0 up
    [#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; sysctl net.ipv4.ip_forward=1
    net.ipv4.ip_forward = 1
    如果有错误提示我是这样处理
    错误1
    /usr/bin/wg-quick: line 31: resolvconf: command not found
    sudo apt install resolvconf
    错误2

    Warning: `/etc/wireguard/wg0.conf' is world accessible

    sudo chmod 600 /etc/wireguard/wg0.conf


    打完这个命令后要检查是否运行起来,用wg命令检查

    如果出现类似下面的内容的表示服务起来了,恭喜你

    wg
    interface: wg0
    public key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    private key: (hidden)
    listening port: 36164

    peer: yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy=
    endpoint: ipv4地址:端口
    allowed ips: 10.0.0.2/32
    latest handshake: 22 minutes, 40 seconds ago
    transfer: 125.33 KiB received, 1.09 MiB sent

    如果出现上面画面然后你的客户端仍然连不上,你要检查wg0.conf里面的网卡和你用ifconfig显示的网卡是否一样,
    有时有的网卡变成了ens0 而不是传统的eth0的,要把wg0.conf的iptables的命令根据自己实际修改一下,而另外也要把相关的端口放开
    比如10000端口 ufw allow 10000/udp

    最后确定能通信后可以把client.conf变成二维码在手机里扫描

    sudo apt install qrencode

    然后把client.conf客户配置文件变成二维码,下面那条命令是假定你在 /etc/wireguard/下面的执行的

    qrencode -t ansiutf8 < client.conf

     
    //把它设为服务
    systemctl enable wg-quick@wg0
  • 相关阅读:
    Python: 通过 pip 安装第三方包后依然不能 import
    jar命令
    vim中删除^M
    Linux 非互联网环境安装依赖包
    安装rpm包时提示错误:依赖检测失败的解决方法
    python3.5安装
    yum配置安装 及报错
    统计数组元素出现的次数
    插入法排序
    选择法排序
  • 原文地址:https://www.cnblogs.com/redmondfan/p/10304322.html
Copyright © 2011-2022 走看看