Linuxのsamba4とwindows95/98の共有に必要な設定です。
主にPC98などのレトロPCが接続するときに使うと思います。
知っておきたい知識
LAN Manager 認証
Windowsのファイル共有における認証は、LAN Manager認証と呼ばれる認証方式が利用されている。
古い順に
・LM認証
・NTLM認証
・NTLMv2認証
の種類がある。
Windows NT4.0 SP3以前やWindows95/98といった古いWindowsは、NTLMv2がサポートされておらず、LMやNTLMしか使えない。
よって、ファイルサーバーを構築する際にLM認証、NTLM認証をするように設定しないと、windows95/98とファイル共有はできない。
古い認証は当然の如くセキュリティが甘いのでWindows95/98が接続しないのであれば上記設定は避けるべき。
設定方法
グローバルセクション追加
グローバルセクションに以下追加。
#95/98設定
server min protocol = LANMAN1
ntlm auth = Yes
lanman auth = Yes
#client ntlmv2 auth = No
#client lanman auth = Yes
#encrypt passwords = yes
#client plaintext auth = Yes
#server signing = disableddos charset = CP932
unix charset = UTF-8
#95/98設定
server min protocol = LANMAN1
上はSamba4.13から必須です。Samba4.13未満ならいりません。
ntlm auth = Yes
lanman auth = Yes
の上の2つは必須。
以下2つはsamba4からWindows95/98へアクセスする際に必要な設定。
Windows95/98からsamba4へアクセスするだけなら不要。
#client ntlmv2 auth = No
#client lanman auth = Yes
以下2つはいらないが、WIndows95/98からsamba4へ接続できなかったら、コメントアウトしたらもしかしたらアクセスできるようになるかもしれないとネットで見かけた。
しかし、これをコメントアウトしないとアクセスできなかったことは一度もない。
#encrypt passwords = yes
#client plaintext auth = Yes
#server signing = disabled
あとは、
「adduser」コマンドでLinuxユーザーを作成し、
「smbpasswd」でsambaのパスワードを設定する。
Linuxユーザーの作成
Linuxユーザーの作成例
sudo adduser test_user
sambaのパスワード設定
sambaのパスワードの設定例
sudo smbpasswd -a test_user
デーモン再起動
デーモン再起動は以下コマンド。
ラズパイ4の場合
sudo service smbd restart
sudo service nmbd restart
注意点
「lanman auth」がSamba 4.11から非推奨など、そのうちsambaがバージョンアップするとWindows95/98からSambaへのアクセスできなくなる可能性大。
参考
ntlm auth = Yes
SambaサーバのNTLM認証を許可するか。
lanman authとntlm authの両方をNoにすればNTLMv2のみの認証になる。
クライアントにWin95/98/Me/NTがなければNoがセキュリティ的に推奨される。
lanman auth = Yes
SambaサーバのNTLM認証を許可するか。
lanman authとntlm authの両方をNoにすればNTLMv2のみの認証になる。
クライアントにWin95/98/Me/NTがなければNoがセキュリティ的に推奨される。
Samba 4.11 から非推奨。 将来は、現在の既定値である lanman auth = no が強制された動作となる。
client lanman auth = Yes
クライアントのLANMAN認証を使用するか。
クライアントにWin95/98/MeがなければNoにできる
Noにするのがセキュリティ的に推奨値。
Samba 4.13 以降廃止予定。将来は、現在の既定値である client NTLMv2 auth = yes
が強制的に設定される。
encrypt passwords = yes
暗号化パスワードの利用。規定値はYes。Yesの利用が望ましい。
これはコメントアウトしてもいいかもしれない。
client plaintext auth = Yes
クライアントが平分パスワードを送信するか。
Noにするのがセキュリティ的に推奨値。
これはコメントアウトしてもいいかもしれない。
client ntlmv2 auth = No
クライアントのNTLMv2認証を使用するか。
クライアントにWin95/98/Me/NTがなければYesにできる
Yesにするのがセキュリティ的に推奨値。
Samba 4.13 以降廃止予定。将来は、現在の既定値である client NTLMv2 auth = yes
が強制的に設定される。
server signing = disabled
SambaサーバがSMB署名を強制するか(規定値はAuto)。
これはコメントアウトしてもいいかもしれない。