Information¶
【重要】Ericom Shieldオンプレミス版でレポートや外部ログ出力が停止する問題について¶
現在、Ericom Shieldオンプレミス版にてレポートや外部ログ出力が停止する問題が発生しております。対象のバージョンをご利用のお客様にはご不便をおかけしており、誠に申し訳ございません。以下の通り対策をご案内させていただきますので、修正版リリースまではこの対応でご利用をお願いします。
事象および影響¶
- LogStashサービスで利用している証明書にて期限切れが発生することで、Shield管理コンソール画面上でのレポート出力や外部ログ出力(Shield-Syslog)が停止します。
対象環境¶
Ericom Shieldオンプレミス版の以下のバージョンを利用しているお客様が対象となります。
- Ericom Shield 21.01
- Ericom Shield 21.04
- Ericom Shield 21.11
- Ericom Shield 22.08
※ Ericom Shield Cloudでは、本問題は発生しません。
原因¶
- LogStashサービスで利用している証明書の有効期限が2022年12月26日に失効したため
対応方法¶
説明
当対応を行うことでLogStashサービスで利用している証明書が一時的に更新され、Shield管理コンソール画面上でのレポート出力や外部ログ出力(Shield-Syslog)が可能な状態になります。
当対応方法は、暫定回避策となります。
恒久対策としては、現在メーカにて当問題の証明書が更新された修正パッチが提供される予定となっております。メーカより修正パッチが提供され次第、弊社にて動作検証を実施した上で修正パッチの適用手順を、ご案内させていただきます。
LogStashサービスの証明書期限切れ問題に該当しているか確認する方法
EricomShield初期インストール時に、shield-setup.shを実行したサーバとユーザにて以下のコマンドを実行して確認してください。証明書期限が実行例のように「2008」年となっている場合には、本問題に該当しています。
※ 通常の場合、Rancherサーバ(8443)がshield-setup.shを実行したサーバとなります。
$ kubectl exec -ti central-logstash-0 -n elk -- ls -la /config/certificate.crt 実行例: kkauser@sh01:~$ kubectl exec -ti central-logstash-0 -n elk -- ls -la /config/certificate.crt -rw-r--r-- 1 logstash root 2008 Jul 26 12:43 /config/certificate.crt
手順(暫定回避策)
Log-Stash証明書更新スクリプトを実行
以下のコマンドをEricomShield初期インストール時に、shield-setup.shを実行したサーバとユーザにて実行してください。
こちらのコマンドで証明書更新スクリプトを実行することで、Shield管理コンソール画面上でのレポート出力や外部ログ出力(Shield-Syslog)が可能な状態に改善されます。
実行完了後は、レポート出力と外部ログ出力が再開されていることを確認してください。
$ curl -k -o ~/logstash_certificate_renewal.sh https://ericom-tec.ashisuto.co.jp/shield/logstash_certificate_renewal.sh $ chmod 755 ~/logstash_certificate_renewal.sh $ ~/logstash_certificate_renewal.sh 実行例: [start]Logstash Certificate Renewal. ========================================== -rw-r--r-- 1 logstash root 2008 Dec 19 2021 /config/certificate.crt -rw-r--r-- 1 logstash root 3272 Dec 19 2021 /config/certificate.key ========================================== ~省略~ ========================================== -rw-r--r-- 1 logstash root 2054 Jan 4 06:43 /config/certificate.crt -rw-r--r-- 1 logstash root 3269 Jan 4 06:43 /config/certificate.key ========================================== [end] Logstash Certificate Renewal Complete!!!
※ 本スクリプトは実行から完了までに、約10分程度かかります。※ 本スクリプト実行処理は、ユーザでのShieldブラウザ利用に影響はありませんので、ユーザが利用している日中帯に実行いただいても問題ございません。「Log-Stash証明書更新スクリプト」定期実行登録コマンドを実行
こちらのコマンドを実行することで、crontabにて5分に1回、Log-Stash証明書期限の確認を行い、期限切れ証明書の状態を検知した場合には、証明書の更新スクリプトを実施します。
予期せずlogstashのPODサービスが再起動された場合やShieldサービスやOS再起動を行った場合には、初期設定の証明書期限が切れた状態に戻ります。そのため、crontabで証明書更新スクリプトを実行する登録しておくことで、自動的に証明書の更新を行い、レポート出力と外部ログ出力が可能な状態に回復されます。
$ echo -e "SHELL=/bin/sh\nPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\n*/5 * * * * $(whoami) /bin/bash /home/$(whoami)/logstash_certificate_renewal.sh" | sudo tee /etc/cron.d/logstash_certificate_renewal $ sudo service cron restart 実行例: kkauser@sh01:~$ echo -e "SHELL=/bin/sh\nPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\n*/5 * * * * $(whoami) /bin/bash /home/$(whoami)/logstash_certificate_renewal.sh" | sudo tee /etc/cron.d/logstash_certificate_renewal SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin */5 * * * * kkauser /bin/bash /home/kkauser/logstash_certificate_renewal.sh kkauser@sh01:~$ sudo service cron restart kkauser@sh01:~$
※「Log-Stash証明書更新スクリプト」定期実行削除コマンド
以下のコマンドは、メーカより恒久対策の修正パッチを適用いただいた後に、不要となった「Log-Stash証明書更新スクリプト」および「crontab設定」を削除する際のコマンドとなります。
$ sudo rm ~/logstash_certificate_renewal.sh $ sudo rm /etc/cron.d/logstash_certificate_renewal $ sudo service cron restart
お問い合わせ¶
本件についてご不明な点等ございましたら、弊社営業担当もしくはサポートセンターまでお問い合わせください。