この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
ローカルPC内に構築しているCentOSのサーバーにて使用しているSambaファイルサーバーにアクセスできなくなったので、原因と対処法をご紹介します。
こんにちは。アピリッツの本多です。
今年に入ってから発生したのですが、自前で構築していたCentOS上で動いているSambaのファイルサーバーにアクセスしようとするとエラーが出るようになりました。
原因と、行った対処法をご紹介いたします。
エラーの内容
ファイルサーバーにアクセスしようとするとネットワークエラーとなり、以下のようなエラーメッセージが表示されるようになりました。
エラーコードは以下の場合もあるようです。
エラー コード:0x80004005
エラーを特定できません
原因
最近windows updateを行ったのですが、その際に以下の内容が適用されました。
2018 年 1 月 4 日 — KB4056892 (OS ビルド 16299.192)
そしてこのupdateには以下の内容が含まれています。
Windows SMB Server、Windows Subsystem for Linux、Windows カーネル、Windows Datacenter Networking、Windows Graphics、Microsoft Edge、Internet Explorer、および Microsoft Scripting Engine のセキュリティ更新プログラム。
おそらく上記の内容が適用されたことで、サーバー メッセージ ブロック バージョン 1 (SMBv1) ネットワーク プロトコルが無効化されてしまったのだろうと考えられます。
対処法
SMBv1がだめなら、SMBv2にすれば良い。
答えはシンプルでした。ということで、sambaの設定に以下を追加し、アプリの再起動を行う事で、無事接続出来るようになりました。
vi /etc/samba/smb.conf
[global]
min protocol = SMB2 ←追加
max protocol = SMB2 ←追加
OSはCentOS 6.9で、sambaのバージョンは3.6.23-45.el6_9です。
根本原因について
そもそも、何故SMBv1は無効化されてしまったのか。
ランサムウェア WannaCrypt 攻撃に関するお客様ガイダンス
昨年、SMBv1の脆弱性を利用したランサムウェアが登場し、話題になりました。
この件に関する脆弱性は修正したアップデートが配信済みと上記の記事にありますが、同時に
「攻撃手法はさらに進化する可能性もあります。追加の多層防御対策が追加の保護を提供する場合もあります。」
とも書かれており、マイクロソフトはこれを機にSMBv1の利用そのものを終了させたのだろうと思います。
あとがき
先週までアクセス出来ていたファイルサーバーに急に繋がらなくなり、焦ったわけですが、無事解決できてホッとしています。
もしかすると、似たような症状に見舞われている方もいらっしゃるかもしれないと思い、今回の記事を投稿させていただきました。
これが何かの助けになれば幸いです。