HikariBlog
Webエンジニア向けブログ
インフラ

【AWS】思っている以上に簡単!LightSailを使ってVPNを構築!【IPアドレス固定】

create-vpn

今回はVPNサーバーを構築していきます。

なんとなく、めんどくさそうなイメージがありましたが、数分で構築できました。

IP制限かける場合はVPN1つあるとかなり便利ですよね。

サーバーの作成

まずはサーバーを構築します。

私はAWSのLightSailを利用しました。

LightSailで構築する場合はこちらの記事が参考になると思います。

こちらの記事では設計図の選択でWordPressを選択していますが、今回は「OSのみ」の「Amazon Linux 2」を選択します。

IPアドレスの固定

上記の記事を参考に、IPアドレスの固定も行ってください。

ポートの開放

作成したインスタンスの「管理」→「ネットワーキング」から以下のポートを開放しておきます。

IPv4ファイアウォールだけ開放しておけば問題ないと思います。

制限は「任意のIPv4アドレス」にしました。

  • TCP:1701
  • TCP:5555
  • UDP:500
  • UDP:4500

Softether VPNの起動

作成したインスタンスのコンソールボタンからコンソールを開き、以下のコマンドを順番に実行します。

パラメータの共有鍵、ユーザー名、パスワードは任意の値(文字列)を設定してください。

$ sudo yum install -y docker
$ sudo systemctl start docker
$ sudo usermod -a -G docker ec2-user
$ sudo systemctl enable docker

$ sudo docker run -d --privileged -p 500:500/udp -p 4500:4500/udp -p 1701:1701/tcp -p 5555:5555/tcp \
      -e PSK='共有鍵' \
      -e USERS='ユーザー名:パスワード' \
      siomiz/softethervpn

Macから接続してみる

システム環境設定の「ネットワーク」から接続できます。

以下のように設定することで接続できると思います。

  • インターフェイス:VPN
  • VPNタイプ:L2TP over IPSec
  • サービス名:任意
  • サーバアドレス:インスタンスのIPアドレス(固定したIPアドレス)
  • アカウント名:ユーザー名
  • 認証設定
    • パスワード:パスワード
    • 共有シークレット:共有鍵
  • 詳細
    • 「すべてのトラフィックをVPN接続経由で送信」にチェック

これでVPN経由でインターネットにアクセスできるようになります。

接続前と接続後でIPアドレスが切り替わっているはずです。

参考

https://qiita.com/reoring/items/0d1f556064d363f0ccb8

https://scrapbox.io/motoso/Amazon_Lightsail%E3%81%A7Softether_VPN%E3%82%92%E3%81%9F%E3%81%A6%E3%82%8B