如何获得OpenVPN客户端(Mikrotik RouterOS)< – > OpenVPN服务器(Debian / Linux)设置工作

我在使MT与OpenVPN服务器(Debian)一起工作时遇到一些问题。 我可以成功连接到OVPN服务器,但stream量不会通过OVPN服务器路由。 这是我的configuration。

设置 – http://i.imgur.com/WvbjQaj.jpg

OpenVPN服务器(Debian / Linux)configuration

 #cat /etc/openvpn/server.conf
当地95.2.171.3
端口1194
原型TCP
 dev tun

 ca ca.crt
 cert server.crt
密钥server.key
 dh dh.pem

服务器10.8.0.0 255.255.255.0
 ifconfig-pool-persist ipp.txt

 client-config-dir ccd
路由192.168.81.0/24 255.255.255.0

保持活力10 120
 tun-mtu 1500
 mssfix 1450

密码AES-256-CBC
 auth sha1

坚持键
坚持-TUN

状态/var/log/openvpn-status.log
 log-append /var/log/openvpn.log

动词5
 crl-verify /etc/openvpn/easy-rsa/pki/crl.pem

 #cat / etc / openvpn / ccd / client
 iroute 192.168.81.0 255.255.255.0 10.8.0.2
 ifconfig-push 10.8.0.2 10.8.0.1

 #cat / proc / sys / net / ipv4 / ip_forward
 1

 #netstat -an |  grep 1194
 tcp 0 0 95.2.171.3:1194 0.0.0.0:* LISTEN
 tcp 0 0 95.2.171.3:1194 81.190.190.100:62973 ESTABLISHED

 #ifconfig
 eth0 Link encap:Ethernet HWaddr 20:cf:30:f2:a8:76
           inet addr:95.2.171.3 Bcast:95.2.171.31 Mask:255.255.255.224
           inet6地址:fe80 :: 22cf:30ff:fef2:a876 / 64作用域:链接
          广播运行多播MTU:1500公制:1
           RX数据包:255189错误:0丢弃:0超出:0帧:0
           TX数据包:333054错误:0丢弃:0超载:0载波:0
          碰撞:0 txqueuelen:1000
           RX字节:34521411(32.9 MiB)TX字节:367074147(350.0 MiB)
          中断:26基地址:0x8000

链路封装:本地环回
           inet addr:127.0.0.1掩码:255.0.0.0
           inet6 addr::: 1/128范围:主机
           UP LOOPBACK RUNNING MTU:16436公制:1
           RX数据包:15579错误:0丢弃:0超限:0帧:0
           TX数据包:15579错误:0丢弃:0超载:0载波:0
          碰撞:0 txqueuelen:0
           RX字节:1326071(1.2 MiB)TX字节:1326071(1.2 MiB)

 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
           inet addr:10.8.0.1 PtP:10.8.0.2掩码:255.255.255.255
           UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500公制:1
           RX数据包:57个错误:0丢弃:0超出:0帧:0
           TX包:6个错误:0丢弃:0超限:0载波:0
          碰撞:0 txqueuelen:100
           RX字节:6669(6.5 KiB)TX字节:504(504.0 B)

 #netstat -rn
内核IP路由表
目标网关Genmask标志MSS窗口irtt Iface
 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
 95.2.171.0 0.0.0.0 255.255.255.224 U 0 0 0 eth0
 192.168.81.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
 0.0.0.0 95.2.171.30 0.0.0.0 UG 0 0 0 eth0

 #iptables -S
 -Pinput接受
 -P正向接受
 -P OUTPUT ACCEPT
 -Ainput-i lo -j接受
 -A INPUT -d 127.0.0.0/8 -i!lo -j REJECT --reject-with icmp-port-unreachable
 -A INPUT -i tun0 -j ACCEPT
 -Ainput-m状态 - 状态RELATED,ESTABLISHED -j接受
 -A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
 -Ainput-m限制 - 限制5 / min -j LOG  - 日志前缀“iptables denied:”--log-level 7
 -A INPUT -j REJECT --reject-with icmp-port-unreachable
 -A OUTPUT -j ACCEPT

 #iptables -t nat -S
 -P PREROUTING接受
 -P POSTROUTING ACCEPT
 -P OUTPUT ACCEPT
 -A POSTROUTING -s 10.8.0.0/24 -j SNAT  -  to-source 95.2.171.3
 -A POSTROUTING -s 10.8.0.0/24 -j SNAT  -  to-source 95.2.171.3
 -A POSTROUTING -s 10.8.0.0/24 -j SNAT  -  to-source 95.2.171.3

 #ping 8.8.8.8
 PING 8.8.8.8(8.8.8.8)56(84)字节的数据。
来自8.8.8.8的64字节:icmp_req = 1 ttl = 55时间= 12.9ms
来自8.8.8.8的64个字节:icmp_req = 2 ttl = 55时间= 12.8ms

这是我在OpenVPN服务器上的所有configuration(Debian / Linux)。

