Tôi đang chạy "Máy chủ" Wireguard trong mạng cục bộ của mình, tôi có thể truy cập từ xa thông qua IP công khai tĩnh của mình.
Tôi muốn có thể giới hạn quyền truy cập vào các máy ngang hàng từ xa của Wireguard đối với các dịch vụ/máy trong lan của tôi, nơi tôi lưu trữ máy chủ khác.
Ví dụ:
Máy chủ 1 (192.168.1.23 | 10.0.0.1) đã cài đặt Wireguard + Nextcloud + Jellyfin trong cùng một máy
Máy chủ 2 (192.168.1.62) với Photoprism
Ngang hàng 1 từ xa (10.0.0.2 | ip động)
Ngang hàng từ xa 2 (10.0.0.3 | ip động)
Tôi muốn:
1- Cho phép peer1 (10.0.0.2) truy cập Server 1 Nextcloud + Jellyfin và truy cập Server 2 vào Photoprism.
2- Cho phép Peer2 (10.0.0.3) chỉ truy cập Máy chủ 1 Nextcloud chứ không phải Jellyfin và chặn quyền truy cập Máy chủ 2
Hiện tại tôi có thể truy cập tất cả các máy trong mạng của mình từ tất cả các Máy ngang hàng.
Quy tắc iptables:
PostUp = iptables -A FORWARD -i %i -j CHẤP NHẬN; iptables -A FORWARD -o %i -j CHẤP NHẬN; iptables -t nat -A POSTROUTING -o enp0s7 -j MASQUERADE; iptables -t nat -A POSTROUTING -o wg0
PostDown = iptables -D FORWARD -i %i -j CHẤP NHẬN; iptables -D CHUYỂN ĐI -o %i -j CHẤP NHẬN; iptables -t nat -D POSTROUTING -o enp0s7 -j MASQUERADE; iptables -t nat -D POSTROUTING -o wg0
tôi đã làm theo cái này hướng dẫn, từ Justin Ludwig bởi vì cấu trúc liên kết Site to Point rất giống với cấu trúc liên kết của tôi.
Vì vậy, tôi đã cố gắng sao chép các quy tắc Iptables bằng các quy tắc sau:
# giả trang
PreUp = iptables -t mangle -A PREROUTING -i wg0 -j MARK --set-mark 0x200
PreUp = iptables -t nat -A POSTROUTING ! -o wg0 -m mark --mark 0x200 -j MASQUERADE
PostDown = iptables -t mangle -D PREROUTING -i wg0 -j MARK --set-mark 0x200
PostDown = iptables -t nat -D POSTROUTING ! -o wg0 -m mark --mark 0x200 -j MASQUERADE
# bảo vệ dây xâm nhập
PreUp = iptables -I INPUT -p udp --dport 2332 -j CHẤP NHẬN
PostDown = iptables -D INPUT -p udp --dport 2332 -j CHẤP NHẬN
# tường lửa trang web
PreUp = iptables -N wg0-filter
PreUp = iptables -N to-photoprism
PreUp = iptables -N to-jellyfin
PreUp = iptables -N to-nextcloud
PreUp = iptables -I INPUT -i wg0 -j wg0-filter
PreUp = iptables -I FORWARD -i wg0 -j wg0-filter
PreUp = iptables -I FORWARD -o wg0 -j wg0-filter
PreUp = iptables -I OUTPUT -o wg0 -j wg0-filter
PreUp = iptables -A trạng thái wg0-filter -m --state ĐÃ THÀNH LẬP, LIÊN QUAN -j CHẤP NHẬN
PreUp = iptables -A wg0-filter -d 192.168.1.63 -p tcp --dport 2342 -j to-photoprism
PreUp = iptables -A wg0-filter -d 192.168.1.23 -p tcp --dport 8096 -j to-jellyfin
PreUp = iptables -A wg0-filter -d 192.168.1.23 -p tcp --dport 80 -j to-nextcloud
PreUp = iptables -A wg0-filter -j TỪ CHỐI
PreUp = iptables -A to-photoprism -s 10.0.0.2 -j CHẤP NHẬN
PreUp = iptables -A to-jellyfin -s 10.0.0.2 -j CHẤP NHẬN
PreUp = iptables -A to-jellyfin -s 10.0.0.3 -j CHẤP NHẬN
PreUp = iptables -A to-nextcloud -s 10.0.0.2 -j CHẤP NHẬN
PreUp = iptables -A to-nextcloud -s 10.0.0.3 -j CHẤP NHẬN
PostDown = iptables -D INPUT -i wg0 -j wg0-filter
PostDown = iptables -D FORWARD -i wg0 -j wg0-filter
PostDown = iptables -D FORWARD -o wg0 -j wg0-filter
PostDown = iptables -D OUTPUT -o wg0 -j wg0-filter
PostDown = iptables -F to-photoprism
PostDown = iptables -F to-jellyfin
PostDown = iptables -F to-nextcloud
PostDown = iptables -X to-photoprism
PostDown = iptables -X to-jellyfin
PostDown = iptables -X tới nextcloud
Điều này đã không làm việc,
Peer 1 và Peer 2 có thể kết nối với Server 1, cả hai dịch vụ, nhưng không phải Server 2.
Tôi không hiểu rõ những gì tôi phải thay đổi để làm cho công việc này hoạt động, tôi sẽ rất vui nếu ai đó có thể tham gia.
Cảm ơn trước