ファイルサーバー(Samba)を構築する
環境
- Parallels Desktop 14 for Mac
- macOS Mojava
- Ubuntu Server 18.04.2 LTS
- Windows 10
1. Samba パッケージをインストールする
$ sudo apt install samba
インストールが完了したら、下の 2 つが起動していることを確認します。
- smbd ... ファイル共有機能
- nmbd ... ホスト名でファイルサーバーにアクセスするためのネームサーバー機能
$ sudo systemctl status smbd $ sudo systemctl status nmbd
2. Samba の設定ファイルを調整する
設定ファイル /etc/samba/smbd.conf をバックアップファイルに変更して、新たに設定ファイルを作成します。
$ sudo mv /etc/samba/smbd.conf /etc/samba/smbd.conf.bak
$ sudo vi /etc/samba/smbd.conf
以下の内容を設定ファイルに記述します。
[global] workgroup = WORKGROUP dos charset = cp932 unix charset = UTF8 interfaces = xxx.xxx.xxx.xxx/xx [share] path = /var/share browsable = yes writable = yes create mask = 0777 directory mask = 0777
設定ファイルの作成が完了すると、変更内容を反映するように smbd と nmbd を再起動します。
$ sudo systemctl restart smbd
$ sudo systemctl restart nmbd
3. ファイルサーバーとして共有するディレクトリを作成する
/var 直下に「share」ディレクトリを作成して、パーミッション「777」で設定します。(パーミッションは 777 でなくても大丈夫かも。)
$ mkdir /var/share
$ sudo chmod 777 /var/share
4. Samba にアクセスするためのユーザーを作成・登録する
Samba にアクセスするためには、ユーザーを Ubuntu Server 上に作成し、Samba に登録します。
(注:初めてファイルサーバーにアクセスする際に、ここで作成したユーザー名とパスワードを聞かれます。)
$ sudo adduser sambauser
$ sudo pdbedit sambauser
5. ファイヤフォールを調整する
Samba へのアクセスには 137/tcp、138/udp、139/udp、445/tcp が使われるみたいですが、各々設定するのが面倒だったので、以下のようにしました。
ファイヤウォールが "有効" になっていることを確認 $ sudo ufw status
Samba で使用するポートを空ける $ sudo ufw allow samba
6. Windows PC からアクセスする
Windows 10 の Explore を開いて、アドレスバーに IP アドレス「\\xxx.xxx.xxx.xxx」を入力すると、共有フォルダが見えます。
課題
- Windos 10 の Explore のアドレスバーにホスト名を入力して、ホスト名でアクセスすると共有フォルダが見えない。
- 名前解決が適切にできていないみたい?