かならぼ

試した技術のまとめ及びログ

FreeNasのOSメディアが壊れたので再インストールしたよ

やはり、バッファローの8GBのメモリでは荷が重かったらしい・・・

(詳細はここから→FreeNAS-11.0をインストールしてNASを構築したよ - かならぼ

 

やっぱりHDDにOSインストールすることにしました。
設定ファイルがダウンロードできていればめっちゃ簡単。

使っていなかったHDDにインストールしたので、遠くない未来にまた再インストールするかもしれない・・・。のでメモしておきます。

設定のダウンロード

システム→基本設定の中に、

「設定のダウンロード」というボタンがあるので、これを押すと設定がダウンロードできます。

f:id:kanalabo:20180831222038p:plain

 

ダウンロードファイルは、
(ホスト名)-FreeNAS-(バージョン)-(日付).db
という名前になっていました。

OS壊れてしまったら、この方法はできないんですよね。
今回戯れに取っていた設定ファイルがあって助かりました。

設定終わったらダウンロードは必須にしておいた方がいいかも。

設定のアップロード

OSのインストールを行い、OSにログインし設定直前の状態にします。

このページ(FreeNAS-11.0をインストールしてNASを構築したよ)で言うと

FreeNasの設定の2.ログインまでした状態ですね。

ここからダウンロードした時と同様、システム→基本設定画面に遷移し

「設定のアップロード」ボタンから、ダウンロードしたファイルを選択します。

アップロードできたら、設定が以前通り入っているはずです。」

 

すごく・・・簡単!!!

 

FreeNAS2台で公開鍵認証して、rsyncで同期スケジュールするのをできるだけブラウザからやってみた

f:id:kanalabo:20170818135948p:plain

前回から少し時間が空きましたが、構築したFreeNAS2台を使って、rsync同期を行いましたので、まとめます。

前回の記事→FreeNAS-11.0をインストールしてNASを構築したよ - かならぼ

 

今回の構築のイメージは下記の通り。

f:id:kanalabo:20171013153846g:plain

SSH接続でパスワードなしの許可をするののセキュリティに関しては、別件として考えるとして、ひとまず横においておきましょう。

 

手順

 

それでは順にみていきます。 

SSHクライアント(サーバA:192.168.1.100)側で鍵を生成

できるだけブラウザから、というのに矛盾している感もありますが、コマンドラインから鍵作成を行います。
鍵作成ソフトは色々あるのですが、インストールする手間を考えてのことです。大丈夫、FreeNASならブラウザからコマンド叩けます。

コマンドは、FreeNAS右側のメニューからシェルを選ぶと表示される画面で入力できます。f:id:kanalabo:20171118002619j:plain

ログイン中のアカウントでの作成になりますので、SSH接続したいアカウントでログインするか、suコマンドでアカウント変更してからコマンドを入力してください。

1.鍵を作成
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/(ユーザ名)/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): 【何も入力せずにenter】
Enter same passphrase again: 【何も入力せずにenter】
Your identification has been saved in /(ユーザ名)/.ssh/id_rsa.
Your public key has been saved in /(ユーザ名)/.ssh/id_rsa.pub.
2.rsa公開鍵を表示
$ cat .ssh/id_rsa.pub
(enter後公開鍵が表示されます。)
例えば、アカウントrootで作成した場合
[ssh-rsa
xxxxxxxxxxxxxxx(ここにランダムの文字)xxxxxxxxxxxxxxxxxxxxxxx root@(ホスト名)
]

表示された公開鍵(上記の[ ]内全て)をコピーしておきます。

公開鍵をSSHクライアント(サーバA:192.168.1.100)からSSHサーバ(サーバB:192.168.1.102)にコピー

1.サーバ側(サーバB:192.168.1.102)に鍵を登録

(右メニュー)ユーザ→ユーザを表示→(ユーザを選択)→(下ボタン)ユーザ修正より公開鍵登録画面を出します。

f:id:kanalabo:20171118004608j:plain

2.SSH公開鍵欄に先ほどコピーした公開鍵をペースト

f:id:kanalabo:20171118005344j:plainコピーできたら、OKボタンを押します。

SSH疎通確認

SSHクライアントとなるサーバ(サーバA:192.168.1.100)から、鍵無しでSSHログインできるかテストします。

SSHサーバ(サーバB:192.168.1.102)のサービスが起動をさせておいてください。

