自作武器を作ろうず

<!-- リトルカブにハイコンプ組んだりペットボトルロケットでロケットランチャー作ったり、Arduinoで赤外線ラジコン作ったり、JavaScriptでしょーもないアプリ作ったり、「レビュー」の名のもとに意味もなく買ってしまったガジェットの自慢する暇な大学生のつれづれなるままなブログです。 -->


sambaとラズパイでファイル鯖を作っろうと思ったけどサイトによって書いてること違う忘備録

スポンサードなんとか

※僕は samba 4.5.8 でやりました。

Samba で NAS 作ろうと思ったけど,サイトによって smb.conf の内容違いすぎ

   タイトルのとおりです。「Raspberry Pi ファイルサーバ」と検索すると,samba を用いた方法がたくさん出てくるのですが,用途やsambaのバージョン,サイトによって書いてること全然違うんすよね

  ココにハマってしまい本当に自分に必要なのは何なの分かるまで悪戦苦闘する羽目になりましたのでメモ書きがてら書いときます。



作りたいシステム

f:id:teppodone:20170926000624p:plain

  こんなんです。大学の研究室に建てた俺様専用ローカルサーバーなんですが

  • ラズパイに実験データを保存して,ラズパイの共有フォルダにアクセスすることによってデータを見ることが出来る
  • 同じ研究室の人たちに勝手に入ってこられちゃ困るので,僕だけが入れるようにする
  • セキュリティ上の観点から,LAN外からはアクセス出来ないようにする

  コレを作っていきたいと思います。



環境

  • ボード…Raspberry Pi 2 Model B
  • OS…Raspbian GNU/Linux 9.1 (stretch) ※要するにフツーのRaspbian
  • sambaのバージョン…Version 4.5.8-Debian



手順

Raspberry Piの中にNASを詰め込む! | Device Plus - デバプラ
  こちらのページを参考にしました。



1. samba のインストール
   フッツーに sudo apt-get install で samba をインストールします。

 pi@raspberrypi:~ $ sudo apt-get install -y samba


  僕がインストールした 2017/09/10 の段階では 4.5.8 でした。

pi@raspberrypi:~ $ samba -V
Version 4.5.8-Debian


2.共有フォルダの作成
   共有フォルダとして扱うフォルダを作成します。

f:id:teppodone:20170926001142p:plain

  フォルダ名は「public」でも「共有」でも何でも良いんですが,ココでは「eggplant」としました。茄子(=eggplant)と NAS をかけた,私の教養の高さを感じられる高尚なギャグです。

  アクセスするのは僕だけなので,全ての権限をオーナーだけにしときます。



いよいよ smb.conf をいじる
先に言っときます。
  hosts allow とか弄ってません。つーか hosts allow 最初っからそんな項目なかったし。

やったことはただ二つ。



1. 新しく共有フォルダの設定を書き加える
  sudo nano /etc/samba/smb.conf で smb.conf を開き,smb.conf の一番下に下記のコードを書き加えて保存しました

[eggplant]
path = home/pi/eggplant
guest ok = no
read only = No


2. [print$] → #[print$]
  上記の設定のままでは eggplant だけでなく 「prints」 という名前のフォルダまでネットワーク上に公開されてしまうので,[print$] をシャープマークを付けてコメントアウトしました。

【変更前】
 [print$]
    comment = Printer Drivers
    〜以下略

↓

【変更後】
#[print$]
    comment = Printer Drivers
    〜以下略




パスワードを設定する
  ここまでで既にNASは完成なのですが,今のままではユーザー名「pi」さえ入力すればLAN内の人間なら誰でもアクセスできてしまいます。そこで smbpasswd コマンドを用いてパスワードを設定します。

pi@raspberrypi:~ $ sudo smbpasswd -a pi

  そしたらパスワードを入力するように言われるので入力してエンター押して画面の支持に従うだけです。



おわり

  ラズパイを再起動して,Windowsからネットワーク上のフォルダを探すと「RASPBERRYPI」と表示されていることが分かるかと思います。

Raspberry Piの中にNASを詰め込む! | Device Plus - デバプラ
コチラのサイトの後半にやりかた書いてます。

  ココに,ユーザー名 「pi」とさっき smbpasswd -a で設定したパスワードを入力すれば外部のパソコンから共有フォルダにアクセスできます。めでたしめでたし。



参考文献






日記

特筆すること何もないです先週。

  今週末が卒業研究の中間発表なもんで最近はずっと研究室でドキュメント書いてスライド作ってるだけです。
  研究発表のスライドを作るのは,実に4年ぶり。最後に作ったのが高校科学部でのエリンギのパワポですかね。

腕が鳴る。

  あとは,学祭があったぐらい。ジャグリングサークルの後輩ズが各々楽しそうにパフォーマンスしてました。