나는 tap0 VPN을 실행하고 있습니다. 고객을 침묵시키기 위해 나는 이 #client-to-client
대사에 주석을 달았고 효과가 있었습니다.
이제 고객과 대화할 IP를 일부 남겨두고 싶습니다. 예: 10.8.0.2 및 10.8.0.6은 10.8.0.0./24 범위 내의 모든 사람과 대화할 수 있습니다.
어떻게 해야 합니까?
답변1
OpenVPN 서버의 구성 파일에서 해당 패킷을 조작할 수 있도록 이 줄을 비활성화하거나 제거 /etc/openvpn/server.conf
해야 합니다 . 그런 다음 나머지 클라이언트와 통신해야 하는 두 클라이언트에 고정 IP 주소가 할당됩니다. 그런 다음 iptables를 사용하여 승인되지 않은 클라이언트 간의 통신을 차단합니다.client-to-client
iptables
사용자 tom과 jerry에게 고정 IP 주소 할당
$ sudo echo "tom,10.0.8.2" >> ifconfig-pool-persist ipp.txt
$ sudo echo "jerry,10.0.8.6" >> ifconfig-pool-persist ipp.txt
# Then restart openvpn service
$ systemctl restart openvpn@server
그런 다음 iptables 규칙을 FORWARD 체인에 추가하고 규칙은 위에서 아래로 처리된다는 점을 기억하세요( 10.0.8.1
OpenVPN 서버에 속함).
$ sudo iptables -A FORWARD -s 10.0.8.1 -d 10.0.8.0/24 -j ACCEPT
$ sudo iptables -A FORWARD -s 10.0.8.2 -d 10.0.8.0/24 -j ACCEPT
$ sudo iptables -A FORWARD -s 10.0.8.6 -d 10.0.8.0/24 -j ACCEPT
$ sudo iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Assuming OpenVPN server uses tun0, block unauthorized client-to-client
$ sudo iptables -A FORWARD -i tun0 -o tun0 -j DROP
client-to-client
활성화된 경우 iptables
이러한 트래픽은 커널에 푸시되지 않으므로 조작할 수 없습니다.
인용하다:https://serverfault.com/questions/736274/openvpn-client-to-client