ubuntuでのVPN接続の設定方法

ubuntu20.04 LTSでVPN接続をしてみました。利用したVPNサーバーは筑波大学の学術実験プロジェクトのものです。サイトには利用できるVPNサーバーの一覧があります。利用したいVPNサーバーを決めて「OpenVPN設定ファイル」をクリックします。

ダウンロード画面が表示されます。DDNSホスト名が埋め込まれているovpnファイルと、IPアドレスが埋め込まれているovpnファイルがあるのですが、DDNSホスト名が埋め込まれているovpnファイルのほうをダウンロードします。

DDNSホスト名が埋め込まれているovpnファイルを選ぶ理由ですが、この画面の(下のほうにある)ヒントに次の記載があります。

多くの場合は、DDNSホスト名が埋め込まれている.ovpnファイルを使用することを推奨します。接続先のVPNサーバーのIPアドレスが変化しても、DDNSホスト名は変わらないためです。ただし、いくつかの国・地域では opengw.net というDDNSのドメイン名へのアクセスが禁止されている場合があります。このような場合は、IPアドレスが直接埋め込まれている.ovpnファイルを利用してください。

ubuntuのVPN設定に入ります。設定画面からネットワークを選びます。VPNのところにある「+」をクリックします。

VPNを追加の画面が表示されます。ファイルからインポートをクリックします。先ほどダウンロードしたovpnファイルを選択します。

自動で設定内容が反映されます。追加ボタンを押下します。

VPNの設定は、これで完了です。

インターネットに繋がっている状態でVPNの設定をオンにすると、VPNサーバーを経由して目的のサイトにアクセスします。

ifconfigで確認すると、VPNトンネルが出来ていることが確認できます。

IPアドレスですが、VPNサーバーを経由することにより元々の通信元のIPアドレスを隠蔽できます。PCとVPNサーバー間の通信は暗号化されます。

今回は public-vpn-90.opengw.net(219.100.37.55) という表記になっていたVPNサーバーを利用したのですが、WEBサーバーのアクセスログの通信元IPアドレスは 219.100.37.236 となっていました。IPアドレスが 219.100.37.55 と 219.100.37.236 とで異なっています。このへんの仕組みはよくわからないのですが、VPNサーバーの属するネットワークにあるいづれかのIPアドレスが割り当てられたのだと思います。

無線LANのセキュリティ規格(WEPからWPA3まで)

無線LANのセキュリティ規格である、WEP、WPA、WPA2、WPA3についてまとめてみました。

歴史を振り返ってみると無線LANの暗号方式として最初に登場したのはWEPです。ですが、WEPには致命的な脆弱性が見つかってしまい代替となる暗号方式が必要になりました。

その当時はIEEEが無線LANのセキュリティ規格であるIEEE802.11iの標準化を進めていたのですが、標準化の完了を待っていられる状況でもなく、Wi-FiアライアンスがIEEE802.11iのドラフト版をもとにWPAを策定しました。Wi-Fiアライアンスは無線LAN製品の普及促進を図る業界団体です。

その後、IEEE802.11iが標準化されるとWi-FiアライアンスはWPA2を策定しました。ですのでWPAとWPA2の中身はほとんど変わりません。

WEPはもともとは暗号方式を表す言葉だったのですが、WPAやWPA2と比べられるため規格名としても使われるようになったようです。もしWEPに脆弱性が見つからなければ(WPAという規格は存在しなくなり)WEPやIEEE802.11i準拠という呼び名になっていたかもしれません。

長らくはWPAやWPA2が使われていたのですが、今の最新規格は2018年に登場したWPA3です。WPA2の登場から実に14年ぶりのことでした。

ではそれぞれの規格が、どういう暗号方式で、それはどのような暗号アルゴリズムを使っていて、認証方式はどうなっているのか?を見てみます。

図の中にある認証方式(パーソナルとエンタープライズ)については後述するので、まずは暗号方式と暗号アルゴリズムについて説明します。

WEPは暗号アルゴリズムにRC4を使っています。先ほど書いたようにもともとWEPは暗号方式を表す言葉だったのが規格名としても使われるようになりました。認証方式はパーソナルのみです。

WPAの標準の暗号方式はTKIPです。TKIPでは暗号アルゴリズムにRC4を使います。WPAではオプションで暗号アルゴリズムにAESを選ぶこともできます。AESは暗号アルゴリズムであって暗号方式ではないのですが、AESが信頼性の高い暗号アルゴリズムであったために本来の方式であるCCMPという呼び名は省略されて(暗号アルゴリズムと方式を合わせて)AESと言われることが多いようです。

WPA2では標準の暗号アルゴリズムとしてAESを使います。つまりWPA2の標準の暗号方式はCCMPとなります。WPA2ではオプションとしてTKIPも選ぶことができます。ですが暗号強度が劣るTKIPに変更する必要はないでしょう。

WPA、WPA2とも認証方式はパーソナル、エンタープライズのどちらでも選択が可能です。

WPA3はWPA2と同様に暗号方式はCCMPですが、暗号アルゴリズムにAESより強い暗号強度を持つCNSAを使うことができます。CNSAは認証方式がエンタープライズのときに選択が可能です。AESは128ビットの暗号強度ですがCNSAは192ビットの暗号強度になります。

ここから認証方式についてです。

パーソナルはPSK(Pre-Shared Key)による認証方式です。端末と無線LANアクセスポイントとで共通のパスフレーズを設定します。端末から送られてきたパスフレーズがアクセスポイントが持つパスフレーズと一致すれば認証OKとなります。

WPA2ではパスフレーズを総当たりや辞書攻撃により推測されてしまう危険性があったのですが、WPA3ではSAEという新しい手続きを導入することでこれらの攻撃に対して強くなっています。

エンタープライズはIEEE802.1Xによる認証方式です。IEEE802.1Xでは、クライアント(サプリカント)、認証装置(オーセンティケーター)、認証サーバー(RADIUSなど)という構成をとります。以下は無線LANでの場合です。

端末と無線LANアクセスポイント間ではEAPOL(EAP over LAN)というプロトコルを使い認証を行います。EAPはPPPの認証機能を拡張したプロトコルです。

また認証の種類には以下のようなものがあります。クライアント、サーバーの両方を認証するか、クライアントのみの認証かで違ってきます。

今は最新のセキュリティ規格であるWPA3を使うのが望ましいでしょう。