Samba を使用してパスワードなしのユーザーの Windows 共有にアクセスする

Samba を使用してパスワードなしのユーザーの Windows 共有にアクセスする

Windows 7 を実行しているラップトップを持っています。設定されているアカウントは 1 つだけで、パスワードはありません。

同じワークグループに構成され、同じローカル ネットワークに接続された、Ubuntu 14.04 を実行している PC から共有にアクセスしようとします。

Nautilusとsmbclientはどちらもアクセスできません。例えば

$ smbclient //<server>/<share> -U <user>
Enter <user>'s password: 
Anonymous login successful
Domain=[WORKGROUP] OS=[Windows 7 Ultimate 7601 Service Pack 1] Server=[Windows 7 Ultimate 6.1]
tree connect failed: NT_STATUS_ACCESS_DENIED

(パスワードを求められた場合は Enter キーを押すだけです)。

皮肉なことに、Windows ラップトップのアカウントにパスワードが設定されていて、正しいパスワードが入力されると、接続が機能します。

理論上は、どちらの場合でも機能するはずです。パスワードがなく、パスワードが入力されていない場合は、アクセスを拒否する理由はありません。では、なぜ機能しないのでしょうか。Samba は「空のパスワード」を特別なケースと見なしているのでしょうか。

答え1

これを行うには、Windowsの設定を変更する必要があります。スタックオーバーフロー:

コントロールパネル > ネットワークと共有センター > 共有の詳細設定の変更 > パスワード保護の共有オプションをオフにする

このオプションを変更すると、すべてが機能するはずです。

これにより、共有ファイルの変更を許す攻撃者に対する保護が事実上剥奪されることに注意してください。実際にパスワードを設定し、パスワードを保存した自動マウント エントリを fstab に追加することをお勧めします。

答え2

何度も何度も苦しみ、何度も悩んだ末、部分的な解決策を見つけました。私は次のことを実行しました。

apt-get install samba-client
apt-get install cifs-utils

次に、次のコマンドを発行しました。

sudo mount.cifs //192.168.0.2/f$ /mnt/f -o user=administrator

パスワードの入力を求められましたが、パスワードを入力する代わりに Enter キーを押しました。Enter キーを押すとすぐに共有がマウントされました。

完全な解決策ではありませんが、少なくとも共有にアクセスできるようになりました。

残念ながら、共有にアクセスするために別のメカニズムを使用しているため、nautilus などではまだサポートされていません。

smb://192.168.0.2/f$ファイル マネージャーはパスワードなしの共有を処理できないため、ログイン ループに陥ってしまい、単に入力したりして共有にアクセスすることはできません。

しかし、少なくともこの方法では、パスワードなしの共有をフォルダーにマウントし、ファイル マネージャーを介してそのフォルダーにアクセスすることができます。

何らかの設定を編集しない限り、パスワードなしの共有にアクセスするたびにこれを実行する必要があります。友達の家から共有にアクセスしようとする場合はまだ不便ですが、この時点では何もしないよりはましです。

とにかく、IP/共有、マウントする場所、共有を持つアカウントのユーザー名を変更するなど、ニーズに合わせてコマンドを変更するだけです。

sudo mount.cifs //192.168.0.2/f$ /mnt/f -o user=administrator

これは、パスワードなしの管理共有に適切にアクセスする方法として私が見たり知ったりした唯一の方法であり、通常のパスワードなしの共有でも機能すると確信しています。

ファイル ブラウザーを動作させる方法を知っている人がいたら、smb://ぜひ知りたいです。私にはわかりませんし、他の人も知らないようです。

関連情報