f:id:kanalabo:20171013154307p:plain

$ ssh (ユーザ名)@192.168.1.102

ログインできたら公開鍵認証テスト完了です。

一回目の接続の際は、

Are you sure you want to continue connecting (yes/no)? 

というような確認が出ることがあります。接続していいかどうかの確認なので「Yes」とタイプしてください。

 

rsyncPUSH元(サーバA:192.168.1.100)からrsyncの設定

(FreeNAS公式のドキュメントはこれ→https://doc.freenas.org/9.10/tasks.html#rsync-tasks

 タスク→タブからRsyncTasksを選択して→Add Rsync Tasksボタンを選択

設定を入力していきます。f:id:kanalabo:20171118010446j:plain

 

表示されるオプション
パス 設定側のサーバのどのデータをrsyncするか設定
ユーザ どのユーザで実行するか
リモートホスト rsyncされる側の設定
今回はサーバB:192.168.1.102
Remote SSH Port SSHのポート番号
特に設定してない場合は22
Rsync mode Rsync module か Rsync over SSHを選びます
今回はRsync over SSH
リモートパス rsyncされる側のパス
今回はサーバBのrsyncされる場所
Validate Remote Path チェックしておけばリモートパスがない時に自動で作成します
方向 プッシュかプルかを選べます
今回はプッシュ
Short Description 説明文を入力できます
Minute
Hour
Day
Month
Day of week
タスクにしたい日時を選びます
再帰 サブディレクトリも対象にするか
Times ファイルの日時を保持するか
圧縮 圧縮してrsyncを行うか
アーカイブ -rlptgoDのこと

再帰的、シンボリックリンクシンボリックリンクのコピー、パーミッションの保存、変更時刻の保存、グループの保存、所有者の保存(スーパーユーザーのみ)、デバイスファイル(スーパーユーザーのみ)と特別なファイルの保存)
削除

送信先ディレクトリに存在しない送信先ディレクトリ内のファイルを削除する

Quietモード

リモートサーバからのメッセージを抑制します

Preserve permissions 元のファイルのパーミッションの保持をするか
Preserve extended attributes 拡張属性を保持するか
Delay Updates 一時ファイルを作成し全ての転送が終了した際に書き込みされます
拡張オプション 上記にないrsyncオプションはここに入力できます
有効化 タスクを有効にするかどうか

OKボタンを押すとタスクが登録されます。

即時反映テスト

登録されたタスクを選択した状態だと下にRunNowボタンがありますのでこれを押すと直ちにテストできます。 f:id:kanalabo:20171118021851j:plain

スタートするとスタートされましたと表示されます。

スケジュール設定

テストタスクが表示された後、タスクの詳細画面で有効化設定を行います。

これでスケジュールに沿ってタスクが実行されるはずです。

 

以上です。

やはりFreeNASお手軽ですね。

 

 

 

 

 

 

 

 

 

 

 

 

リンクステーション(LinkStation)のrootをとって、SSHログインをしたよ

リンクステーションを買いました。。
下記のものです

buffalo.jp

rsyncのバックアップ対象にしたかったので、rootをとってsshログインできるようにするのが目的です。

ファームウェアは1.660でした。
ファームをダウンさせないとsshログインできないというような情報もありましたが、ファームダウン不要で成功しましたので、方法をまとめました。

下準備

・LinkStationを設定し、ネットワークからアクセスできるようにしておく
Javaの開発環境を用意しておく
参考:https://www.java.com/ja/download/faq/techinfo.xml

 開発環境はインストールされていなかったので下記サイトから最新のJREをインストールしました。

Java SE Runtime Environment 8 - Downloads

acp_commander.jarをダウンロードして実行する

下記サイトからacp_commander.jarをダウンロードして、実行できるようにしておきます。これを使用して、LinkStationの設定を変更します。

buffalo.nas-central.org downloads

LinkStationの/etc/sshd_configを書き換える

LinkStation 220DW への SSH – smartnova とか

kuhnboy: Gain SSH access to the Buffalo LinkStation 421e を参考に、

Port, Protocol, PermitRootLogin, StrictModes, UsePAM , sftp support の設定を有効化しました。

具体的な実行コマンドは下記の通り。

 

(rootパスワードの設定)

java -jar acp_commander.jar -t -ip $IP -pw $Admin_PW -c "(echo $ROOT_PW ; echo $ROOT_PW) | passwd"

 

