QNAPは優れたアプリケーションと強力なリモートアクセス機能を兼ね備えた素晴らしいNASです。
ですが、Web経由でアクセス可能故のセキュリティ上の懸念も存在します。
- QNAPのNASへの攻撃を狙ったスキャンが増加、ユーザーはファームウェアの更新を - INTERNET Watch
- 年末年始の長期休暇を控え、セキュリティ対策の徹底を~IPAとJPCERT/CCが注意喚起 - INTERNET Watch
QNAPユーザーの1人として、多機能故に少し複雑ですが、QNAPを利用している方に是非確認して欲しい点とセキュリティを向上させるヒントをまとめてみました。
1.ファームウェアを最新の状態に保つ
2014年はHeartbleedやShellshockなどサービスの根幹に関わる脆弱性が多数報告された1年でした。- OpenSSLの”Heartbleed”脆弱性情報まとめ
- OpenSSLに新たに発見された”CCS Injection脆弱性”の情報まとめ
- bashの深刻な脆弱性”Shellshock”、QNAP等のNAS利用者も対策を!
- プレスリリース :: NAS - QNAP
また、既にShellshockの脆弱性を悪用したプロセスが走っていないかチェックするプログラムも用意されています。
インストール後に自動的にプロセスが走ります。Warning表示が出なければOK。
システムログから問題がなかったことが確認できます。
”No ELF backdoor was found.”ならOK
これで現状問題ないことが確認できました。
以下は、myQNAPcloudの初期設定を済ませたまま放置しているようなケースを想定して進めます。 適宜読み飛ばしながら進んでください。
2.myQNAPcloudの設定
myQNAPcloudは優れたセキュリティにより運用されていますが、ユーザー自身が適切に利用しないとザルになってしまいます。以下により、myQNAPcloudの設定を見直していきます。
2-1.公開サービスを見直す
myQNAPcloudに登録すると、初期状態ではNASを探すことができます。登録したURL”hogehoge.myqnapcloud.com”のhogehogeがデバイス名となり、qnapcloud.comのページから検索してアクセス可能になります。
”デバイスの検索”から検索可能
適当な名前で検索した結果
簡単な名前で検索すると、公開済みのサービスを持つNASが簡単に見つかってしまいます。一度自分の名前で検索して確認してみましょう。
一般に公開目的ならともかく、普通に利用するなら公開する必要はないはずです。まずはプライベートサービスに設定し、簡単にアクセスできないようにします。
QTSにアクセスし、myQNAPcloudから設定する
”公開”にチェックが入っていると、myQNAPcloudからアクセス可能になります。
”プライベート”にチェックが入っていると、承認されたアカウント名とmyQNAPcloudアクセスコードを入力してアクセスする必要があります。
アクセスコードを指定
myQNAPcloudに公開してアクセス可能にしたいけれど、セキュリティを担保したい場合は、このアクセスコードを指定します。
承認されたユーザー名とアクセスコードを指定しないと、
プライベートサービスにアクセスできなくなります
2-2.myQNAPcloudからデバイスを検索できなくする
ただ、そもそもデバイスを検索できなくしたほうが安心です。Android/iOSアプリからmyQNAPcloud経由でアクセスしたいという目的だけなら、すべてのサービスを公開せず、デバイスを検索不可能にすることで、myQNAPcloud ID(QID)とパスワードでmyQNAPcloudにサインインしないと、myQNAPcloudのページからアクセスできなくなります。
myQNAPcloudにサインインし、”デバイスの詳細”から検索可能を”いいえ”に設定
QTSの設定から公開にチェックを全て外す
こうすることで、myQNAPcloud経由でQID/パスワードでサインインしない限り、NASにアクセスされることはなくなります。
※ただし、ルーターのポートを開放してmyqnapcloud.comに登録している状態には変わりはないので、URL直接入力でアクセスすることは可能です。
3.ポートの変更とSSLの利用
3-1.ポートの変更
Shellshockなどの脆弱性をつく攻撃や、不正にログインしようとする試みのため、QNAPのデフォルトWebポート8080へのアクセスが多く報道されました。8080はデフォルトポートなので、他のポートに変更した方が攻撃を受ける可能性が低くなります。
(※QNAPを狙った攻撃を受けにくくするだけで、全ポートをスキャンするような攻撃には対応出来ません)
一般設定から変更可能です
※その他のアプリケーション用のポートもそれぞれ変更可能です。
3-2.アカウントの管理とアクセス制限
ポート変更とともに、adminのパスワードを複雑で長いものに変更し、アクセス制限をかけてセキュリティを向上させるのがいいと思います。adminは使用せずに凄く複雑なパスワードにしてしまい、別の管理アカウントを作成して使用のがおすすめです(そうすれば攻撃者はアカウントとパスワードの組み合わせを知る必要があり、漏洩しない限りほぼ突破されることはないです)。
そして、ネットワークアクセス保護機能により一定期間内の失敗試行回数を設定すれば、不正ログインへの耐性はより高まります。
”30分間 / 5回 / 期限なし”が最も厳しい設定です
また、これまでのアクセス履歴を見返し、不正アクセスと思われるIPアドレスを永久にブロックしてしまいましょう。
コントロールパネル→システムログ→システム接続ログから確認可能です。怪しいアクセスには右クリックからブロック指定してやりましょう。
3-3.SSLの利用
LAN外からアクセスする際に、公衆無線LANなどのセキュリティの低いネットワークを利用する場合は、通信内容を盗聴されてアカウント/パスワードの流出を防ぐため、SSLで通信しましょう。詳しい手順は省きますが、SSL用のポートを解放し、アクセスするデバイスに証明書をインストールすればエラーを生じることなくアクセス可能になります。
SSL通信は少し遅くなりますが、それでも不正アクセスされてしまうよりはいいですよね。
4.CloudlinkとVPN
CloudlinkはQTS 4.1以上で利用可能な新しいWeb経由でのアクセス方法で、ルーターのポートを開放していなくてもQNAPが提供するCloudlink経由でアクセス可能になる機能です。
ポートを開放しなくてもよいので、セキュリティ上の懸念がなくなる一方で、QNAPのサーバーをデータが経由することになるので、それを理解した上で利用する必要があります。
当方の環境では、Qfileアプリ利用時にCloudlink経由でアクセスできない不具合があるので利用を見送っていますが、今後の改善に期待したいです。
また、VPNを利用してQNAP NASにアクセスすることも可能です。
詳細な手順は、NASにVPNサービスを設定する方法にて確認可能です。