Linux にsamba をインストールしてみました。(私の環境でうまくいったよ~という話でベストプラクティスではありません。)参考URL:Windowsファイルサーバー構築(Samba) – CentOSで自宅サーバー構築
# yum install samba
iptables のファイアウォールのポート解放。Windows 側のセキュリティソフトがあれば、ローカルサービスのTCP とUDP のポート135~139 445 をプライベートネットワークで受信許可して下さい。service iptables restart で設定反映。
# vi /sysconfig/iptables ・・・ -A INPUT -p tcp -m tcp --dport 135:139 -j ACCEPT -A INPUT -p udp -m udp --dport 135:139 -j ACCEPT -A INPUT -p tcp -m tcp --dport 445 -j ACCEPT ・・・ # service iptables restart
ここでSamba ユーザー登録。Linux のユーザー名で、Windowsのアカウント名と同名に限ります。が、一時的にWindows のアカウント名をLinux 側に合わせて変更し、一度資格情報を保存すればWindows側 のユーザー名は元に戻してもアクセスできました。
# pdbedit -a gusachan new password retype new password
設定ファイルを編集します
# vi /etc/samba/smb.conf ・・・ [global] ・・・ workgroup = WORKGROUP server string = SECURENET ・・・ passdb expand explicit = no
Samba ファイルサーバー起動
# service smb start # service nmb start # chkconfig smb on # chkconfig nmb on
Windows ネットワークにサーバーが見えました。クリックすると「・・アクセス許可がありません」と蹴られました。ディレクトリを作成してSELinux のコンテキスト設定します。
# mkdir /home/gusachan/samba/$ mkdir /home/samba/share (訂正 root権限で作成するとアクセス不可 # chcon -t samba_share_t /home/samba/share -R
フォルダが表示されました。
追記)表示されたフォルダにアクセスできるか検証したところ、ディレクトリの所有権がroot になっており、書き込み、フォルダ作成不可でした。追加で所有権変更コマンド
# chown -R samba:samba /home/samba/share/
としました。(本来は最初から、ユーザー権限でディレクトリ作成すれば良いです。上記訂正してお詫び申し上げます。)