3分で稼働Azure上にUbuntuサーバを稼働させてみる-応用静的パブリックIPを動的IPに変更する

AzureにUbuntu

最安構成で、3.8$/月くらいでいけますが、性能的にはどうでしょう。

テストでコンソール画面で利用するくらいなら、全く問題にはならなそうです。あとはサーバで何をさせるかで、スペックアップしないといけないですね。

SSHキーによる接続もできそうです。

グローバルIPアドレスから直接SSH接続できます。この際に使用するユーザ名は、仮想マシン作成時に指定する事ができます。

下記例では

ユーザ名: azureuser (デフォルトの設定です)

パスワード: 秘密鍵

です。

ネットワークはデフォルトのまま作成してみます。

Azure ADを有効、自動シャットダウンも有効にしました。

作成すると、新しいキーのダウンロードが促されます。

接続

グローバルIPアドレスを確認します

ターミナルソフトを利用して接続かけてみます。

私はTeraTermを利用しています。

接続には、デブロイ時にダウンロードを促された秘密鍵を利用します。

ユーザ名・パスワード

ユーザ名: azureuser

パスワード:秘密鍵

という組み合わせになります。ユーザ名はデプロイ時に設定したものです。

ログインできました。

静的PublicIPを設定する方法

仮想マシン作成時に、パブリックIPを新規作成し、

SKU Basic

割り当て 静的

を選択する。

PublicIPアドレスの料金

静的なパブリックIPアドレスは、最初の5つまで、1時間あたり0.4032円です。それ以降は、1時間あたり0.896円となります。(執筆時点。東日本リージョン。)1時間あたり0.4032円は、1ヶ月(30日)あたり、約290円となります。IPアドレスが動的な場合は、仮想マシンを停止して「割り当て解除」とすると課金も停止されますが、固定化した場合には、仮想マシンを停止しても課金されることに注意しましょう。

第10回 仮想マシンの管理、設定、リモート接続(3) (小澤昌樹)

この記述からいくと、動的パブリックIPアドレスなら、仮想マシンを停止して割り当て解除すると課金されない。

静的パブリックIPアドレスは、仮想マシンを停止しても課金される事になります。

ドルで考えないといけないので、為替がうごくと料金も変化するようです。円安になると、コストがあがってしまうという事ですね

マニュアル

こちらが参考になるマイクロソフトのドキュメントです。

クイック スタート:Azure portal で Linux 仮想マシンを作成する

Azure portal を使用して静的パブリック IP アドレスを持つ仮想マシンを作成する

おまけ SoftEhterVPNのインストール

インストールされたUbuntuは、64bit版だった

azureuser@AzureUbuntu01:~$ uname -a
Linux AzureUbuntu01 5.11.0-1028-azure #31~20.04.2-Ubuntu SMP Tue Jan 18 08:46:15 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

gitからSoftEtherをダウンロードする

$ git clone https://github.com/SoftEtherVPN/SoftEtherVPN_Stable.git
Cloning into 'SoftEtherVPN_Stable'...
remote: Enumerating objects: 18851, done.
remote: Counting objects: 100% (241/241), done.
remote: Compressing objects: 100% (210/210), done.
remote: Total 18851 (delta 106), reused 57 (delta 29), pack-reused 18610
Receiving objects: 100% (18851/18851), 461.38 MiB | 26.42 MiB/s, done.
Resolving deltas: 100% (16690/16690), done.
Updating files: 100% (1921/1921), done.

ダウンロードしたフィルを解凍るする

azureuser@AzureUbuntu01:~$ tar -vvxzf softether-vpnserver-v4.38-9760-rtm-2021.08.17-linux-x64-64bit.tar.gz

makeをインストールする

$ sudo apt install make git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev libffi-dev libncurses5-dev

.configureする

~/SoftEtherVPN_Stable$ ./configure
---------------------------------------------------------------------
SoftEther VPN for Unix

Copyright (c) Daiyuu Nobori.
Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
Copyright (c) SoftEther Corporation.
Copyright (c) all contributors on SoftEther VPN project in GitHub.

License: The Apache License, Version 2.0

Read and understand README.TXT, LICENSE.TXT and WARNING.TXT before use.
---------------------------------------------------------------------

Welcome to the corner-cutting configure script !

The Makefile is generated. Run 'make' to build SoftEther VPN.

makeする

sudo make
省略
sudo make install
省略
--------------------------------------------------------------------
Installation completed successfully.

Execute 'vpnserver start' to run the SoftEther VPN Server background service.
Execute 'vpnbridge start' to run the SoftEther VPN Bridge background service.
Execute 'vpnclient start' to run the SoftEther VPN Client background service.
Execute 'vpncmd' to run SoftEther VPN Command-Line Utility to configure VPN Server, VPN Bridge or VPN Client.
--------------------------------------------------------------------

vpn serverを起動させる

$ sudo vpnserver start
The SoftEther VPN Server service has been started.

Let's get started by accessing to the following URL from your PC:

https://10.1.0.6:5555/
  or
https://10.1.0.6/

Note: IP address may vary. Specify your server's IP address.
A TLS certificate warning will appear because the server uses self signed certificate by default. That is natural. Continue with ignoring the TLS warning.

受信ポートを追加する

Azure側のネットワークファイヤーウォールにポート許可を追加します。

仮想マシン → ネットワーク → 受信ポートの規則を追加する

443ポートを許可します

優先度を見て、300がSSHになっているので、その下の310をつけます。この優先度に従って許可されていくので、優先度の高い位置に「拒否」が入っているとそこから先は評価されない事になります。

ここに追加されました。

SoftEtherサーバの設定

手元にあるWindowsクライアントマシンで、SoftEtherのサーバマネージャソフトを起動します。

管理者パスワードを入力せずに接続すると、初回起動時はパスワードを設定するように促されます。

初期設定

リモート悪アセスVPNサーバを稼働させます。

今回は特にIPSecは設定しません

VPN Azure クラウドは利用しません。

アクセスさせるためのユーザを追加します

SecureNAT設定しておきます

設定はデフォルトのままで大丈夫です

クライアントから接続試験

クライアントから接続試験を行います。

デフォルトゲートウェイがPacketixルータを向いているので、すでにAzure内への接続が可能な状態となっています。

C:\Users>ping post11.postgres.database.azure.com

post11.private.postgres.database.azure.com [10.1.1.4]に ping を送信しています 32 バイトのデータ:
10.1.1.4 からの応答: バイト数 =32 時間 =216ms TTL=63
10.1.1.4 からの応答: バイト数 =32 時間 =223ms TTL=63
10.1.1.4 からの応答: バイト数 =32 時間 =241ms TTL=63
10.1.1.4 からの応答: バイト数 =32 時間 =241ms TTL=63

10.1.1.4 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 216ms、最大 = 241ms、平均 = 230ms

Azure VMのUbuntuを動的IPに変更

関連付けの解除

現在のパブリックIPを削除

セキュリティグループ AzureUbuntu01-nsgは削除できなかった

ネットワークインターフェースの作成

同じリソースの中でIPアドレスを作成します

ネットワークインターフェースに新しいIPを割り当てる

ipconfig1をクリック

先ほど作成したipconfig1にパブリックIPアドレスを割り当てる

SoftEtherをDDNSで運用

SoftEtherのDDNSを利用して、動的パブリックIPでも運用可能にする

これで、PublicIPアドレス分の費用が浮きます。