こんにちは、T2.microです。
寒くなってまいりましたが、皆様いかがお過ごしでしょうか。
さて今日はPPTPについてこんな記事を書かせていただきました。
お時間がございましたら、ご覧ください。

AWSのマーケットプレイスで提供されているVyOS(1.05)を使用したPPTP通信について検証を行いました。

やりたいこと

・VPCに対してクライアント(windows)からPPTP接続を行う

環境

VPCを用意

VPC 10.0.0.0/16

VPC内にサブネットを用意

publicサブネット
 10.0.100.0/24
privateサブネット
 10.0.200.0/24

publicサブネットにVyOS(ver1.05)を用意

VPC のpublicサブネットにあるVyOSを用意
※マーケットプレイスからlaunch

VyOSにはeniを2つをアタッチしておく。

VyOS
 public:eth0 10.0.100.123/24 
 private:eth1 10.0.200.123/24

※eniのsource dest.をすべて「無効化」にしておく。

VyOSのPublicのeni(eth0)にEIPを付与する

VyOS - eth0:XXX.XXX.XXX.XXX

privateサブネットに疎通確認用のEC2(なんでもよい)を用意

AmazonLinux 10.0.200.10

SecurityGroup

VyOS A
 ・SSH ※source:自分の端末からのSSH接続
 ・GRE (IP Protocol 47) ※source:0.0.0.0/0
 ・UDP port500 ※source:0.0.0.0/0

AmazonLinux (疎通確認用なのでざっくり)
 ・ALL traffic ※source:10.0.0.0/16(VPC)

RouteTable

privateサブネットのroutetableに
PPTPクライアントのアドレスプールに指定したIPへの通信はpublicサブネットのVyOSのeth1(eni-XXXXXXXX)を通る様、指定

ここからVyOS内の設定

eniを認識させる

VyOS-A_/etc/network/interfaces

以下追記
auto eth1
iface eth1 inet static
address 10.0.200.123
netmask 255.255.255.0

networkingを再起動

$sudo service networking restart

(EC2を再起動するとEIPに接続できなくなる?事象が発生したので、rc.localに以下を追記した。どなたか、詳しい方がいらっしゃいましたら仕組みを教えてください。)

/etc/rc.local

service networking restart

PPTP 設定

config設定
configure

#事前準備
MY_USER_NAME1=myuser1
MY_USER_PASSWORD1=myuser1
MY_USER_NAME2=myuser2
MY_USER_PASSWORD2=myuser2
MY_START_POOL_IP=10.0.100.1
MY_STOP_POOL_IP=10.0.100.100
MY_OUTSIDE_ADDRESS=10.0.100.123

set vpn pptp remote-access authentication mode local
set vpn pptp remote-access authentication local-users username $MY_USER_NAME1 password $MY_USER_PASSWORD1
set vpn pptp remote-access authentication local-users username $MY_USER_NAME2 password $MY_USER_PASSWORD2
set vpn pptp remote-access client-ip-pool start $MY_START_POOL_IP
set vpn pptp remote-access client-ip-pool stop $MY_STOP_POOL_IP
set vpn pptp remote-access outside-address $MY_OUTSIDE_ADDRESS
set vpn pptp remote-access dns-servers server-1 8.8.8.8
set vpn pptp remote-access dns-servers server-2 8.8.4.4

commit
save

windowsクライアントからPPTP接続を行い、
ローカルから接続確認用のec2に疎通が確認できた。

他にも、Region間VPN接続なども行えるので、機会があれば記載したいと思います。

TOP