(Port, Protocol, PermitRootLogin, StrictModes, UsePAM , sftp support の設定を有効化

java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "chmod 0755 /etc/init.d/sshd.sh"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/#Port 22/Port 22/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/#Protocol 2/Protocol 2/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/#StrictModes yes/StrictModes yes/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/UsePAM yes/UsePAM no/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/\/usr\/lib\/sftp-server/\/usr\/local\/libexec\/sftp-server/g' /etc/sshd_config"
java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "sed -i 's/{SUPPORT_SFTP}\" = \"0/{SUPPORT_SFTP}\" = \"1/g' /etc/init.d/sshd.sh"

 

ssh設定の再起動)

java -jar acp_commander.jar -t $IP -ip $IP -pw $Admin_PW -c "/etc/init.d/sshd.sh restart"

 

以上です。お粗末さまでした。

 

FreeNAS-11.0をインストールしてNASを構築したよ

複数ファイルの共有のため、ファイルサーバが必要になりました。

あまり時間をかけず構築したいのと、GUIインターフェイスなどに魅力を感じ、今回はFreeNASを使用することにしました。

自分は細かいところはすぐに忘れてしまうし、コマンド入力にも慣れていないもので、できるだけGUIを用いて、細かいところまで書いていきたいと思います。

FreeNASのダウンロード

f:id:kanalabo:20170818135948p:plain

