cifs共有をマウントするときにNT_STATUS_INVALID_PARAMETERをデバッグする方法は?

cifs共有をマウントするときにNT_STATUS_INVALID_PARAMETERをデバッグする方法は?

1つのホスト(hostx)からエクスポートされたcifs共有をマウントすると正常に動作します。

[piotr@demon ~]$ sudo mount -t cifs //hostx.intranet.local/pdobrogost /home/piotr/remote/hostx/ --verbose -o credentials=/home/piotr/.config/cifs-credentials.conf,uid=piotr,gid=piotr
domain=domainx
mount.cifs kernel mount options: ip=1.2.3.4,unc=\\hostx.intranet.local\pdobrogost,uid=1000,gid=1000,user=pdobrogost,,domain=domainx,pass=********

これは、他のホストからエクスポートされたcifs共有では機能しません。

[piotr@demon ~]$ sudo mount -t cifs //hosty.intranet.local/pdobrogost /home/piotr/remote/hosty/ --verbose -o credentials=/home/piotr/.config/cifs-credentials.conf,uid=piotr,gid=piotr
domain=domainx
mount.cifs kernel mount options: ip=1.2.3.5,unc=\\hosty.intranet.local\pdobrogost,uid=1000,gid=1000,user=pdobrogost,,domain=domainx,pass=********
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

/home/piotr/.config/cifs-credentials.conf次のようになります。

username=my_cifs_username
password=my_cifs_password
domain=domainx

ホストを使用してcifs共有に接続しようsmbclientとすると、次のようになります。

[piotr@demon ~]$ smbclient -d 3 -A /home/piotr/.config/cifs-credentials.conf -W domainx //hosty.intranet.local/pdobrogost
lp_load_ex: refreshing parameters
Initialising global parameters
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
params.c:pm_process() - Processing configuration file "/etc/samba/smb.conf"
Processing section "[global]"
added interface p1p1 ip=10.92.2.80 bcast=10.92.2.255 netmask=255.255.255.0
Client started (version 4.1.6).
tdb(/var/lib/samba/gencache.tdb): tdb_open_ex: could not open file /var/lib/samba/gencache.tdb: Permission denied
resolve_lmhosts: Attempting lmhosts lookup for name hosty.intranet.local<0x20>
resolve_lmhosts: Attempting lmhosts lookup for name hosty.intranet.local<0x20>
resolve_wins: WINS server resolution selected and no WINS servers listed.
resolve_hosts: Attempting host lookup for name hosty.intranet.local<0x20>
Connecting to 1.2.3.5 at port 445
Doing spnego session setup (blob length=97)
got OID=1.2.840.113554.1.2.2
got OID=1.2.840.48018.1.2.2
got OID=1.3.6.1.4.1.311.2.2.10
got principal=cifs/[email protected]
Got challenge flags:
Got NTLMSSP neg_flags=0x60898215
NTLMSSP: Set final flags:
Got NTLMSSP neg_flags=0x60088215
NTLMSSP Sign/Seal - Initialising with flags:
Got NTLMSSP neg_flags=0x60088215
SPNEGO login failed: Unexpected information received
session setup failed: NT_STATUS_INVALID_PARAMETER

ローカルシステムは Fedora 20
mount.cifs バージョンを実行します。 6.3
smbclient バージョン: 4.1.6
Hostx は Hostx で Debian 6.0.10 を実行します。
Sambaバージョン:2:3.5.6〜dfsg-3squeeze11 Hostyは、Hosty Samba
でRed Hat Enterprise Linux ESバージョン4を実行します。
バージョン: Samba-3.0.33-0.19.el4_8.3

HostyのSambaログには次のエントリがあります。

Nov 14 15:09:37 hosty smbd[28956]: [2014/11/14 15:09:37, 0] rpc_client/cli_pipe.c:cli_pipe_verify_schannel(354)
Nov 14 15:09:37 hosty smbd[28956]:   cli_pipe_verify_schannel: auth_len 56.
Nov 14 15:09:37 hosty smbd[28956]: [2014/11/14 15:09:37, 0] auth/auth_domain.c:domain_client_validate(260)
Nov 14 15:09:37 hosty smbd[28956]:   domain_client_validate: unable to validate password for user pdobrogost in domain domainx to Domain controller A.INTRANET.LOCAL. Error was NT_STATUS_INVALID_PARAMETER.

これは、私のパスワードを認証するActive Directoryドメインコントローラに問題があることを示します。

ベストアンサー1

Hostxでsmbclientを実行して結果を共有することもできますか?機能する場合は、両方のホストのsmb confファイルを比較する必要があります(結果は/etc/samba/smb.confファイルのようです)。サーバーにSPNEGOが構成されていることを確認しましたか?それ以外の場合は、Hosty の smb.conf 設定に以下を追加して無効にする必要があります。

[グローバル]

クライアントは spnego=no を使用します。

おすすめ記事