はじめに
Raspberry Pi はじめました (第4回) – はじめから の続きです。
環境づくり(part2)
Windowsから直接でアクセスできるようにしよう
- やっぱりWindowsPC上からアクセスしてファイル編集したい
- そこで、これも以前にあったように、sambaをインストール
sudo apt-get install samba
- 設定ファイルを編集
sudo nano /etc/samba/smb.conf
- 次を追加
[pi] path = /home/pi browseable = yes read only = no guest ok = no force user = pi hide dot files = no
- sambaアクセス用のパスワードを設定
sudo pdbedit -a pi
- サービスの再起動
sudo service smbd restart
外からアクセスできるようにするために、ドメインを作ろう
- ドメインは無料で作ることもできるのですが、安いので買ったほうがいいです。
- ダイナミックDNSが使える会社のがいいです。自サーバーのIPアドレスが固定じゃなくてもよいためです。
- というわけで、VALUE-DOMAIN を使用しましょう。
- 「お名前.com」は、「お名前.comでドメイン取得時にWhois情報公開代行を忘れると大損」なので注意
- 上位レジストラは、eNomだと「ネームサーバーが不正に変更される問題について」らしいので、GMOが安心
- VALUE-DOMAINで登録を終えたら「ダイナミックDNSの設定」で、パスワードを設定する。
- ダイナミックDNS機能を「無効」から「有効」にする
- 「ネームサーバーの設定」→「当サービス内のネームサーバー(ns1~5.value-domain.com)を利用する」
- 「DNS情報/URL転送の設定」で、「
a * 1.1.1.1
」と設定。アドレスは自分のアドレスとする。 - これで、ダイナミックDNSが使用可能となります。
- 次のURLを入力すると、0と返り、遠隔でIPアドレスを再設定できます。
https://dyn.value-domain.com/cgi-bin/dyn.fcg?d=hoge.com&p=password&h=*
crontabを使ってみよう
- 「
\\RASPBERRYPI\pi\CronJobs
」というフォルダを作る - 「
startup.sh
」というファイルを作る - 中身は下記のようにする
#!/bin/sh # ここにスクリプトを書いていく exit 0
- 実行権限をつける
chmod +x /home/pi/CronJobs/startup.sh
- ルート権限用のcrontabを開く
sudo crontab -e
- 次を追加する
@reboot su - pi -c "/home/pi/CronJobs/startup.sh"
- これで起動時に実行されるスクリプトを登録できました。
sudo timedatectl set-timezone Asia/Tokyo
とかを登録しておくと、日本の日本標準時間になるのでお勧めです。
- 他にも、同様の操作でDDNSの設定を定期的に実行とかも作れます。
- 例えば、 VALUE-DOMAINの場合は、次のような「
ddns.sh
」を作成して実行権限つけて
#!/bin/sh domain="hoge.com" pass="pass" path="https://dyn.value-domain.com/cgi-bin/dyn.fcg?h=*&d=${domain}&p=${pass}" curl -s ${path} >> /dev/null exit 0
- あとは、これをcrontabに追加すればでよい。
0 */12 * * * /home/pi/CronJobs/ddns.sh
Node.js / npm を使ってみよう
- 普通にNode.jsとnpmをインストールする
sudo apt-get update sudo apt-get install -y nodejs npm
- npmのバージョンが古く色々とエラーが発生するのでアップデートする。nというバージョン管理ツールを利用する。
sudo npm cache clean sudo npm install npm n -g
- インストールしたnで最新のLTS版にバージョンアップする
sudo n lts
- バージョンチェックして最新になっていることを確認する
node -v v10.13.0 npm -v 6.4.1
補足としまして、以下のようにすると直接最新版をインストールできます。
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt-get install -y nodejs
インストール方法の詳細は、「NodeSource Node.js Binary Distributions」を参照してみてください。
おわりに
今日はここまで!
とりあえず、これで外から自宅サーバーへアクセスできるようになります。
コメント