클라이언트가 X509 인증서를 사용하여 연결하는 OpenVPN 서버가 있습니다. 여기에 연결하는 일부 클라이언트는 DHCP 서버를 사용하여 임의의 IP를 얻는 반면 다른 클라이언트는 다음과 같은 사용자 프로필을 가지고 있습니다.
ifconfig-push 192.168.67.24 255.255.255.0
이는 기본적으로 해당 클라이언트가 연결할 때 항상 동일한 IP를 갖도록 설정합니다.
과거에 우리가 한 일은 다음과 같은 내용을 포함하는 iptables 방화벽 규칙을 만드는 것이었습니다.
if the source IP is 192.168.67.24, allow it access to servers X and Y only
내 질문은 이것이 액세스 제어 수단으로 효과적인가입니다. 아니면 클라이언트가 OpenVPN DHCP 서버에서 제공한 고정 IP를 이미 사용하지 않고 동일한 서브넷에 있는 한 언제든지 무시할 수 있습니까?
IP를 변경할 수 있다면 OpenVPN 서버의 여러 인스턴스를 생성하고 개별 IP가 아닌 인터페이스(tun0, tun1 등)를 기반으로 iptables 규칙을 설정하는 것이 해결책이 될 것 같습니다. 아니면 지금 우리가 하고 있는 일이 괜찮고 OpenVPN 서버가 IP 변경을 방지할까요?
답변1
모호함을 통한 보안이 될 것입니다. 분명히 클라이언트가 IP를 재정의하는 방법은 여러 가지가 있으며 이론적으로는 보안을 유지할 수 있지만 여전히 움직이는 부분이 많이 있습니다.
다음은 IP를 재정의하는 클라이언트에 대한 OpenVPN 포럼의 게시물입니다.https://forums.openvpn.net/viewtopic.php?t=22598
따라서 누군가가 알아낼 때까지는 작동하지 않습니다. 그러나 누군가 OpenVPN과 전용 서버 사이에 회선을 연결하면 액세스할 수 있습니다. 가장 좋은 방법은 무차별 대입과 DoS를 방지하기 위해 분명히 잘못된 IP를 차단하는 것이지만 인증은 서버에 의존하는 것입니다.
서버를 신뢰할 수 없거나 인증 옵션이 없는 경우 OpenVPN을 사용하여 보안을 유지할 수 있지만 저는 각 전용 서버에 대해 OpenVPN 서버를 만들고 이들 사이의 회선(직접 또는 사설 VLAN)에서 다른 트래픽을 허용하지 않습니다.