treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

ワークグループ環境でファイルサーバにアクセスできなくなった

ワークグループ環境でsambaのファイルサーバを使っている環境で、あるPCだけがファイルサーバアクセス時にエラーになる、という症状を受けて対処を依頼されたのでご報告。

以前の経験が生きてきました。

共有フォルダにアクセス出来ない?

そのPC(Windows8.1)ユーザから直接聞いたわけではないのですが、どんな問題かと言えば、ある日に気がついたところで、ファイルサーバ(sambaファイルサーバ)の共有フォルダにアクセスすると、ユーザ名とパスワードの入力を要求されるようになった、という症状。

f:id:treedown:20200625205342p:plain
画面下には、「アクセスが拒否されました」というエラーメッセージが表示されています。

PCの再起動なども試してみたが効果なし、今までアクセスしていた共有フォルダすべてが同じようにIDとパスワードを要求されるようになった、ということで対処を依頼されました。

調査

「アクセスが拒否されました」というエラーメッセージ画面でユーザIDとパスワードの入力を促されます。ここで、ファイルサーバ(例えば、コンピュータ名が\\FileServerとして)のアカウントである<\\FileServer\%Username%>をID欄に入力し、パスワードを入力すれば、問題なく共有フォルダにはアクセスできるようになります。

試しに、別のテストPCで、同一のユーザIDとパスワードでWindowsのユーザを作成して共有フォルダへアクセスを試みたらば、特にエラーや入力を促されることなく、アッサリとアクセス成功、となりました。

と、いうことは、PC(あるいはユーザプロファイル)に要因がある、ということか…、という切り分けが終わったところで時間切れ。
いったんPCをユーザに返して、後日調査を再開。

…しかし分らない

後日また調べて見たのですが、どうも分らない…。
別のPCで同一のユーザIDとパスワードで正常動作が確認取れていたから、sambaサーバ側には問題がないと言う点は切り分けできているものの、PCのどの部分が悪いのかがサッパリ…。

イベントビューアではソース=SMBClientというそれらしいログがあったので、ログを閲覧してみれば、
--------------------------------------------------------------
SMB クライアントは共有に接続できませんでした。

エラー: {アクセス拒否}
プロセスはオブジェクトのアクセスを要求しましたが、アクセス権が与えられていません。

パス: \FileServer\ShareFolder
--------------------------------------------------------------
※ちなみにイベントIDは「31010」でした。

こういう感じのログは記録されているんですが、うーん、ユーザIDとパスワードはエラーが起きる以前から変わっていないし、実際PCにはログインしているし、別PCからはエラーが出ないからユーザIDに問題があるとも思えないし、でもエラー自体はアクセス拒否を示している、というなんとも分らない状況。

ものは試しとcmdkey

アクセス権で困った時はcmdkeyで正しいアクセス情報を付与してみる、というのが良さげ。

他のテストPCでアクセス出来るんだから、cmdkeyでIDとパスワードを記憶させてしまえば良いのではないか?と考えて早速実行してみることに。

f:id:treedown:20200625205416p:plain
「cmdkey /add:FileServer /user:testuser1 /pass:%パスワード%」

こういう感じで、ユーザの認証情報を記憶させると、問題なくファイルサーバの共有フォルダにアクセス出来るようになっていました。

いったんWindowsからログオフして、再度ログオンしても問題なくファイルサーバの共有フォルダにアクセスできます。
よし、対処完了…
いやいやいや、そうじゃない。これはあくまで対処療法じゃないか。

ただ、これでユーザプロファイル破損、みたいな障害系の問題じゃないということは分りました。

となると…

ふと思い出した、以前のこと

Windows8.1で思い出した、ついこの前のこと

blog.treedown.net

このときは、Microsoftアカウントが関連付けされることによって、ローカルアカウントがMicrosoftアカウントに置き換わってしまっており、問題が起きていました。
これと、同じ?

そう思って、タイル画面側の「PC設定」から「アカウント」を選択。

f:id:treedown:20200625205515p:plain
あぁ…、バッチリ関連付けされています。
これが原因か、と確信にも似たものが頭脳に訴えかけてきました。

Microsoftアカウントを関連付けする⇒Microsoftアカウントがユーザ名となる⇒Microsoftアカウントはメールアドレスがユーザ名となるため、サーバから認証を要求された際にPCから発信するユーザ名はローカルアカウントを使っていたときの「%USERNAME%」ではなく、「%USERNAME%@%DomainNAME%」の形式でユーザ名を報告するから、sambaのファイルサーバの共有フォルダ認証では「ユーザ名が違う」と判断して、アクセスが拒否されましたエラーが発生していたと考えられました。

早速、<管理者権限なのに、ユーザのパスワード初期化ができないとき - treedown’s Report>のときの手順で関連付けを解除し、元のローカルアカウントをパスワード再入力にて復元します。

ローカルアカウントを復旧後、共有フォルダへのアクセス拒否エラーは出ないようになっていました。

これにて、対処完了。