Sambaファイルサーバーの設定
★ Windowsのファイルサーバー構成
– LinuxサーバーをWindows用のファイルサーバーとして設定する
– ここではSambaをインストールし、Windowsから各ユーザーのホームディレクトリにアクセスできるように設定
– また、すべてのユーザーがアクセスできる共有フォルダを作成
– Sambaサーバーに社内ネットワーク内からアクセスできるように設定
■ Sambaのインストール
[root@centos ~]# yum -y install samba
■ Sambaの設定
1) 新しいユーザーを作成する場合
→ 新しいユーザーをLinuxに登録
[root@centos ~]# useradd centos
→ パスワードを設定
[root@centos ~]# passwd centos
Changing password for user centos.
New password:
Retype new password:
password: all authentication tokens updated successfully.
2) 既存のユーザーをSambaサーバーへのアクセスユーザーとして使用する場合
→ Linuxで登録されたユーザーをSambaサーバーのアクセスユーザーとして新規登録(例:centos)
[root@centos ~]# pdbedit -a centos
new password:
retype new password:
startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created.
Unix username: centos
NT username:
Account Flags: [U ]
User SID: S-1-5-21-1397570601-503051572-2212552623-2000
Primary Group SID: S-1-5-21-1397570601-503051572-2212552623-2001
Full Name:
Home Directory: \\linux\centos
HomeDir Drive:
Logon Script:
Profile Path: \\linux\centos\profile
Domain: LINUX
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: 土, 14 12月 1901 05:45:51 GMT
Kickoff time: 土, 14 12月 1901 05:45:51 GMT
Password last set: 月, 13 12月 2004 16:06:00 GMT
Password can change: 月, 13 12月 2004 16:06:00 GMT
Password must change: 土, 14 12月 1901 05:45:51 GMT
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
■ ホームディレクトリの作成 (Khôiが実行した場合は含まれていません)
1) 新しく作成したユーザー用の処理
→ 新しいユーザーのためにSamba用ディレクトリを作成
[root@centos ~]# mkdir /etc/skel/samba
2) 既存ユーザー用の処理
→ 既存ユーザーにSamba用ディレクトリを作成するスクリプト
[root@centos ~]# vi mkhomedir.sh
#!/bin/bash
for user in $(ls /home)
do
id $user > /dev/null 2>&1
[ $? -eq 0 ] && \ [ ! -d /home/$user/samba ] && \mkdir /home/$user/samba && \
chown $user:$user /home/$user/samba && \
echo “/home/$user/samba create”
done
→ 既存ユーザーのためにSamba用ディレクトリを作成するスクリプトを実行
[root@centos ~]# sh mkhomedir.sh
→ 既存ユーザーのためにSamba用ディレクトリを作成するスクリプトを削除
[root@centos ~]# rm -f mkhomedir.sh
■ 共有フォルダの作成
→ 全ユーザーがアクセス可能な共有ディレクトリを作成
[root@centos ~]# mkdir /home/samba
→ 共有ディレクトリの所有者を変更
[root@centos ~]# chown nobody:nobody /home/samba
※※※※※※※※※※※※※※※
※ Khôiの作成例: ※
※※※※※※※※※※※※※※※
→ ホーム内にPublicディレクトリを作成
[root@vietnam home]# mkdir public
→ ホームディレクトリにフルアクセス権を付与
[root@vietnam ~]# chmod 777 /home/
→ Publicディレクトリに全ユーザーにフルアクセス権を付与
[root@vietnam ~]# chmod 777 /home/public/
■ Sambaの設定
→ Sambaの設定ファイルを編集
[root@centos ~]# vi /etc/samba/smb.conf
[global]
→ Insert (Linux用の日本語フォント設定)
unix charset = UTF-8
→ Insert (Windows用の日本語フォント設定)
dos charset = CP932
→ Insert (Windows用の日本語フォント設定)
display charset = UTF-8
# workgroup = NT-Domain-Name or Workgroup-Name
workgroup = MYGROUP
→ Update (WindowsのWorkGroup名を指定)
workgroup = WORKGROUP
※Windowsのプロパティ ⇒ ComputerタブのWorkGroup欄を参照
→ Insert (内部ネットワークからアクセスできるように設定)
; hosts allow = 192.168.1. 192.168.2. 127.
hosts allow = 192.168.1. 127.
# プリンタの一覧を自動的に読み込むにはこの設定が必要
※プリンタをSambaで共有しない場合
→ プリンタ共有を無効にするために行をコメントアウト
; load printers = yes
→ Insert (プリンタ共有を無効化)
load printers = no
→ Insert (プリンタ共有を無効化)
disable spoolss = yes
comment = Home Directories
→ Insert (/home/UserNameをSamba用ホームディレクトリとして設定)
path = %H/samba
browseable = no
writable = yes
3) ユーザー用のリサイクルビン機能を追加
※ファイル削除時に自動的にリサイクルビンに移動
→ リサイクルビンを共有
vfs objects = recycle
→ リサイクルビンのディレクトリ名 (/home/UserName/.recycle)
recycle:repository = .recycle
→ リサイクルビン内でディレクトリ構造を保持しない
recycle:keeptree = no
→ リサイクルビンに同名のファイルがある場合、別名で保存
recycle:versions = yes
→ リサイクルビンへの移動時にタイムスタンプを更新しない
recycle:touch = no
→ リサイクルビンに移動するファイルのサイズ制限を設定(0: 制限なし)
recycle:maxsize = 0
→ リサイクルビンに移動せず即削除するファイルタイプを設定
recycle:exclude = *.tmp ~$*
→ これでユーザー用のリサイクルビン機能が追加されました
→ 以下を設定ファイルの最後に追加
[public]comment = Public Stuff
path = /home/samba
public = yes
writable = yes
only guest = yes
※ファイル削除時に自動的にリサイクルビンに移動
→ リサイクルビンを共有
vfs objects = recycle
→ リサイクルビンのディレクトリ名 (/home/UserName/.recycle)
recycle:repository = .recycle
→ リサイクルビン内でディレクトリ構造を保持しない
recycle:keeptree = no
→ リサイクルビンに同名のファイルがある場合、別名で保存
recycle:versions = yes
→ リサイクルビンへの移動時にタイムスタンプを更新しない
recycle:touch = no
→ リサイクルビンに移動するファイルのサイズ制限を設定(0: 制限なし)
recycle:maxsize = 0
→ リサイクルビンに移動せず即削除するファイルタイプを設定
recycle:exclude = *.tmp ~$*
→ これで共有ディレクトリのリサイクルビン機能が追加されました
※※※※※※※※※※※※※※※
※ Khôiの作成例: ※
※※※※※※※※※※※※※※※
→ Sambaの設定ファイルを編集
[root@centos ~]# vi /etc/samba/smb.conf
— 行102 (:102 → このコマンドで102行目にジャンプします)
→ アクセスにはユーザー名とパスワードが必要
;security = user
→ セキュリティを変更し、パスワードなしでアクセスできるように設定
security = share
— 2つの共有フォルダ、PublicとKuhanの設定
[Public]path = /home/public
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
[Kuhan]path = /home/kuhan
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
■ Sambaの再起動
→ Sambaを再起動
[root@centos ~]# /etc/rc.d/init.d/smb start
— SMBサービスを起動中: [ OK ]
→ nmbを再起動
[root@centos ~]# /etc/rc.d/init.d/nmb start
— NMBサービスを起動中: [ OK ]
→ Sambaを自動起動設定
[root@centos ~]# chkconfig smb on
→ NMBを自動起動設定
[root@centos ~]# chkconfig nmb on
— サービスの状態をリスト表示
[root@vietnam ~]# chkconfig –list
nmb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
smb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
…
★ 参考リンク
https://centossrv.com/samba.shtml
https://www.jitaku-server.net/samba_setup.html
https://shikichi.ddo.jp/samba.html
https://www.uetyi.mydns.jp/wordpress/linux-server/entry-23.html
https://sites.google.com/site/nakamulinux/Home/samba
https://www.obenri.com/_samba/about_samba.html
https://d.hatena.ne.jp/camellia1977/20120818/1345288125