概要 | |
---|---|
目的 | デスクトップへのリモート接続:WoL設定 |
参考 | ASUSのWi-FiルーターにOpenVPNでリモートアクセスしてみよう L2TP/IPsecを使ったVPNサーバー設定方法(バッファロー) 無線LANとWoL Ubuntu 20.04 で Wake-On-LAN を有効化する |
1. 今回のスコープ
やりたいこと
持ち運び用として用いている MacBook Pro からデスクトップにリモート先からアクセスして、GPUなどを使った分析をしたい
方針
- クライアント側でVPN設定
- デスクトップ側でWoLとファイヤウォール設定
- グローバルIPアドレス確認方法の確立
- ssh接続設定(今回のスコープ外)
前提条件 (注意!!)
この記事は未実施 Part です。
- WoLが有線LANのみ対応
- SORACOMやラズパイによるデスクトップ電源管理の調査が必要と判断
技術スタック
項目 | 詳細 |
---|---|
Laptop PC | MacBook Pro (13-inch, Late 2016, Two Thunderbolt 3 ports) |
Wi-Fiルーター | Buffalo WXR-2533DHP2(買い替えの必要あり) |
VPNクライアント | システム環境設定 > ネットワーク > VPN設定 |
2. VPNの設定
なぜVPN設定をするのか
今回のスコープに入っているWoL(Wake on LAN)が機能する条件の一つとして、「Wake on LANで起動をかけるマシンと起動されるマシンが同一のネットワークセグメントに接続されていること」が求められているためです。
端末からルーターにVPN接続すると、ルーターに割り当てた固定IPアドレスでの通信になります。
ルーター設定
- まずルーターの設定ページにアクセスします。グローバルIPアドレスを確認します。ホーム画面から「詳細設定」→「ステータス」→「システム」と進み、IPアドレスを確認します。 このIPアドレスがVPN接続先のサーバーアドレスになります。
- .VPNサーバー機能を有効にします。「Internet」→「VPNサーバー」と進みます。
- VPNサーバー機能のプルダウンメニューから「L2TP/IPsec」を選択し、「事前共有キー(任意の文字列)」を入力して、「設定」ボタンをクリックします。
- VPNサーバー設定の範囲から取得をクリック (FIX ここ要検討!)
- VPN接続するユーザーを追加します。画面下の「VPN接続ユーザーの編集」をクリックすると、VPN接続ユーザー名の新規追加画面になります。「接続ユーザー名」にユーザー名(任意の文字列)、パスワードを入力して、「新規追加」をクリックします。
IPアドレス確認例
VPN接続ユーザー登録
設定完了画面
macOSでL2TP/IPsec接続する
- 「システム環境設定」から「ネットワーク」をクリックします。
- ネットワーク画面左下にある「+」をクリックします。
- インターフェースは「VPN」、VPNタイプは「L2TP/IPsec」、サービス名は任意の名前を入力します。
- 以下のように設定してVPN接続します。
3. Ubuntu側でWoLの設定 (未実施)
Wake-on-LAN (WOL) はネットワーク接続 (インターネットまたはイントラネット) からコンピュータの電源を入れる機能です。無線カードは Wake-on-LAN をサポートしていないため、ルーターや他のコンピュータに物理的に (ケーブルで) 接続しなくてはなりません。
BIOS設定
- BIOSの起動はF10を押して起動します。
- 設定項目は、[Advanced]の中にある[Wake On Lan from S5]で、この値を Enabled に変更します。
Ubuntuの設定
WOLを行うためにethtoolをインストールします。
1
$ sudo apt install ethtool
ネットワークインタフェース名を確認
WoL設定を確認するためには sudo ethtool ネットワークインタフェース名
を実行しますが、ネットワークインタフェース名を知っておく必要があるので、まずはネットワークインタフェース名を確認します。
1
$ ifconfig
または
1
$ ip address show
このうち、IPアドレスが記述されたネットワークインターフェースがあるのでその名前を確認します。今回は確認の結果、 enp2s0
とします。
WoLの状態確認
無効化されている場合は Wake-on: d
となります。
1
2
3
$ sudo ethtool enp2s0 | grep Wake-on:
Supports Wake-on: pumbg
Wake-on: d
これを有効化します
1
$ sudo ethtool -s enp2s0 wol g
これだけでは再起動のたびに無効化されてしまうので、Wake-On-LAN の設定を永続化する必要があります。
Wake-On-LAN の設定を永続化する
Wake-On-LAN 有効化スクリプトを作成
まず、次のようにして /etc/wol ディレクトリーを作成します。
1
$ sudo mkdir /etc/wol
そうしたら、そのディレクトリー内に wakeonlan.sh
を作成して、次のような Wake-On-LAN 有効化コマンドを記載します。
1
2
3
$ nano /etc/wol/wakeonlan.sh
#!/bin/sh
/sbin/ethtool -s enp6s0 wol g
そして、次のようにして、作成したスクリプトファイルに実行権限を付与します。
1
$ sudo chmod u+x /etc/wol/wakeonlan.sh
サービスの定義ファイルを作成
次の内容で /etc/systemd/system/wakeonlan.service を作成します。
1
2
3
4
5
6
7
8
9
10
[Unit]
Description=Enable Wake-On-LAN
[Service]
Type=simple
ExecStart=/etc/wol/wakeonlan.sh
Restart=always
[Install]
WantedBy=multi-user.target
サービスを起動する
そうしたら、あとは次のようにしてサービスの登録と起動を行います。
1
2
$ sudo systemctl enable wakeonlan.service
$ sudo systemctl start wakeonlan.service
これで Ubuntu を再起動しても、常に Wake-On-LAN が有効化されるようになりました。
MacBookにwakeonlan
をインストールする
1
2
$ brew install wakeonlan
$ wakeonlan -v
で完了。次にwakeonlanを使ってUbuntu Desktopを起動します。まずUbuntu DesktopのMACアドレスが必要なので検索します。’link/ether’ で始まる行に記載されています。
1
2
3
$ ip link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether XX:YY:ZZ:PP:QQ:RR brd ff:ff:ff:ff:ff:ff
その後、
1
$ wakeonlan <MACアドレス>
これで動作確認をする。
ファイヤウォール設定
TBA
Appendix: ネットワークインターフェース
ネットワークとの接点をネットワークインターフェースといいます。Linuxでは、ネットワークインターフェースは「eth0」や「enp0s3」といった名前で表します。名前はネットワークインターフェースの種類とデバイスの種類に応じて決定されます。
ネットワークインターフェースの命名規則
種別 | 説明 |
---|---|
en | イーサネット(有線LAN) |
wl | 無線LAN |
ww | 無線WAN |
デバイス | 説明 |
---|---|
オンボードデバイス | o<インデックス>インデックス> |
ホットプラグデバイス | s<スロット>[f<機能> d<デバイスID>]デバイスID>機能>スロット> |
PCIデバイス | p<バス>s<スロット>[f<機能> d<デバイスID>]デバイスID>機能>スロット>バス> |
(注意:GitHub Accountが必要となります)