欲将网卡 tun0 的流量转发到网卡 eth0, 那么我们可以设置 iptables 的 nat 转发。
将来自 10.8.0.0/24 网段的流量转发到 eth0 中,插入 nat 表的 POSTROUTING
chain 中,
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
允许从 tun0 网卡到 eth0 的转发,允许到 tun0 的转发,插入到 filter 表的 FORWARD
chain 中。
iptables -I FORWARD 1 -i tun0 -o eth0 -j ACCEPT
iptables -I FORWARD 1 -i eth0 -o tun0 -j ACCEPT
iptables -vL FORWARD --line-numbers
iptables -t nat -vnL POSTROUTING --line-n
...iptables
将目标端口为 80 的流量丢弃掉,我设置了怎么没用?我所设置的命令是
iptables -I INPUT -p tcp --dport 80 -j DROP
设置完了之后,我用 curl -i http 协议的网站还是能访问得通,问题出在哪儿?
iptables -L
看一下,看到了那个 DOCKER chain 了吗?注意这里不是 iptables -L INPUT
, 也就是没有 INPUT
chain 参数。
哦,原来是 DOCKER 的优先级的问题。🤦♂️
那就插入到 DOCKER chain 中吧,
sudo iptables -I DOCKER -p tcp --dport 80 -j DROP
然后再查看一下
sudo iptables -L DOCKER
最后如果需要删除掉该行配置的话,可以利用
sudo iptables -D DOCKER 1
或者利用命令删除前面设置在 INPUT 中的配置,
sudo iptables -D INPUT 1
...easy-rsa 应用中的一个场景,生成 ca.crt, server.crt, server.key, dh.pem 等服务端证书配置和 client1.crt, client1.key 等客户端需要的证书配置,如何在 ubuntu 中来应用 easyrsa 来完成上述的事情?
首先哪里有 easyrsa? 可以利用 ubuntu 22 repo 安装
$ sudo apt install -y easy-rsa
这样 /usr/share/easy-rsa/
下面就有了 easyrsa 的安装。
现在我们把他拷贝到 /etc/easy-rsa/
目录下面
$ sudo cp -r /usr/share/easy-rsa/ /etc/
这样我们就可以在 /etc/easy-rsa/
下应用 easyrsa 来生成证书啦。
切换到 /etc/easy-rsa/
cd /etc/easy-rsa/
修改 vars.example
# cp vars.example vars
# vim vars
查看 ./easyrsa 的帮助
# ./easyrsa
...VIM 如何关闭某个 buffer?设想有这样的场景,你正在编辑一个配置文件,而这个配置文件引用了另一个配置文件作为指令的值,比如证书的路径。这个时候,你可以利用 VIM g-f
来跳转到这个路径下面对应的文件,如果这个路径地址是正确的话,那么你就能在 VIM 中打开了这个跳转的文件。好的,现在你已经在这个新的文件中了,而且你已经确认了文件没错。
然后,你想要返回之前的那个文件,你会怎么做呢?我想你会想到的是 :bn
或者 :bp
, 用来切换下一个buffer 或者上一个 buffer, 然而切换回来以后,这时候你又有一个新的某路径下配置文件被你打开了,渐渐的被打开的配置文件越来越多,而你切换却越来越麻烦,这时候你可能就会想我能不能关掉它们了,因为我只是临时性的查看了它们一下,而正在编辑的那个主文件才是重点。
于是,你试了试 :close
, 发现没有这个命令,或者报错说 Cannot close last window
, 然后你又试了试 :quit
想想肯定也不对,这个时候你懵了,答案究竟是什么呢?
是 :bd
, 或者 :bdelete
...请注意,关闭缓冲区后,其中的文件内容将不再显示
用编辑器打开 /etc/sysctl.conf
文件,然后修改参数 net.ipv4.ip_forward=1
,将该行解除注释。
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
然后执行 sysctl -p
参数 -p
代表的含义是
-p, --load[=<file>] read values from file
通过 /proc/sys/net/ipv4/ip_forward
查看
# cat /proc/sys/net/ipv4/ip_forward
1
参考:
...