====== sambashareグループでアクセス制限設定 ====== [[ubuntu:server:samba|Sambaでファイル共有]]では誰でもアクセスできる共有フォルダを設定しました。\\ このページでは、UbuntuにおいてはSambaをインストールすることによってsambashareグループが自動的に作成されるので、このグループに所属するユーザーがホームディレクトリやその他にアクセスできるファイルサーバーを設定します。 ===== Sambaのインストール ===== 端末から… $ sudo apt install samba\\ ===== フォルダの作成 ===== 共有するフォルダの作成、ここでは「/var/samba」としました。 $ sudo mkdir /var/samba/ パーミッションの変更 $ sudo chmod 777 /var/samba/\\ ===== フォルダの設定 ===== sambaの設定は「/etc/samba/smb.conf」に記述します。 エディタでファイルの末尾に以下を追記します。 [SambaShare] path = /var/samba writable = yes または「read only = no」 browseable = yes valid users = @sambashare force group = sambashare force create mode = 0660 force directory mode = 0770 * [SambaShare] | Windowsに表示されるフォルダ名 * path | 共有フォルダのUbuntu上のパス * writable | 書き込み可能かどうかの設定 * browseable | 表示設定、ここでは[SambaShare]の表示 * valid users | アクセス可能なユーザーの記述、@でグループ * force group | 共有内のファイルの所有者、強制指定 * force create mode | 必ずファイルに適用されるパーミッション * force directory mode | 必ずディレクトリーに適用されるパーミッション\\ [[ubuntu:server:memo:smb_conf|参考ページ:smb.confについて]] ===== ユーザーのホームにも接続する ===== * 「/etc/samba/smb.conf」175行目あたり「[homes]」の項を「;」を削除して有効化する。 * 「writable = yes」を追加記述した。 [homes] comment = Home Directories browseable = no writable = yes * [homes] | Windowsに表示されるフォルダ名 * comment | コメントを指定 * browseable | 表示設定、ここでは[homes]の非表示、ユーザーフォルダだけ表示 * writable | 書き込み可能かどうかの設定 ===== ユーザーの設定 ===== ユーザーをsambashareグループに追加します。ここでは「peconet」 ※ 自身を追加した場合、一度ログアウトしないと反映されません $ sudo gpasswd -a peconet sambashare sambaにもユーザー登録 $ sudo pdbedit -a -u peconet\\ sambaを再起動して変更内容を反映します。 $ sudo systemctl restart smbd \\ ===== Windowsから接続 ===== **エクスプローラーに「\\IPアドレス」または「\\ホスト名」で接続。**\\ ユーザーフォルダ「peconet」と「SambaShare」に接続された。 {{:ubuntu:server:sambashare_01.png?400|Sambaへ接続}}\\ \\ ユーザーフォルダを開いてみる(隠しファイルも表示した状態) {{:ubuntu:server:sambashare_02.png?400|ユーザーフォルダを開く}}\\ \\ ===== ファイアーウォール ===== sambaは標準ではTCPの445番を使用するので、ポートを解放します。 $ sudo ufw allow 445/tcp 確認は… $ sudo ufw status 再読み込み $ sudo ufw reload \\ ===== その他 ===== sambaの自動起動設定 $ sudo systemctl enable smbd sambashareグループへのユーザー追加 $ sudo gpasswd -a ユーザー名 sambashare sambashareグループからのユーザー削除 $ sudo gpasswd -d ユーザー名 sambashare sambaユーザーの登録 $ sudo pdbedit -a -u ユーザー名 sambaユーザーの削除 $ sudo pdbedit -x -u ユーザー名 sambaユーザーの確認 $ sudo pdbedit -L sambaユーザーのパスワード変更 $ sudo smbpasswd -U ユーザー名