Làm cách nào để thiết lập OpenVPN để cho phép các máy khách VPN truy cập tất cả các máy chủ bên trong mạng LAN của máy chủ?


12

LAN IP máy chủ của tôi là 192.168.1.1 và có một máy chủ web mạng nội bộ trên 192.168.1.2 Trình nền OpenVPN được cấu hình để cung cấp cho khách hàng các địa chỉ 192.168.2. *.

Có một push "route 192.168.1.0 255.255.255.0"dòng trong cấu hình mà tôi mong đợi để cho phép các máy khách VPN truy cập vào toàn bộ mạng 192.168.1.0, nhưng chúng chỉ có thể truy cập 192.168.1.1 - chính máy chủ VPN.

Tôi đã cố gắng tạo điều kiện cho net.ipv4.ip_forward = 1/etc/sysctl.confnhưng điều này không giúp đỡ.

Có ý kiến ​​gì không?

PS: Máy chủ chạy Ubuntu 12.04.
PPS: OpenVPN chạy ở tunchế độ trên UDP.


Gửi @FrandsHansen, tôi chỉ chấp nhận câu trả lời cùng lúc 1. là câu trả lời đúng cho câu hỏi, 2. đã được tôi kiểm tra để làm việc.
Ivan

Câu trả lời:


18

Hãy chắc chắn rằng chuyển tiếp ip được kích hoạt một cách hiệu quả

echo 1 > /proc/sys/net/ipv4/ip_forward

Ngoài ra, để đẩy tuyến hoạt động, các máy chủ ở bên trong cũng cần biết tuyến đến địa chỉ IP máy khách OpenVPN của bạn. Vì vậy, họ sẽ cần biết tuyến đường đến 192.168.2.0/24

Bạn rất có thể làm cho iptables thực hiện định tuyến thông qua giả trang bằng cách sử dụng

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT

echo 1 > /proc/sys/net/ipv4/ip_forwardcho -bash: /proc/sys/net/ipv4/ip_forward: Permission denied- nó có nghĩa là gì trong trường hợp này?
Ivan

Rất có thể nó có nghĩa là bạn không làm nó như root. Hãy thử làm nó với quyền root
Frands Hansen

Đó chỉ là hiệu ứng tương tự với sudo. Kết quả dự định là gì?
Ivan

1
Đặt sudo trước lệnh sẽ không thêm các đặc quyền vào tệp (sau dấu>), vì vậy bạn cần nâng lên để root và sau đó thực hiện.
Frands Hansen

1
hoặc sử dụngecho 1 | sudo tee
ygrek

2

Nếu mạng LAN của bạn thực sự là 192.168.1.0/24, thì bạn có thể gặp rất nhiều vấn đề. Bởi vì hầu hết các bộ định tuyến có mạng mặc định đó. Vì vậy, khi bạn ở trên mạng khách, Máy tính của bạn có thể nhận được một ip từ mạng 192.168.1.0/24. Vì vậy, Bạn không thể truy cập mạng từ xa, nhưng mạng khách. Tôi đề nghị chọn một mạng khác cho mạng LAN và VPN của bạn. ví dụ 192.170.15.0/24 cho LAN và 10.0.5.0/xx cho vpn. xx phụ thuộc vào số lượng máy khách vpn đang kết nối với mạng LAN.

đây là kịch bản fw của tôi cho openvpn

#!/bin/sh

iptables -A INPUT -i tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A INPUT -i tap+ -j ACCEPT
iptables -A FORWARD -i tap+ -j ACCEPT

# Allow packets from private subnets
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT

# i have multiple vpn networks
# 192.123.123.0/24 = LAN
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.9.0.0/30 -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.9.1.0/30 -o eth1 -d 192.123.123.39 -j MASQUERADE # to single server access only

echo 1 > /proc/sys/net/ipv4/ip_forward

Không, thực tế không phải 192.168.1.0, chỉ là 2 lưới 192.168 khác nhau. #. 0 lưới. Cảm ơn bạn đã trả lời.
Ivan

Nếu bạn cần, tôi có thể chia sẻ cấu hình máy chủ openvpn và cấu hình máy khách.
Guntis
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.