タグ: AD-DS1621xsp

  • [Synology] グローバルなIP証明書である「 Let’s Encrypt 」取得 – 80, 443ポートが空いているNASでは自動更新は可能 – その他NASへの証明書のインポート方法 と運用方法 [2023/02/25]

    [Synology] グローバルなIP証明書である「 Let’s Encrypt 」取得 – 80, 443ポートが空いているNASでは自動更新は可能 – その他NASへの証明書のインポート方法 と運用方法 [2023/02/25]

    はじめに

    httpsのページとして公開可能にするには、証明書が必要です。そうでないと、「このページはなりすましなどで危険」などとのメッセージがWeb ブラウザに表示されます。

    ちゃんとした会社のホームページでも、このようなメッセージが依然として表示されるサイトが多くありますが、ちゃんとした会社であることを知っていたとしても心配になりますね。

    あと、個人的にSynology NASを使用した写真の共有化やDS NoteなどのInternetを介したアプリを使用する場合も、同様の問題に対する解決策として証明書を取得した方が良いです。

    Let’s Encryptというボランティア団体によって個人でも証明書を取ることができる時代になりました。個人でサイトを立ち上げたのなら、是非、Let’s Encryptの証明書を取得しましょう。

    数ヶ月前(2022)の情報ですが、Let’s Encryptが発行する証明書は、1億通を超えたとありました。

    証明書

    先日、証明書期限がきれるので、Let’s Encryptの更新をマニュアルで実施しました。更新した証明書の期限は、3ヶ月後の日付に更新されていましたが、更新したはずが、WebブラウザのSafariの表示で証明書エラーが出るようになっていました。

    クライアントの証明書エラーが出ているSafariの表示から、証明書の内容を確認してみると、以前の証明書の期限のままの日付を表示していました。

    この現象は、単純に設定のミスです。以下に説明してきましょう。

    Let’s Encrypt 証明書の取得制限

    試行錯誤している内に、何度も証明書を取得(以下の設定)したため、取得制限に引っかかりしたりします。Let’s Encyptには取得数に制限があるためです。この数の紐付けは、登録のemail addressであるため、email addressを変更すると回避できます。

    Let’s Encrypt 申請内容

    以下の項目を申請します。

    • Domain : 例えば: harikiri.diskstation.me
    • Email : <my Email address>
    • Subject Alternative Name : *.harikiri.diskstation.me

    証明書取得後の設定

    設定でツボにハマってしまったら先ず、取得し過ぎた証明書は整理しましょう。必要出ないLet’s Encrypt 証明書は削除します。残しておくと、期限切れの証明書を設定するというミスも起こし易いためです。

    下図を見ながら説明を読んでください。

    1. 1回目の証明書を取得すると、そのNASなどが持っているサーバーのサービス毎に、この証明書が設定されます。
    2. 同様にして2回目の証明書を取得すると、同様に2回目の証明書が、サービス毎に設定されます。
    3. ここで、1回目の証明書の設定(configulation)を開くと、サービス毎に、1回目と2回目のどの証明書を設定するか選択することができます。
    4. すなわち、1回目の証明書の設定の中なのに、そのサービスに対して、2回目の証明書を設定可能であるということです。1回目の証明書の設定をしているのに、2回目の証明書を含めることが出来てしまします。
    5. このことを理解していないと、はりきりのようにつぼにハマってしまいます。

    図の説明:

    証明書の場所は、コントロールセンターのセキュリティ(Security) > 証明書(Certificate)です。

    そこには、取得した回数分の証明書がリストされています。下図の例では、4つが確認できます。

    その内の一番上の証明書を選択状態にして、設定(Settings)をクリックすると、下図のようにダイヤログが表示され、サーバーのサービス毎の証明書をどれにするか、ドロップダウンリストにより設定することができるようになっています。ドロップダウンリストには、全ての取得した証明書が表示されます。

    図の例では、FTPSなどの全てのサービスの証明書(Certificate)は、「harikiri.diskstation.me」に設定されていることが分かります。

    Webブラウザからの確認

    Sarari表示から確認してみると、その証明書は最新のもになっていて解決したことを知ることができます。

    サーバーに最新の証明書を強制的に使用させるには、NASの再起動が必要ですが、自動で再起動しない場合は、マニュアルで鎖再起動させます。

    それでも、以下のように証明書を適切に設定して、サーバーの再起動というダイアログが出て再起動されたとしても、新しい証明書を使用しないことが何回もありました。最後は、NASの再起動により解決することができました。WebブラウザかNAS側か、いずれかは分かりませんが、キャッシャが関わっているものと思われます。

    1. DSM → コントロールパネル → セキュリティ → 証明書から、証明書をセレクトする
    2. 次に、構成(コンフィグレーション)をクリックし、当該NASに設定が必要なサーバーについて、その数だけ以下のように証明書を設定する
    3. コンフィグレーションでの証明書の設定は、証明局(Let’s Encrypt)からの取得、あるいは他のNASからのインポートにより、現に存在する証明書を選択する
    4. 基本的には、すべて同じ証明書を設定した後、「OK」を押すと、サーバーの再起動が開始されて、DSMに戻ってくる。
    5. しかし、このDSMに戻ってきても、ウェブブラウザから接続を試行してみると、以前の古いままの証明書になっていることがある。僕の経験では、ほとんどがそうでした。
    6. そこで、証明書を新しくしたものとして有効にするには、NASの再起動を実施することで、それが可能になります。

    一般的な注意点

    • Synology RouterやNASにLet’s Encrypt証明書を取得する時、及び、自動的に更新させるにはポート80 (及び443)を開けておく必要があります。
    • 当サイトでは、複数のSynology製品があります。RouterとNAS x2 構成なのですが、80と443のポートは、もともとblogサーバーに設定されることが規定されています.更に、証明書の取得および自動更新も、80と443なので必然的にblogサーバーを介して証明書取得とその自動更新が行われることになります.
    • 従って、80/443の設定は1台の装置にしかできないため、その他のネットワーク機器に対して証明書を適用させるためには、取得したblogサーバー用NASの証明書をエクスポートした証明書を使って、その他のNASなどにインポートするマニュアルの方法で対応するしかありません(スクリプトを書けばできるとは思う)。
    • Let’s Encryptにおけるドメイン名に応じた証明書の取得数制限に引っかかった場合、その対処法は、Emailアドレスを変更したり、ドメイン名を変えたり(その場合、必要としているドメイン名をSubject Alternative Nameに設定する)
    • 以上の設定方法の記載は、以下のSynology Siteに説明があります。

    Synology DDNSを使用してSynology SSL VPNとWebVPNを設定する方法 – Synology –

    https://www.synology.com/ja-jp/knowledgebase/SRM/tutorial/VPN/How_to_set_up_Synology_SSL_VPN_and_WebVPN_using_Synology_DDNS_service

    証明書の自動更新がまだ

    証明書の自動更新が有効かを確認します。先ずは、マニュアルによる証明書更新を実施してみます。はりきりの場合、エラーで更新ができませんでした。

    調査した結果、外部アクセス設定で設定していたドメインにエラーが出ていたので、それを解決して、Let’s Encrypt証明書のマニュアルによる更新を行ってみました。その結果、無事に更新することができ3ヶ月先の期限延長を獲得できました。今回まででは、自動更新が可能かどうかは、確認ができていません。できているのは、マニュアル更新のみです。

    以上の詳細として、以下に証明書のマニュアル更新/自動更新ができない時の設定を示した。

    1. Routerは、Internetに繋がっており、DDNS設定で「harikiri.diskstation.me」を設定しており正常である。
    2. Routerの転送ルールには、blog NASに対して、80/443を設定している。
    3. Routerには、blog NASが有線で繋がっている。
    4. blog NASのDDNS設定では、Routerと同じ「harkiri.diskstation.me」を設定していたが、Synologyとの通信でエラーとなっていた。

    マニュアル更新が可能となった設定を以下に示した。

    1. RouterのDDNS設定を削除した。
    2. blog NASのDDNS設定を更新することで、正常に繋がることを確認した。
    3. この状態で、Let’s Encryptのマニュアル更新を実行した。

    設定後の結果

    1. 上記の設定の結果、Let’s Encrypt 証明書(certificate)はマニュアルによる更新が可能となり、この日から3ヶ月先の日付に更新できた。
    2. 証明書の自動更新ができるかどうかの確認は、3ヶ月後に確認する予定。

    まとめ

    DSMのセキュリティ > 証明書 に行き,Let’s Encrypt 証明書を取得する.取得された証明書は,このウィンドウに証明書リストとして追加される.設定タブを選ぶと,NASの各サービスにリストされた証明書のうち,どの証明書を使用するのか設定することができる.すべてをLet’s Encrypt 証明書にしてもいいし,Synologyから取得した証明書を設定してもいい.しかし、この操作がミスを生みやすいので注意して設定すること。Web Serverが再起動して,証明書の再設定が行われる.しかし、再起動しない場合は、強制的に再起動させる。それでもダメなら、NASを再起動させる。

    教訓

    • Synology NASの証明書の設定において、期限切れと表示されている証明書(Let’s Encrypt)は、削除しておくべし。新しい証明書を作成またはインポートして、デフォルトに設定していたとしても、期限切れの証明書を間違えて設定しているなどのミスを起こしやすいため。
    • そもそも、証明書を設定し直すとサーバーが再起動するはずです。再起動がない場合、証明書が更新されていないことを疑う。NASのDMSの不具合の可能性も考える。

    その他情報

    • RT2600ac/RT6600axの証明書の位置
      • コントロールパネル → サービス → 証明書

    編集履歴

    2019/08/08 Mr. Harikiri (blog NAS: DS918+)
    2020/12/31、追記 (教訓)
    2021/02/26、追記 (blogサーバー用NASの証明書(Let’s Encrypt)は自動更新されていたが、80, 443ポートが空いていない、他のNASは自動更新されないので、自動更新された証明書をエクスポートして、それをインポートする運用で対応するしかない)
    2022/11/13、文言整備
    2022/12/20, 追記 (Let's Encryptの自動更新ができるかどうか挙動を確認したが自動更新されず) (証明書の設定)
    2023/02/25, 追記(マニュアルによる証明書の更新がてきないことに気づいた。その原因)、文言整備
  • [Synology] ルーター用のセキュリティソフト: Threat Preventionは、悪意のあるパケットを遮断 [2021/03/12]

    [Synology] ルーター用のセキュリティソフト: Threat Preventionは、悪意のあるパケットを遮断 [2021/03/12]

    Synology Router

    RT2600acは、Synologyの高性能なWiFi ルーターです.以前は、BuffaloやIO-DATAのRouterを使っていましたが、ホームネットワークにNASを設置する場合、Internetからの攻撃が多くなることが予想されました。そこで、RouterをNASと同じくメーカーであるSynology製に置き換えることにしました。

    RT2600ac

    RT2600acには、Synology製のRouter用パッケージが無料で使用することができます。

    これまで、ルーターを経由する不正なアクセスに対して、そのセキュリティ・パッケージは,「Intrusion Prevention」という名称でしたが、機能アップが図られて「Threat Prevention」という名称で提供されています.Threat Preventionは、企業向けの侵入防止技術のパッケージです。因みに、IDSIntrusion Detection System)とは、通信ネットワークにおける専門用語です。悪意のある通信、ホストへの不正侵入、ファイルの改ざんなどの兆候を検出するシステムをIDSと言います。設置形態として、ネットワーク上に設置する「ネットワーク型」と、ホスト上に設置する「ホスト型」の2種類があります。

    IDSとは - @IT –

    https://www.atmarkit.co.jp/ait/articles/0401/01/news055.htmla

    Threat Prevention

    今のRT2600acのパッケージセンターには,「Threat Prevention」というパッケージを見つけることができます.

    怪しいパケットの制限など、フィルターの設定ができます.デフォルトで、悪意のある度合いが高いパケットは自動でブロックします。悪意の度合いは、低、中、高とあります。低中については、マニュアルでブロック指定が可能です。

    Security Database

    セキュリティデータベースというサイトがあります。日々、色々なタイプの悪意ある通信について集積されています。英語ですが向学のためには一度は閲覧しておきたいサイトです。世界の情報は、英語がほとんどです。向学心のある方は少し頑張ってみてみて下さい。

    Security Database

    https://www.security-database.com

    インストール

    RT2600acルーターにログインします。

    Desktopのパッケージセンターを起動して、サイドメニューから「すべて」を選択すると「Threat Prevention」を見つけることができます。

    Threat Preventionパッケージをクリックすると、以下の様な画面が現れます。この画面では、既にインストールしているので、少し表示が異なっているかも知れません。

    インストールが完了すれば、メインメニューから「Threat Prevention」を確認できます。

    「Threat Prevention」を起動すると、以下の画面が現れます。グラフ線の内、「赤」は重大度が「高」、「橙色」は「中」に設定されています。

    運用方法の概要

    • 弱いリンクを見つける
      • 脆弱なデバイスの特定 : イベントのログから高い重大度が発生したデバイスを確認する
      • 確認方法 : セキュリティ・イベントには、過去7日または30日以内の要約を確認できる。そこから、IPアドレスを確認する。
    • 対策
      • 一時的にインターネットから切り離す
      • デバイスのウイルススキャンを実施する

    IoT時代のセキュリティ – Synology 日本語サイト –

    https://www.synology.com/ja-jp/srm/feature/secure_network_foundation

    ネットワーキング体験の革命的な変化 – Synology 日本語サイト –

    Synology Router Manager (SRM) は、Synology Router の威力を高めてくれるオペレーティング システムです。クラス随一のユーザーインターフェイスにより、ネットワークで何が起きているかを詳しく把握することができ、接続されているデバイスすべてを迫り来る驚異から守るきっかけになります。

    https://www.synology.com/ja-jp/srm

    イベント

    イベントを選択すると、Threat Preventionが感知した通信の内容が示されます。

    重大度が「高」のイベントは、デフォルトで「ドロップ」されるものもありますが、Threat Preventionの立ち上げ初期は、イベントの観察を小まめにしてください。もしも、重大度が「高」のイベントで、「ドロップ」されていない通信 (おそらくローカル発信で外部のIPアドレスへのパケット)を見つけたときは、そのIPアドレスを指定した処理「ドロップ」を検討します。多分、「ドロップ」設定でも問題ないパケットが殆どだと思います。

    以上の設定を繰り返すことで、怪しいIPアドレスとの通信は、「ドロップ」設定として数が増えていくでしょう。

    ある程度の期間、上記の設定処理が進むと、処理するイベントは限りなくゼロに近づきます。後は、Threat Preventionで設定したメールによる「イベントの通知」(設定を参照)を確認しつつ、平時の管理になっていきます。

    統計

    設定

    「全般」で「ハイリスクなパケットを自動でドロップ」になっていることを確認しておきます。

    デバイス

    「デバイス」でローカルに繋がっているデバイスが列挙されます。すべてにチェックを入れて、セキュリティを高めます。

    通知

    「通知」では、少なくとも「電子メール」を設定します。RT2600acルーターの設定で指定したE-mailアドレスに通知が届くようになります。

    ログストレージ

    ログストレージは、外部メモリが必要です。最小512MB、最大2GBです。RT2600acのUSB端子にUSBメモリーを挿して、ログを構築してください。

    悪意のあるパケット

    以上の設定で、Threat Preventionが判定する「重要度の高い悪意のあるパケット」は,自動的にブロックしてくれます.

    「ドロップ」したイベントが生じたら、e-mailで知らせてくれます。

    これを執筆していた2019/07では、1日当たり20-30程度の悪意のあるパケットが世界からきていました。今回の内容の整備にあたり、「ドロップ」された件数を確認すると、50件程度に増加していました。

    Threat Preventionには、世界地図による悪意のあるパケットの発信元などが、統計情報としてログされます.

    まとめ

    NASに合わせてRouterを同一のメーカーにすることは、良い面も悪い面もあります。先ず、悪い面では「共倒れ」になるリスクです。それよりも良い面を重視しています。良い面は、装置同士の「連携」、「尖ったソリューション」による高性能を得られることです。

    以上

    編集履歴

    2019/07/12 追記
    2020/03/01 文言整備
    2020/05/04 追記 (図を使ったインストールと設定)
    2020/11/12 追記 (運用方法の概要)
    2021/03/12 追記 (IDSについて、SECURITY DATABASE)、修正(タイトル)

    Threat Prevention関連