Info kplace.plala.jpから移設しました
■目的
sambaを使ってWindowsNTのファイルサーバーをLinuxで置き換えてみました。
■Linux
産声からまだ9年たたないが今ではWindows、UNIXと並ぶOSとして注目を浴びています。
特徴は一言でいえばオープンソース。ソースは自由に使用でき複製も改変も自由です。
使う側から見たメリットは、WEBサーバーやtelnetなどのネットワーク機能のほかに
①堅牢で安定している。
②遠隔管理が容易
③ライセンスフリー(クライアントライセンスが無償)
などがあります。
スペースシャトルの実験装置や映画"タイタニック"の製作などでのlinuxは周知の事実です。
■samba
sambaはWindowsクライアントに、リモートドライブ/プリンターの機能を提供します。クライア
ント 側に手を加えることなく、ある日突然WindowsサーバーをLinuxに換えても誰も気づかないほどスムーズに転身します。
samba自身はオープンソースソフトウェアでLinuxだけでなくSolarisやFreeBSDでも動作します。実際solaris
でも 構築しましたが問題なく動きます。
詳細はこちらのサイトを
参照 ください。
今回構築した環境は以下
Redhat Linux6.2j
kernel-2.2.14
samba-2.0.6
Windows client
Windows98SE
|
|
■ポイント
samba構築のポイントは
①日本語ファイル名コード変換と大文字、小文字の扱い
②WinNTの暗号化パスワードのサポート
③セキュリティ
です。
Win2000環境では新たに採用されたActive Directory
Service、kerberos検証、ダイナミックDNSなどへの対応を要求されますがこれらについては以下の報告などを参照ください。
日経Linux 2000/5月号「Windows2000とSambaの接続性を検証」
■sambaの設定
設定は/etc/smb.confファイルで行います。
今回の変更点は以下です。
[global]
workgroup = wg01 (環境に合わせて指定します)
serverstring = c515 (サーバ名です)
security = user (ユーザ認証にlinuxサーバのユーザ名を使います)
encrypt password = yes (暗号化パスワードをサポートします)
smbpasswd = /etc/smbusers (パスワードファイルを指定します)
client code page = 932 (クライアントコードはsjis...932)
coding system = EUC (linuxでEUC変換します)
preserve case = yes (長い名前で大文字、小文字を区別します)
short preserve case = yes (短い名前で大文字、小文字を区別します)
[lnx] 共有の指定です。環境に合わせて指定します。
comment = linux
path = /home/linux
public = no
writable = yes
printable = no
create mask = 0775 (パーミッションを設定します)
詳
細はこちらを参照 ください。
■ユーザ登録
今回はlinuxサーバ側でsamba専用にユーザを/etc/smbusersに登録します。
①/etc/smbusersへの登録
mksmbpasswd.shを使いpasswdファイルからユーザを登録します。
#cat /etc/passwd | mksmbpasswd.sh > /etc/smbusers
②これでパスワードを含めてユーザ登録されるはずですが実際はsmbpasswdで
パスワードを再指定しないとユーザ認証に失敗します。
■sambaの起動
"Run Level Maneger"などのツールでinetd.confやinitd.confを編集し自動起動します。
起動するデーモンは以下の2つです。
・smbdデーモン
・nmbデーモン
■共有サーバのサンプル
サーバ側
|
|
クライアント側
|
|
■結果
無事構築を完了した。
クライアント側からは見かけはLinuxとWindowsNTサーバの区別がつきません。
①日本語ファイル名 ②暗号化パスワード ③セキュリティとも予定どおりです。
smb.confのパラメータは環境やセキュリティなどの要求レベルに応じて設定可能です。