レ点腫瘍学ノート

Top / 日記 / 2020年 / 06月15日

Synology NASで443ポートを使ったopenVPNの設定

こちらのサイトが非常に参考になった。

Synology NASでSSLH OpenVPN + nginx + SSH
Synology NASでSSLH
https://tabikumo.com/sslh-nas/
$ sudo -i
# cd /usr/syno/share/
# cp -a nginx org_nginx
# cd /usr/syno/share/nginx

DSM.mustacheの77行目、WWWService.mustacheの15行目、server.mustacheの117行目のlisten 443をすべてlisten 127.0.0.1:443に変更する。

# vim DSM.mustache
# vim WWWService.mustache
# vim server.mustache

vimの扱いに慣れていないと戸惑うが、iで編集モードに入りescで編集モードを抜けられること、「:wq」で保存して閉じるであることさえわかれば簡単な編集はできる。

知識0から始めるVim講座 - Qiita
知識0から始めるVim講座 さて、みなさんは「Vim」というエディターをご存知でしょうか? もしあなたがサーバー関係やプログラミング関係に携わっているのでしたら名前ぐらいは聞いたことがあるでしょう。 ですが実際にはVimがとう...
https://qiita.com/JpnLavender/items/fabcc79b4ab0d52e1f6d
# sudo synoservicecfg --restart nginx

再起動

# cd /usr/local/sslh/var/
# cp sslh.cfg org_sslh.cfg
# vim /usr/local/sslh/var/sslh.cfg

13行目の{ host: “0.0.0.0“; port: “30000“; }のうち0.0.0.0をサーバーのローカルIPアドレスに、30000を443に変更する。

# netstat -an | grep 443

これで下記のように当該ポートがlistenになっていればOK。

tcp 0 0 192.168.100.20:443 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:443 0.0.0.0:* LISTEN
tcp6 0 0 :::443 :::* LISTEN

SSLHのインストール

職場プロキシなどではインターネットブラウザの接続に必要な80ポートと443ポート以外のポートが閉じられていることが少なくない。したがってこの443ポートを用いてVPN接続を試みたいが、443ポートはhttpsへの接続にも必要な重要なポートである。したがってこの443ポートを複数の用途で併用するための工夫が必要となり、これがSSLHとなる。

Synology NASのパッケージセンターでSynoCommunity(http://packages.synocommunity.com/)からインストールできる。

ルータの設定

Synology NAS -> コントロールパネル -> 外部アクセス -> ルータの設定

作成→カスタムポートで以下のポートを開いておく。openVPNのデフォルトであるUDPではなくTCPを開いておく必要があることに注意。

ローカルポートルーターポートプロトコル
11941194TCP

盲点だった点

今回上記はopenVPNでの設定を試したが、そもそもiPhoneなどが標準で利用できるL2TP/IPSecの設定をしようとしたのにSynologyのセキュリティ設定やVPNサーバーをいくらいじっても接続ができなかった。設定画面の コントロールパネル -> 外部アクセス -> ルータの設定 -> 接続テスト で何度やっても500番と4500番のポートの接続テストがエラーになって原因がなかなか解明できなかった。

うちはIO-DATAのルータ(WN-PL1167EX01)を使っていたのだが、このルータのセキュリティ設定 -> パススルー -> IPsecパススルー が「無効」になっていたのを「有効」に変更したところあっさりとL2TP接続ができてしまった。

Amazon | 【Amazon.co.jp限定】ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad 電池寿命最大24ケ月 M575 ブラック 国内正規品 | Logicool(ロジクール) | 家電&カメラ
【Amazon.co.jp限定】ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad 電池寿命最大24ケ月 M575 ブラック 国内正規品が家電&カメラストアでいつでもお買い得。当日お急ぎ便対象商品は、当日お届け可能です。アマゾン配送商品は、通常配送無料(一部除く)。
https://amzn.to/3F046BR

追記(2021/11/13)

ここに書いた方法はSynology DSM 6では使用可能ですがDSM 7.0にアップデートすると使えなくなってしまうようです。具体的にはSSLHで443ポートを開くための設定が変わってしまうため443ポートが開けません。

DSM 7.0ではsslh.cfgがあるディレクトリも変更になっています。

cd /usr/local/sslh/var/ (DSM 6.x)
cd var/packages/sslh/var/ (DSM 7.0)

nginxの設定ファイルがある場所はDSM 7.0ではこのようになっています。下記のディレクトリの /etc/nginx/ に nginx.conf があります。

usr/syno/share/nginx/

さらに、nginxの再起動のコマンドも変わっているようです。

synoservicecfg --restart nginx (DSM 6.x)
synosystemctl restart nginx (DSM 7.0)

何か他のアプリケーションが443ポートをlistenしておりSSLHで443をlistenできないため、今のところDSM 7.0とSSLHで443番ポートを使ったOpenVPN設定ができていません。

Synology NASをDSM 7.0にアップデートしたらSSLHが使えなくなってしまい、困っているという話のメモです。自分の備忘録を兼ねてメモしておきます。以前にSynology NASのVPN ServerとSSLHを使って443番ポートでVPN接続することを試みた記事を書いていました。 Synology NASで4

この記事に対するコメント

このページには、まだコメントはありません。

お名前:

更新日:2020-06-15 閲覧数:3540 views.