私は定期的にWindows 2012R2サーバからLinuxマシン(OpenSUSE Tumbleweed)に共有ドライブをマウントしています。先週の木曜日にWindowsサーバにアップデートがインストールされて以来、マウントが失敗し、エラーメッセージが表示されます。
Aug 26 11:45:27 <linux server> kernel: CIFS: Attempting to mount //<windows server>/<share>
Aug 26 11:45:27 <linux server> kernel: CIFS: Status code returned 0xc000018d STATUS_TRUSTED_RELATIONSHIP_FAILURE
Aug 26 11:45:27 <linux server> kernel: CIFS: VFS: \\a-store Send error in SessSetup = -5
Aug 26 11:45:27 <linux server> kernel: CIFS: VFS: cifs_mount failed w/return code = -2
異なるマウント オプション (vers=2.0、2.1、3.0、sec=ntlm、ntlmssp) と異なるユーザーを試しましたが、すべて同じ結果でした。Linux サーバーは他のサーバーからの共有をマウントでき、Windows サーバー上の共有は (ほぼすべての) 他のコンピューターからアクセスできます。両方のマシンでドメインを脱退したり、再度参加したりしてみましたが、効果はありませんでした。
現時点では、Windows サーバーの更新の 1 つが問題の原因であると考えられます。2012R2 で実行されている他のサーバーもまだ正常に動作しており、木曜日にも更新が適用されています。唯一の違いは、オペレーティング システムの言語 (ドイツ語 / 英語) です。
この問題に関する詳細情報を入手する方法はありますか? 「STATUS_TRUSTED_RELATIONSHIP_FAILURE」に関するドキュメントはあまり役に立ちません。
答え1
認証の問題のようです。次を試してください:
- 関連するエラーをキャッチするために、Windowsサーバーのログファイルを監視してください。
- Linuxで使用しているアカウントがこの共有にアクセスする権限を持っていることを確認してください。ローカルアカウントとドメインアカウント
- ファイアウォールがこれを許可している場合は、LinuxからWindowsへの基本的なpingを試してください。
- 別のLinuxマシンから試す
- なぜ「ほぼすべて」と言うのですか?Linuxと接続していない他のマシンをブロックしている共通点があるのかもしれません
これが役に立つことを願います
答え2
問題は、Kerberos 認証を使用できなかったことのようです。Windows ドメインに参加するために winbind から sssd に変更し、mount.cifs コマンドのオプションとして sec=krb5 を使用しました。
mount.cifs //server.tld/share /path/to/mount/point -o vers=3.0,sec=krb5
残念ながら、SSSD に変更する前はこれが不可能でした。
[2021-02-21編集]
以前はwinbindを使用していましたが、ドメインに参加するためにsssdに変更しました。変更したすべての内容を覚えているわけではありませんが、/etcの設定から、次のようにしたようです。
- /etc/sssd/sssd.conf に sssd 設定を追加しました
kinit
およびを使用してドメインに参加しましたnet ads join
smb.conf への変更は必要ありませんでした。