FreeNASの最新バージョンは2017年8月現在で11.0。
公式サイト(http://www.freenas.org/)からダウンロードできます。

ダウンロードページ(http://www.freenas.org/download/)にはメールアドレスが必要なように見えますが、ページ下部の「No thank you, send me to the Download page please.」をクリックすればアドレスなしでダウンロードページに移動できます。

インストールメディアの作成

ダウンロードしたファイルは、FreeNAS-11.0-U2.iso。
isoファイルですので、インストールメディアを作成する必要があります。

私はMacの機能を使って、右クリックでCD-Rに焼くことにしました。

f:id:kanalabo:20170808160554p:plain

Windowsだと、下記が参考になるでしょうか。

technet.microsoft.com

FreeNASのインストール

FreeNAS 11のインストールには最低8GB必要です。32GBあれば充分だということです。
(参考:http://doc.freenas.org/11/intro.html#hardware-recommendations

インストールメディアに使用したディスクは他には使えません。大きなメディアを用意しても無駄になるし、スロットも無駄になるので、USBメモリにFreeNASをインストールすることにしました。

ちなみに使ったのは、バッファローの8GBのメモリです。

  1. あらかじめBIOSでインストールメディアをブートする設定にしておき、USBメモリとインストールメディアを挿入した状態でサーバの電源を入れます。
  2. Console Setupの画面が表示されてから「Install/Upgrade」を選択します。

    f:id:kanalabo:20170808233652j:plain
    ※スペースキーでカーソル移動、Enterキーで確定できます。

  3. Choose destination media でディスクを選択します。
    f:id:kanalabo:20170808234925j:plain
    ※選択はスペースキーでできます

  4. 使うドライブは、OS領域のみにしか使えません、OSはハードディスクにインストールした方がいいよ、などと聞かれます。

    f:id:kanalabo:20170810231037j:plain

  5. rootパスワードを設定します。
    f:id:kanalabo:20170810231323j:plain

  6. ブートをBIOSでするか、UEFIでするか聞かれます。f:id:kanalabo:20170810231615j:plain
    ハードはUEFI対応してないので、BIOSモードでインストールしました。

  7. 選択をするとインストールが始まります。
  8. インストールが終了すると、その旨が表示されます。
    f:id:kanalabo:20170810232429j:plain

  9. OKを選択するとはじめの画面に戻ります。f:id:kanalabo:20170808233652j:plain
    3,または4を選択してシャットダウンしつつ、インストールメディアを再度起動するまでの間に抜きます。

  10. Console Setupが終了して初めて起動する時には、初期設定が走ります。
    起動までには少し時間がかかります。
  11. セットアップが完了するとConsole Setupが起動します。
    ここから設定もできますが、ブラウザでも設定ができるようになっているので、設定はブラウザより行うことにします。 f:id:kanalabo:20170816053256j:plain

 FreeNasの設定

  1. コンソール画面が起動するとDHCPで取得されたIPアドレスが表示されるので、このIPでブラウザにアクセスします。
  2. ブラウザにIPを入力すると、ユーザ名・パスワードを求められるのでCosole Setupで入力したパスワードを入力します。f:id:kanalabo:20170810234141p:plain

  3. 初期ログインの際にはWizardが自動表示されます。

    f:id:kanalabo:20170810234610p:plain
    言語:日本語(Japanese)、タイムゾーン:Asia/Tokyoを選択しました。

  4. NASのボリュームの設定をします。

    f:id:kanalabo:20170816055308j:plain

    今回は、外部にバックアップを取り、復旧に時間がかかってもいいことから、RAID0で構築することにしました。
    ボリュームの名前は「vol01」にしました。

  5.  Directory Serviceに所属する場合は設定を入力します。
    f:id:kanalabo:20170817015358p:plain
    Active Directry等構築していないので、空欄のまま「Next」ボタンを押しました。

  6.  共有名及び共有方式を選択します。

    f:id:kanalabo:20170816055642p:plain
    「Share name」に共有名、「Purepose」欄で共有方式や内容を設定します。
    Samba共有で問題ないので「Windows(SMB)」を選択し「add」ボタンを押します。
    Samba共有でゲストログインを許可する場合は「Arrow Guest」にチェックを入れてください。

  7. rootのE-mailの設定や新規ユーザを作成することができます。

    f:id:kanalabo:20170817020401p:plain
    メールの設定は万一の際の連絡になるので設定しました。下部ボタンよりテストメールが送れるので確認します。

  8. ウィザードの設定はこれで終了です。
    ここで設定を反映する場合は「Confirm」ボタンを押します。

    f:id:kanalabo:20170817020948p:plain
    設定を誤っていた場合でも個別に設定変更できます。
    ウィザードに戻ることもできますし、ウィザード設定をやめることもできます。
    この辺りはお好みですね。

ネットワーク設定

ウィザードの設定にはなかった、ネットワーク設定を行いIPアドレスを固定化します。

  1. 上部にあるメニューの「Network」ボタンをクリックしてネットワーク設定を開きます。

    f:id:kanalabo:20170817021659p:plain
    ホスト名、IPv4デフォルトゲートウェイを入力し、「保存」ボタンを押します。
    ネットワーク設定メニューの中の「インターフェース」を選択します。

  2. 「Addインターフェース」ボタンを押し、ウィザードを起動します。
    f:id:kanalabo:20170817022243p:plain
    インターフェース名、IPv4アドレスを入力して保存します。

共有ストレージの設定

  1. メニューから「ストレージ」を選択します。共有ストレージを作成したいボリュームを選択し、下の+マークがついているボタンを押下し「Create Dataset」をクリックしてください。

    f:id:kanalabo:20171013142619p:plain

     

  2. 「Create Dataset」を選択し、ZFS領域を作成します。

    f:id:kanalabo:20170817023409j:plain
    データセット名を入力して「データセットを追加」します。
    atimeはOFFにしておきました。パフォーマンスが低下する恐れがあるためです。詳細は下記をご参照のこと。

    itpro.nikkeibp.co.jp

共有(Samba)の設定

  1. 上メニューから「共有」→タブから「Windows(SMB)共有」をクリックします。

    f:id:kanalabo:20171013143313p:plain

    「AddWindows(SMB) Share」ボタンを押してください。

     

  2. 設定の追加を行います。
    f:id:kanalabo:20170817023631p:plain
    先ほど作成したデータセット領域を「パス」の「参照」から選択します。
    名前を入力し、ゲストアドレスを許可は場合に応じて設定します。

  3. 左メニューから「サービス」「サービスの制御」からSMBサービスの再起動を行います。

    f:id:kanalabo:20170817024346p:plain
    SMBのボタンを「Stop Now」してから「Start Now」ボタンを押します。
    Start on bootにチェックを入れておきます。

設定の確認

該当ファイルが共有されているか、クライアントPCから確認します。

 

以上で、NAS設定は終了です。構築、設定共に本当に簡単ですね。

次は、FreeNASをSSHサーバとしてクライアントから鍵接続をする手順を書きたいと思っています。

書きました→

FreeNAS2台で公開鍵認証して、rsyncで同期スケジュールするのをできるだけブラウザからやってみた - かならぼ

 

FreeNAS11もアップデートの種類によって、画面の日本語化具合がまちまちなので、わかりづらいところがあればご指摘ください。