OpenVPN客户端(Mikrotik RouterOS 6)configuration

 /界面打印
标志:D  - dynamic,X  - 禁用,R  - 运行,S  - 奴隶
  #名称types实际-MTU L2MTU MAX-L2MTU MAC地址
  0 R醚1醚1500 1600 4076 D4:CA:6D:31:14:F4
  1 S醚2醚1500 1598 2028 D4:CA:6D:31:14:F5
  2 S醚3醚1500 1598 2028 D4:CA:6D:31:14:F6
  3 S醚4醚1500 1598 2028 D4:CA:6D:31:14:F7
  4 S醚5醚1500 1598 2028 D4:CA:6D:31:14:F8
  5 RS wlan1 wlan 1500 1600 D4:CA:6D:31:14:F9
  6 R桥1桥1500 1598 D4:CA:6D:31:14:F5
  7 R ovpn-out1 ovpn-out 1500 FE:3E:27:7D:61:8C

  /界面桥接打印
标志:X  - 禁用,R  - 运行
  0 R name =“bridge1”mtu = auto actual-mtu = 1500 l2mtu = 1598 arp = enabled mac-address = D4:CA:6D:31:14:F5 protocol-mode = rstp priority = 0x8000 auto-mac = yes admin -mac = 00:00:00:00:00 max-message-age = 20s forward-delay = 15s transmit-hold-count = 6 aging-time = 5m

 /接口桥接端口打印
标志:X  - 禁用,I  - 无效,D  - dynamic
  #界面桥梁优先path - 成本视野
  0我ether2 bridge1 0x80 10无
  1我ether3 bridge1 0x80 10无
  2我ether4桥1 0x80 10无
  3我ether5 bridge1 0x80 10无
  4 wlan1 bridge1 0x80 10无

  / ip地址打印
标志:X  - 禁用,I  - 无效,D  - dynamic
  #地址networking接口
  0 192.168.81.1/24 192.168.81.0 bridge1
  1 D 192.168.7.200/24 192.168.7.0 ether1
  2 D 10.8.0.2/32 10.8.0.1 ovpn-out1

  / ip防火墙nat打印
标志:X  - 禁用,I  - 无效,D  - dynamic
  0 chain = srcnat action = masquerade to-addresses = 0.0.0.0 out-interface = ether1 log = no log-prefix =“”

  / ip路由打印
标志:X禁用,A  - 活动,D  - dynamic,C  - 连接,S静态,r  -  rip,b  -  bgp,o  -  ospf,m  -  mme,B  - 黑洞,U  - 不可达,P  - 禁止
  #DST-ADDRESS PREF-SRC网关距离
  0 ADS 0.0.0.0/0 192.168.7.1 0
  1 ADC 10.8.0.1/32 10.8.0.2 ovpn-out1 0
  2 ADC 192.168.7.0/24 192.168.7.200 ether1 0
  3 ADC 192.168.81.0/24 192.168.81.1 bridge1 0

  / interface ovpn-client print
标志:X  - 禁用,R  - 运行
  0 R name =“ovpn-out1”mac-address = FE:3E:27:7D:61:8C max-mtu = 1500 connect-to = 195.13.171.3 port = 1194 mode = ip user =“client”password = “profile = default certificate = Client auth = sha1 cipher = aes256 add-default-route = no

  / ping 10.8.0.1
   SEQ主机大小TTL时间状态
     0 10.8.0.1 56 64 6ms
     1 10.8.0.1 56 64 9ms
     2 10.8.0.1 56 64 7ms
     3 10.8.0.1 56 64 6ms
    发送= 4收到= 4分组丢失= 0%最小 -  rtt = 6ms平均 -  rtt = 7ms最大 -  rtt = 9ms

正如你所看到的,我可以从Mikrotik ping到OpenVPN服务器。 但是当我从本地PC使用互联网,它显示IP地址81.190.190.100,而不是我想看到的 – OpenVPN服务器IP – 95.2.171.3。

我可以成功从笔记本电脑(192.168.81.100/24)ping / traceroute到10.8.0.1,但不明白为什么不通过VPN隧道路由。 我想我在路由服务器(Linux)或客户端(mikrotik)上丢失了一些东西。

谢谢你的帮助! 我正在玩这个一会儿,并且不能得到它运行:(

祝你有美好的一天!

您的客户端不通过OVPN隧道,因为mikrotik上没有路由(默认网关)!

因此,在mikrotik上添加另一个带有路由标记的网关,其目标是OVPN服务器10.8.0.1

/ip route add dst-address=0.0.0.0/0 gateway=10.8.0.1 routing-mark=clientmark 

当然,你应该为路由标记添加一个mangle规则,如:

 /ip firewall mangle add action=mark-routing chain=prerouting src-address=192.168.81.0/24 new-routing-mark=clientmark 

客户端(src-address 192.168.81.0/24)也应该有一个NAT规则。

 ip firewall nat add action=masquerade chain=srcnat src-address=192.168.81.0/24 out-interface=ovpn-out1