腫瘍学レ点ノート

2020-06-15

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

Top > 日記 > 2020年 > 06月15日 > Synology NASで443ポートを使ったopenVPNの設定

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

この記事はこちらを参考にしています。 [sanko target=?_blank? href=?http://smartathome.blogspot.com/2017/01/inst [?]
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講座 さて、みなさんは「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接続ができてしまった。