ParrotSecurity 3.8: SMBサーバのSambaをインストールする

Sambaをインストールする手順を記載します。

1 Sambaのインストール

aptでsambaをインストールします。

$ sudo apt install -y samba
$ sudo systemctl enable smbd nmbd

2 pdbedit

pdbeditでsambaへアクセスできるユーザを追加します。このユーザはLinux上に存在するユーザである必要があります。pdbeditで追加しようとするユーザがLinux上に存在しない場合は、useraddで追加しておく必要があります。

$ sudo useradd -m hiroom2

pdbeditでhiroom2というユーザを追加します。

$ sudo pdbedit -a hiroom2
new password:
retype new password:

-tオプションは標準出力からパスワードを設定することができます。

$ yes "${PASSWD}" | sudo pdbedit -a hiroom2 -t

3 /etc/samba/smb.confの設定

ここではホームディレクトリと共有ディレクトリのアクセスを可能にする設定について記載します。

設定が完了した後、systemctlでsmbdとnmbdを再起動します。

$ sudo systemctl restart smbd nmbd

3.1 ホームディレクトリ共有

Sambaはpdbeditで追加したhiroom2に対して/home/hiroom2を公開する仕組みを持っています。/home/hiroom2は各ユーザしかアクセスできないようになっています(Sambaアクセス時に以下の%Sにhiroom2が設定されます)。

valid users = %S

デフォルトでホームディレクトリ共有はread onlyになっているので以下の通りに修正します。ホームディレクトリ共有を無効にするには[homes]の設定をすべてコメントアウトしてください。

$ cd /etc/samba
$ cat <<EOF | sudo patch -p1
--- a/smb.conf.orig    2017-07-21 14:21:22.404000000 +0900
+++ b/smb.conf 2017-07-21 14:21:31.088000000 +0900
@@ -190,7 +190,7 @@

 # By default, the home directories are exported read-only. Change the
 # next parameter to 'no' if you want to be able to write to them.
-   read only = yes
+   read only = no

 # File creation mask is set to 0700 for security reasons. If you want to
 # create files with group=rw permissions, set next parameter to 0775.
EOF

クライアントからは以下のURLにアクセスします。

\\<server>\hiroom2

3.2 全ユーザ共有ディレクトリ

以下の設定をsmb.confに追加することで、pdbeditで追加したユーザでディレクトリを共有できます。

$ cat <<EOF | sudo tee -a /etc/samba/smb.conf
[share]
   comment = Share directory
   path = /var/lib/share
   read only = no
   guest only = no
   guest ok = no
   share modes = yes
EOF

共有ディレクトリのアクセス権は0777にします。

$ sudo mkdir /var/lib/share
$ sudo chmod 0777 /var/lib/share

クライアントからは以下のURLにアクセスします。

\\<server>\share