RaspberryPi
CATEGORY
- 2015.05.15(金)
- SambaとNetatalkの設定
- 2015.04.19(日)
- HDDにシステム移行
- 2015.03.17(火)
- aliasの話
- 2015.03.11(水)
- 初期設定 セキュリティ強化編
- 2015.03.05(木)
- 初期設定メモ SSH編
SambaとNetatalkの設定
2015.05.15 Fri
つい先日久しぶりにRaspberryPiをいじったところ、「急にホスト名及びユーザ名がコンソール画面でハイライトされなくなる」、「.vimrcの設定が飛んだのかvimの挙動がおかしくなる」、挙句の果てには「ほとんどのコマンドがNot foundになる」という不具合が発生し、泣く泣くRasPiの再セットアップ(3回め)を行うことになりました。
さすがに3回めにもなるとだいぶ慣れたもので、公開鍵認証でSSH通すまでに1時間強しかかかりませんでした。とりあえずパッケージのアップデート等を済ませ、とりあえずSDカード上でシステムを再構築していきました。
まずはsamba
Sambaにはwebブラウザから設定を変更できるSWATというものがあります。今回の設定はこれで行いたいと思います。
が、
ここでpiユーザでログインするといくら頑張ってもWindowsからアクセスできなくなります(正確に言うとrootしか入れなくなる)。
RasPiには初期ではrootにパスワードが設定されておらず使えません。そこで、
その後パスワードタブからpiユーザを新規ユーザとして追加すると、piでログインできるようになります。細かいディレクトリとかパラメータの設定は適当にググって出してください。
これでとりあえずSambaは終了です。
次は鬼門のNetatalkです。大量のライブラリをインストールし、自分でソースからビルドしなければならない厄介なヤツです。
まず必要なライブラリをインストールしていきます。
Berkeley DBをインストールします。パッケージも有りますが古いため今回は自分でソースからビルドします。
次にNetatalkをインストールしていきます。ここでは本当に最小限のことしかしていないので、例えば共有するディレクトリをSpotlightで検索したいとか、そういったことはもう少し色々イジる必要があります。頑張ってください。
ここでもしエラーが出れば、その内容をよく読んでください。だいたいこういう場合のエラーはライブラリが足りていない場合に起こります。適宜、
最後に結果が一覧になって出てきます。ここで自分の使いたい機能がyesになっているかを確認して下さい。もしすべてOKならば、
何度も./configureやmakeをしていると、まれにバグるのかいくらやってもNo such file or directuryなどの警告が出ることが有ります。ライブラリのインストールでは解決せず、他に心当りがない場合は一度.tar.bz2の展開からやり直してみるといいと思います。
Netatalk3より、設定ファイルは/usr/local/etc/afp.confだけになりました。sambaのsmb.confと同じようなもので、非常に管理しやすいです。一応下に自分のを貼っておきますが、よく理解しないまま使っていることが多く、コピペは推奨しません。「
TimeMachineからうまくバックアップが開始されると、おそらく途方もなく時間がかかります。僕の環境で130.48GBぶんのバックアップデータがありました。次回以降は差分のみバックアップを取られるのでそれほど時間はかかりませんが初回だけはとにかく遅いです。一晩かかります。
本当はSambaとNetatalkで同じディレクトリを指定するのは良くないのですが、それほど頻繁にデータを書き換えるわけではないので別にいいかなぁと()なにか不具合が生じればまた報告します。
Tweet
さすがに3回めにもなるとだいぶ慣れたもので、公開鍵認証でSSH通すまでに1時間強しかかかりませんでした。とりあえずパッケージのアップデート等を済ませ、とりあえずSDカード上でシステムを再構築していきました。
まずはsamba
sudo apt-get install sambaこれだけで入ってくれるので非常にありがたいです。
Sambaにはwebブラウザから設定を変更できるSWATというものがあります。今回の設定はこれで行いたいと思います。
sudo apt-get install swatあとはLAN内にある他のデバイスからhttp://[ホスト名 又は IPアドレス]:901と打ち込むだけです。するとユーザ名とパスワードを尋ねられるのでログインします。
が、
ここでpiユーザでログインするといくら頑張ってもWindowsからアクセスできなくなります(正確に言うとrootしか入れなくなる)。
RasPiには初期ではrootにパスワードが設定されておらず使えません。そこで、
sudo psswd rootを使ってrootユーザにパスワードを設定、それでswatにログインします。
その後パスワードタブからpiユーザを新規ユーザとして追加すると、piでログインできるようになります。細かいディレクトリとかパラメータの設定は適当にググって出してください。
これでとりあえずSambaは終了です。
次は鬼門のNetatalkです。大量のライブラリをインストールし、自分でソースからビルドしなければならない厄介なヤツです。
まず必要なライブラリをインストールしていきます。
sudo apt-get -y install libssl-dev libgcrypt11-dev libpam0g-dev libwrap0-dev libdb-dev libavahi-client-dev libacl1-dev libldap2-dev libevent-devまた、RasPiに初期から入っていないavahi-daemonを突っ込みます。こいつがないとMac上からタイムマシンサーバを見つけることができなくて苦労します。
sudo apt-get install avahi-daemonここまではすんなり簡単に行けます。次からが少々厄介です。
Berkeley DBをインストールします。パッケージも有りますが古いため今回は自分でソースからビルドします。
cd /usr/local/srcおそらくこれでうまくいけます。うまくいけば/usr/local/db.6.1.19にインストールされます。
sudo wget http://download.oracle.com/berkeley-db/db-6.1.19.tar.gz
sudo tar xvzf db-6.1.19.tar.gz
cd db-6.1.19/build_unix
../dist/configure
sudo make
sudo make install
次にNetatalkをインストールしていきます。ここでは本当に最小限のことしかしていないので、例えば共有するディレクトリをSpotlightで検索したいとか、そういったことはもう少し色々イジる必要があります。頑張ってください。
cd /usr/local/src
sudo wget http://prdownloads.sourceforge.net/netatalk/netatalk-3.1.7.tar.bz2
sudo tar jxvf netatalk-3.1.7.tar.bz2
cd netatalk-3.1.7
sudo ./configure --with-init-style=debian-sysv --without-libevent --without-tdb --with-pam-confdir=/etc/pam.d --with-dbus-sysconf-dir=/etc/dbus-1/system.d --with-bdb=/usr/local/db.6.1.19
ここでもしエラーが出れば、その内容をよく読んでください。だいたいこういう場合のエラーはライブラリが足りていない場合に起こります。適宜、
sudo aptitude search [検索したいフレーズ]などを用いて調べてみてください。-devのついたパッケージなどをインストールすると解決することが有ります。
最後に結果が一覧になって出てきます。ここで自分の使いたい機能がyesになっているかを確認して下さい。もしすべてOKならば、
sudo makeとし、インストールしてください。
sudo make install
何度も./configureやmakeをしていると、まれにバグるのかいくらやってもNo such file or directuryなどの警告が出ることが有ります。ライブラリのインストールでは解決せず、他に心当りがない場合は一度.tar.bz2の展開からやり直してみるといいと思います。
Netatalk3より、設定ファイルは/usr/local/etc/afp.confだけになりました。sambaのsmb.confと同じようなもので、非常に管理しやすいです。一応下に自分のを貼っておきますが、よく理解しないまま使っていることが多く、コピペは推奨しません。「
;編集し終わったら
;Netatalk 3.x configuration file
;
[Global]
mac charset = MAC_JAPANESE
uam list = uams_cleartxt.so uams_dhx.so uams_dhz2.so uams_guest.so
log file = /var/log/netatalk.log
vol preset = my default values
[my defalt values]
file perm = 0660
directory perm = 0770
[Homes]
basedir regex = /var
[Time Machine]
path = /timemachine
time machine = yes
[NAS]
path = /var/nas
veto files = /Thumbs.db/desktop.ini/
delete veto files = yes
sudo service netatalk restartとして再起動させるとMacからアクセスできると思います。
TimeMachineからうまくバックアップが開始されると、おそらく途方もなく時間がかかります。僕の環境で130.48GBぶんのバックアップデータがありました。次回以降は差分のみバックアップを取られるのでそれほど時間はかかりませんが初回だけはとにかく遅いです。一晩かかります。
本当はSambaとNetatalkで同じディレクトリを指定するのは良くないのですが、それほど頻繁にデータを書き換えるわけではないので別にいいかなぁと()なにか不具合が生じればまた報告します。
カテゴリー:RaspberryPi
Tweet
HDDにシステム移行
2015.04.19 Sun
Raspberry Piをいじり始めてしばらくになりますが、長期間運用していると気になるのはやはりSDの耐久性です。
容量も少ないため、今のままではファイルサーバとして不十分です。
今後、以下の様にしていきたいと思っています
・SambaとNetatalkによるMacおよびWin用のファイルサーバにする
・NetatalkによってTime Machineを有効化し、MacBook Proのバックアップサーバにする
・miniDLNAを使ってサーバ内のメディアファイルをiPhoneなどのポータブルデバイスにストリーミング可能にする
・Twitter用のbotの運用
・vimを使い開発環境の構築
それに伴い、やはり容量の拡張は重要です。そこで、LaCie minimusの2TBモデルを購入しました。
これをパーティション分割し、
・システム
・Time Machine
・ファイル共有用
といった感じにしていきたいと思います。
パーティション分割はfdiskコマンドを使いCUIで行ってもいいのですが、そんなことしなくてもGPartedというグラフィカルで使いやすいソフトウェアがあるのでそれを使います。
Ubuntuを適当なUSBメモリを使いLIVE USBにし、適当なマシンで起動します。今はLIVE USBを作るのも簡単なソフトウェアがあるので簡単にできます。
この2つのページを参考にして今回は作業を進めました。
Raspberry PiファイルシステムHDD化 その1/3 (HDD接続~データ移行)
Raspberry Piの起動ディスクをポータブルHDDにした
1つ目の方の参考ページはパーティション分割をCUIで行っています。
正直すでに参考ページの内容が充実していて僕が焼き増しする必要はないので、躓いたところだけ上げていきます。
まず、RasPiの電源拡張です。よく考えなくても今回購入したLaCie minimusはAC電源から電源供給されるので、この設定はしなくてよいです。また、RasPiに電源供給するアダプタも低出力のものにしておくと、ポータブルHDD などがスピンアップできない場合があるようです。
実際にマウント、移行する段階にあたり、ddコマンドでコピーしチェックをかけたのですが一回目はddコマンドが正常に動作しなかったのかすさまじい量のエラーが出ました。すさまじい量のエラーで、いつまでたってもチェックが終わりませんでした。
もしエラーの数が100を超えるようなら途中で遮り、パーティション内を掃除してddコマンドを再実行したほうが良いと思います。
e2fsckコマンドには-pという自動で判別し修復するオプションがありますが、これをつけるとエラーが出てファイルチェックが始まりませんでした。どうせエラーが出ても修復の可否を判断できる能力なんてないので、思い切って-y(全てyes)というオプションを付加して実行しました。正常にddが動作していれば、そう時間はかからずにファイルチェック及び修復が完了します。
今回のシステム移行はあくまでシステムファイルのみをHDDに移行するため、bootファイルはMicroSDカード上にあります。つまりHDDにシステムを移行したからといってMicroSDを抜いていいわけではないので、入れっぱなしにしておいてください。
どうもRasPiはbootファイルを必ずMicroSDから読むようです。うまくHDDに移行できず起動に失敗した場合でも、cmdline.txtを書き換えることで元のMicroSDに残っているシステムを起動することができるようになっています(そういう目的ではないでしょうが)。
耐久性的には多少マシになっているはずですが過去の経験上HDDなんて急にぶっ壊れるのはわかっているので、一週間に一回程度SD上にHDD側のシステムファイルのバックアップを取っていこうと思っています。((まだ思っているだけなので実装していません))
bootファイルもMicroSDから抽出可能なので、心配症な人はMicroSDまるごと別のMicroSDにバックアップしてしまうことをおすすめします。僕はお金がなくてSD買えないので諦めました。
兎にも角にも、HDDにシステムの移行が完了しました。起動時が多少安定したように思いますね。スピンアップ音は多少聞こえますが、稼働中の回転音などは生活雑音でほぼ聞こえないので回転を止めたりなんていうことはしないでおこうと思います。
Samba、Netatalk、及びminiDLNAについてはまた今度。SambaとminiDLNAは簡単なのですが、Netatalkがどうにも厄介で…
Tweet
容量も少ないため、今のままではファイルサーバとして不十分です。
今後、以下の様にしていきたいと思っています
・SambaとNetatalkによるMacおよびWin用のファイルサーバにする
・NetatalkによってTime Machineを有効化し、MacBook Proのバックアップサーバにする
・miniDLNAを使ってサーバ内のメディアファイルをiPhoneなどのポータブルデバイスにストリーミング可能にする
・Twitter用のbotの運用
・vimを使い開発環境の構築
それに伴い、やはり容量の拡張は重要です。そこで、LaCie minimusの2TBモデルを購入しました。
これをパーティション分割し、
・システム
・Time Machine
・ファイル共有用
といった感じにしていきたいと思います。
パーティション分割はfdiskコマンドを使いCUIで行ってもいいのですが、そんなことしなくてもGPartedというグラフィカルで使いやすいソフトウェアがあるのでそれを使います。
Ubuntuを適当なUSBメモリを使いLIVE USBにし、適当なマシンで起動します。今はLIVE USBを作るのも簡単なソフトウェアがあるので簡単にできます。
この2つのページを参考にして今回は作業を進めました。
Raspberry PiファイルシステムHDD化 その1/3 (HDD接続~データ移行)
Raspberry Piの起動ディスクをポータブルHDDにした
1つ目の方の参考ページはパーティション分割をCUIで行っています。
正直すでに参考ページの内容が充実していて僕が焼き増しする必要はないので、躓いたところだけ上げていきます。
まず、RasPiの電源拡張です。よく考えなくても今回購入したLaCie minimusはAC電源から電源供給されるので、この設定はしなくてよいです。また、RasPiに電源供給するアダプタも低出力のものにしておくと、ポータブルHDD などがスピンアップできない場合があるようです。
実際にマウント、移行する段階にあたり、ddコマンドでコピーしチェックをかけたのですが一回目はddコマンドが正常に動作しなかったのかすさまじい量のエラーが出ました。すさまじい量のエラーで、いつまでたってもチェックが終わりませんでした。
もしエラーの数が100を超えるようなら途中で遮り、パーティション内を掃除してddコマンドを再実行したほうが良いと思います。
e2fsckコマンドには-pという自動で判別し修復するオプションがありますが、これをつけるとエラーが出てファイルチェックが始まりませんでした。どうせエラーが出ても修復の可否を判断できる能力なんてないので、思い切って-y(全てyes)というオプションを付加して実行しました。正常にddが動作していれば、そう時間はかからずにファイルチェック及び修復が完了します。
今回のシステム移行はあくまでシステムファイルのみをHDDに移行するため、bootファイルはMicroSDカード上にあります。つまりHDDにシステムを移行したからといってMicroSDを抜いていいわけではないので、入れっぱなしにしておいてください。
どうもRasPiはbootファイルを必ずMicroSDから読むようです。うまくHDDに移行できず起動に失敗した場合でも、cmdline.txtを書き換えることで元のMicroSDに残っているシステムを起動することができるようになっています(そういう目的ではないでしょうが)。
耐久性的には多少マシになっているはずですが過去の経験上HDDなんて急にぶっ壊れるのはわかっているので、一週間に一回程度SD上にHDD側のシステムファイルのバックアップを取っていこうと思っています。((まだ思っているだけなので実装していません))
bootファイルもMicroSDから抽出可能なので、心配症な人はMicroSDまるごと別のMicroSDにバックアップしてしまうことをおすすめします。僕はお金がなくてSD買えないので諦めました。
兎にも角にも、HDDにシステムの移行が完了しました。起動時が多少安定したように思いますね。スピンアップ音は多少聞こえますが、稼働中の回転音などは生活雑音でほぼ聞こえないので回転を止めたりなんていうことはしないでおこうと思います。
Samba、Netatalk、及びminiDLNAについてはまた今度。SambaとminiDLNAは簡単なのですが、Netatalkがどうにも厄介で…
カテゴリー:RaspberryPi
Tweet
aliasの話
2015.03.17 Tue
今日は非常に暖かいです。20℃超えているらしいですね?
これをしたのはもうずいぶんと前なのですが、暖かくなってきたので思い出しました。
Raspberry Piの温度の話です。
おそらく何かしらコマンドを打てばその数値を見れるだろうとは思っていたので、軽くググッてみました。すぐ出てきました。
しかし、いちいちsudo /opt/vc/bin/vcgencmd measure_tempと打ち込むのは非常に面倒です。そこでaliasというものを使います。ショートカットのようなものです。
ここでもう僕としてはルンルンなわけです。
しかししばらく後、いろいろいじっていた時にふと温度が気になりtempと打ち込んでみたのですが、そんな実行コマンドはないと怒られました。
どうもaliasの情報はそのままでは再起動した際に消去されてしまうようなのです。
そこで.bashrcという隠し設定ファイルを編集します。
これで以後同様にtemp と打ちこむだけでCPU温度が得られるようになります。
また、vi=vimなどもaliasで仕込んでおくと良いかもしれません。
Tweet
これをしたのはもうずいぶんと前なのですが、暖かくなってきたので思い出しました。
Raspberry Piの温度の話です。
おそらく何かしらコマンドを打てばその数値を見れるだろうとは思っていたので、軽くググッてみました。すぐ出てきました。
sudo /opt/vc/bin/vcgencmd measure_tempこうすると
temp=39.1と言った感じで表示されます。
しかし、いちいちsudo /opt/vc/bin/vcgencmd measure_tempと打ち込むのは非常に面倒です。そこでaliasというものを使います。ショートカットのようなものです。
alias temp="sudo /opt/vc/bin/vcgencmd measure_temp"ここでのtempはなんでも構いません。とりあえず、そこで指定したコマンドが今後sudo /opt/vc/bin/vcgencmd measure_tempを指すようになるのです。
ここでもう僕としてはルンルンなわけです。
temp僕「〜〜〜〜♪」
temp=38.9
しかししばらく後、いろいろいじっていた時にふと温度が気になりtempと打ち込んでみたのですが、そんな実行コマンドはないと怒られました。
どうもaliasの情報はそのままでは再起動した際に消去されてしまうようなのです。
そこで.bashrcという隠し設定ファイルを編集します。
sudo vim ~/.bashrcその末尾に
alias temp="sudo /opt/vc/bin/vcgencmd measure_temp"と追記し、
source ~/.bashrcsourceコマンドで有効にします。
これで以後同様にtemp と打ちこむだけでCPU温度が得られるようになります。
また、vi=vimなどもaliasで仕込んでおくと良いかもしれません。
カテゴリー:RaspberryPi
Tweet
初期設定 セキュリティ強化編
2015.03.11 Wed
つい先日、京都大学や東京大学の合格発表がありましたね。僕の知り合いの浪人生たちも結構な人数が受かってくれたので良かったです。落ちた人は後期頑張ってください………。
これもラズパイが来た初日に済ませてしまったのですが、もう少しセキュリティ面での教科を施します。この前の記事ではユーザーのパスワードを入力していましたが、もう少し強固なセキュリティにしてみようと思います。
SSHを公開鍵認証による接続に変えます。やはりパスワードでは総当りで解かれてしまう可能性がありますしね。
WinとMacでまたそれぞれ手順が異なります(めんどくさい
---Windows(PuTTY)---
PuTTYgenを起動します。スタート画面からすべてのプログラムを見ると、PuTTYの本体と同じツリーにいるはずです。スタート画面に登録していない場合は、PuTTYをインストールしたディレクトリの中にいると思います(たぶん

何も考えずGenerateします。
ウィンドウ上でマウスカーソルをぐるぐるするとプログレスバーが進みます。なんかマウスの動きからキーを生成するとか聞いたような聞かなかったような。

key passphraseとconfirm passphraseに覚えやすいパスワードを入れます。((ログイン時に使います。オプションなのでなくても良い))
ここでsave public keyは押さずに上部にあるダイアログ内の文字をすべてコピーします。
この前と同じようにユーザー名とパスワードでRaspberryPiにSSHでログインします。
おそらく初期状態ならば.sshというフォルダが生成されていないので、
権限を変更するために
PuTTYgenに戻り、save privete keyをおします。適当な場所に保存しておきます。
PuTTYの左側ツリーの中からConnection>SSH>Authを探し出します。Authの中のPrivate key file for authenticationのところにあるBrowseをおし、先ほど生成した秘密鍵を指定します。((RaspberryPiようにセッションを保存しておくと良いです
あとは通常通りSSHし、ユーザ名を入れると鍵の認証が行われ、鍵を生成したときに設定したパスワードを入力するとログインが可能になります。
---Mac---
ターミナルで
id_rsa.pubの中身をエディターなりなんなりでコピーし、SSHでRaspberryPiに接続。Winの時と同様にauthorized_keysファイルに先ほどコピーした中身をペーストします。
Macに戻り、MacのSSHのプロファイルを設定します。
すると
更にセキュリティを高めるため、Raspberry Pi側の設定も変更していきます。
今回することは以下の項目
・root権限でのsshログインを禁止
・SSH用に解放するポートの変更
・パスワードによるSSH接続の禁止
・(もし公開鍵認証がうまく行かなかった場合は)公開鍵認証の許可
を行います。最後の項目はすでにYesになっている場合があるので、各自で判断してください。
保存したら
また、使用するポートの変更に伴い、PuTTYやMacのSSHの設定も変更しないと接続できません。
とりあえずこれでセキュリティはしっかりしたはずです。
次はSamba及びNetatalkを導入し、MacとWinから閲覧及びアップロード可能なファイルサーバにしてみようと思います。
Tweet
これもラズパイが来た初日に済ませてしまったのですが、もう少しセキュリティ面での教科を施します。この前の記事ではユーザーのパスワードを入力していましたが、もう少し強固なセキュリティにしてみようと思います。
SSHを公開鍵認証による接続に変えます。やはりパスワードでは総当りで解かれてしまう可能性がありますしね。
WinとMacでまたそれぞれ手順が異なります(めんどくさい
---Windows(PuTTY)---
PuTTYgenを起動します。スタート画面からすべてのプログラムを見ると、PuTTYの本体と同じツリーにいるはずです。スタート画面に登録していない場合は、PuTTYをインストールしたディレクトリの中にいると思います(たぶん

何も考えずGenerateします。
ウィンドウ上でマウスカーソルをぐるぐるするとプログレスバーが進みます。なんかマウスの動きからキーを生成するとか聞いたような聞かなかったような。

key passphraseとconfirm passphraseに覚えやすいパスワードを入れます。((ログイン時に使います。オプションなのでなくても良い))
ここでsave public keyは押さずに上部にあるダイアログ内の文字をすべてコピーします。
この前と同じようにユーザー名とパスワードでRaspberryPiにSSHでログインします。
おそらく初期状態ならば.sshというフォルダが生成されていないので、
mkdir .sshとします
権限を変更するために
chmod 700 .sshとし、このディレクトリ内に公開鍵を置きます。
vim .ssh/authorized_keys先ほどコピーしたものをペーストし保存します。
chmod 600 .ssh/authorized_keysこれでとりあえずRaspberryPiのほうは準備完了です。
PuTTYgenに戻り、save privete keyをおします。適当な場所に保存しておきます。
PuTTYの左側ツリーの中からConnection>SSH>Authを探し出します。Authの中のPrivate key file for authenticationのところにあるBrowseをおし、先ほど生成した秘密鍵を指定します。((RaspberryPiようにセッションを保存しておくと良いです
あとは通常通りSSHし、ユーザ名を入れると鍵の認証が行われ、鍵を生成したときに設定したパスワードを入力するとログインが可能になります。
---Mac---
ターミナルで
mkdir .ssh #ディレクトリが無ければ鍵が生成されているかどうかを確認しましょう。
chmod 700 .ssh
ssh-keygen -t rsa #パスワードを設定するかどうかは自由
#パスワードを設定しない場合はEnter押しまくってたら大丈夫
cd .sshとして
ls -l
-rw------- 1 xxx xxxx 1679 5 5 23:31 id_rsaこのように表示されていればOKです。
-rw-r--r-- 1 xxx xxxx 420 5 5 23:31 id_rsa.pub
id_rsa.pubの中身をエディターなりなんなりでコピーし、SSHでRaspberryPiに接続。Winの時と同様にauthorized_keysファイルに先ほどコピーした中身をペーストします。
Macに戻り、MacのSSHのプロファイルを設定します。
vim ~/.ssh/configとし、SSHの設定を開きます。
Host RaspberryPi #適当に自分でホスト名を決める適宜変更して保存します。
HostName 192.168.x.xx #RaspberryPiのIPアドレス
Port 22 #SSH用に開けてあるポート番号、デフォルトは22
User Pi
IdentityFile ~/.ssh/id_rsa #秘密鍵の場所を指定
すると
ssh 設定したホスト名とするだけで簡単に接続できるようになります。パスワードも一度入力すればキーチェーンに保存され、それ以降の入力が不要になります。
更にセキュリティを高めるため、Raspberry Pi側の設定も変更していきます。
cd /etc/sshとし、sshd_configを編集していきます。
#バックアップを取る場合はsudo cp sshd_config sshd_config.org
sudo vim sshd_config
今回することは以下の項目
・root権限でのsshログインを禁止
・SSH用に解放するポートの変更
・パスワードによるSSH接続の禁止
・(もし公開鍵認証がうまく行かなかった場合は)公開鍵認証の許可
を行います。最後の項目はすでにYesになっている場合があるので、各自で判断してください。
#PermitRootLogin yesこれらの項目を探しだして変更を加えてください。
PermitRootLogin no
#Port 22
Port 50022 #適当に
#PasswordAuthentication yes
PasswordAuthentication no
#RSAAuthentication yes
#PubkeyAuthentication yes
保存したら
sudo /etc/init.d/ssh restartまたは
sudo shutdown -r nowとし、再起動をかけて再びSSH接続してみましょう。ちゃんと接続できれば完了です。
また、使用するポートの変更に伴い、PuTTYやMacのSSHの設定も変更しないと接続できません。
とりあえずこれでセキュリティはしっかりしたはずです。
次はSamba及びNetatalkを導入し、MacとWinから閲覧及びアップロード可能なファイルサーバにしてみようと思います。
カテゴリー:RaspberryPi
Tweet
初期設定メモ SSH編
2015.03.05 Thu
前回は初期設定を済ませました。この状態ではまだ、キーボードやディスプレイなどが繋ぎっぱなしになっており、非常に煩雑です。
そこで外部端末(デスクトップやノートパソコン)からリモートでいじれるように設定していきます。
raspberry piで
HWaddr(物理アドレス、MACアドレス)とinet addr(IPアドレス)、Bcast(ブロードキャスト)、Mask(サブネットマスク)をメモしておけば十分でしょう。
ここからはWindows/Macで操作していきます。
Windowsの場合は標準ではSSHクライアントがないので適当にインストールします。PuTTYかTera Term辺りが良いでしょう。僕はPuTTYを使っているので、そちらを前提に話を進めていきます。
Macは標準でsshできるので気にしなくて大丈夫です。
---Win---
PuTTYをインストールし起動すると設定画面が出てくる。
Host Nameというところに
piユーザーのパスワードを要求されるので入力します。
これで接続は完了です。試しに
---Mac---
こちらの場合はより簡単です。ターミナルを開き、
またpiユーザーのパスワードを要求されるので入力し、ログインすれば完了です。
Win、Macどちらの場合でも終了する場合は
しかしIPアドレスは通常の場合ルータが自動で割り振るものであるため、変化することがあります。つまり、先ほどメモしたものとは違うIPアドレスになってしまうのです。
そのたびにいちいちRaspberryPiにキーボードとディスプレイをつないで確認するのは馬鹿らしいので、IPアドレスを固定します。
まずルータの設定を確認します。
おそらく多くの家庭用ルータはパソコンのブラウザから設定画面が開けるようになっていると思いますので、それを開き、DHCPに関する設定項目を探します。DHCPの自動割り当て設定を探し出し、その範囲を確認しておきます。
もしルータに固定割り当ての設定があれば、Raspberry Piの物理アドレスと割り当てたいIPアドレスを入力することでIPアドレスの固定ができます。
次にsshでRaspberry Piに接続し、設定を変更していきます。
ネットワークに関する設定は
標準ではviというエディターが入っていますが、いまいち使いづらいのでvimを入れます。
gatewayより下は無線LANに関する設定なので今回はいじりません。
pingを飛ばしても良いです。
Tweet
そこで外部端末(デスクトップやノートパソコン)からリモートでいじれるように設定していきます。
raspberry piで
ifconfigを実行し、結果をメモします。
HWaddr(物理アドレス、MACアドレス)とinet addr(IPアドレス)、Bcast(ブロードキャスト)、Mask(サブネットマスク)をメモしておけば十分でしょう。
ここからはWindows/Macで操作していきます。
Windowsの場合は標準ではSSHクライアントがないので適当にインストールします。PuTTYかTera Term辺りが良いでしょう。僕はPuTTYを使っているので、そちらを前提に話を進めていきます。
Macは標準でsshできるので気にしなくて大丈夫です。
---Win---
PuTTYをインストールし起動すると設定画面が出てくる。
Host Nameというところに
pi@[先ほどメモしたIPアドレス]を入力しOpenを押すと、何やら警告が出ます。これは「信頼して大丈夫?」みたいなダイアログなので適当にOKします。一度OKするとその後は表示されません。
piユーザーのパスワードを要求されるので入力します。
これで接続は完了です。試しに
sudo apt-get updateとかしてみましょう
sudo apt-get upgrade
---Mac---
こちらの場合はより簡単です。ターミナルを開き、
ssh pi@[先ほどメモしたIPアドレス]とするだけで接続できます。
またpiユーザーのパスワードを要求されるので入力し、ログインすれば完了です。
Win、Macどちらの場合でも終了する場合は
logoutまたは
exitで終了できます。
しかしIPアドレスは通常の場合ルータが自動で割り振るものであるため、変化することがあります。つまり、先ほどメモしたものとは違うIPアドレスになってしまうのです。
そのたびにいちいちRaspberryPiにキーボードとディスプレイをつないで確認するのは馬鹿らしいので、IPアドレスを固定します。
まずルータの設定を確認します。
おそらく多くの家庭用ルータはパソコンのブラウザから設定画面が開けるようになっていると思いますので、それを開き、DHCPに関する設定項目を探します。DHCPの自動割り当て設定を探し出し、その範囲を確認しておきます。
もしルータに固定割り当ての設定があれば、Raspberry Piの物理アドレスと割り当てたいIPアドレスを入力することでIPアドレスの固定ができます。
次にsshでRaspberry Piに接続し、設定を変更していきます。
ネットワークに関する設定は
/etc/network/interfacesに書かれているので、これをエディターで編集します。
標準ではviというエディターが入っていますが、いまいち使いづらいのでvimを入れます。
sudo apt-get install vimこれでvimが使えるようになります。
sudo vim /etc/network/interfacessudoをつけておかないとパーミッションエラーが出ます。初期状態では
auto loとなっているはずです。
iface lo inet loopback
iface eth0 inet dhcp
allow-hotplugin wlan0
iface wlan0 net manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
gatewayより下は無線LANに関する設定なので今回はいじりません。
iface lo inet loopbackこんなふうに書き換えます。保存して終了します。
#iface eth0 inet dhcp(変更部分をコメントアウト)
iface eth0 inet static
#address xxx.xxx.xx.xを適当に変更
address xxx.xxx.xx.yy
netmask xxx.xxx.xxx.x
gateway xxx.xxx.xx.x
sudo shutdown -r now再起動させ、もう一度起動したあと設定したIPアドレスで接続できるか確認してください。
pingを飛ばしても良いです。
カテゴリー:RaspberryPi
Tweet