aws ec2 인스턴스에 openvpn 서버를 설정하고 있습니다. 이 인스턴스에는 두 가지 인터페이스가 있습니다.
- 프라이빗 서브넷(10.10.0.0/17)에 속하는 인터페이스 1개
- 퍼블릭 서브넷(10.10.128.0/17)에 속하는 인터페이스 1개
내 목표는 인터넷 트래픽이 VPN을 통해 프라이빗 서브넷에 있는 인스턴스와 통신하도록 허용하는 것입니다. 다음은 스키마입니다.
외부 인터페이스와 공용 인터페이스 사이의 연결이 잘 설정되어 있습니다. 또한 프라이빗 인터페이스와 프라이빗 서브넷에 있는 인스턴스 간에도 설정됩니다.
외부 클라이언트에서 개인 인스턴스를 ping하려고 하면 문제가 나타납니다. "초기화 시퀀스 완료" 메시지가 표시되지만 터널을 통해 라우팅되는 트래픽이 없는 것 같습니다. 실제로 목적지가 VPN 서버 자체인 경우에도 전혀 경로가 발견되지 않은 것 같습니다.
경로가 생성될 때 오류가 있는 것 같지만 커널 라우팅 테이블에 있으므로 문제가 여기에서 발생하지 않는 것 같습니다.
내 클라이언트 구성은 다음과 같습니다.
client
dev tun
proto udp
remote <server_ip> 1194
route 10.10.0.0 255.255.128.0
nobind
resolv-retry infinite
persist-key
persist-tun
comp-lzo
verb 3
cipher AES-256-CBC
<ca>
-----BEGIN CERTIFICATE-----
<SNIP>
-----END CERTIFICATE-----
</ca>
<cert>
Certificate:
<SNIP>
-----BEGIN CERTIFICATE-----
<SNIP>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<SNIP>
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
<SNIP>
-----END PRIVATE KEY-----
</key>
그리고 서버 하나는 다음과 같습니다.
local 0.0.0.0
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
topology subnet
server 10.10.0.0 255.255.128.0
#client-to-client communication
duplicate-cn
keepalive 10 120
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
mute 10
explicit-exit-notify 1
저는 openvpn 하우투를 처음부터 끝까지 따랐는데 실제로 제가 무엇을 놓치고 있는지 모르겠습니다. 도움을 주셔서 미리 감사드립니다!