秋 NAS は俺に喰わせろ!
勤務先で LAN 上の NAS やクラウド・ストレージの構成を見直す動きが出ていて「そういや私が簡易 NAS を導入したのっていつだっけ?」と過去記事を漁ってみたら3年半も前だったよ。
その半年後に田舎に
導入して良かった点は LAN 上の NAS とクラウド・ストレージ・サービスを連携させることで,そこそこ安全で快適な環境を手に入れられたことだろう。 とはいえ RAID 0 すら組んでない簡易設備でこのまま運用を続けるのはもう限界だろうと思い直したわけだ。
で,まぁ,あれこれ迷った挙句に買ったのは Synology DS220j ってやつ。 今回もドスパラさんのお世話になりました。 HDD 2基と3点セットになってるやつをポチった。
本当はポチってから数日あけて来ることを想定してたんだけど,金曜の夜にポチって中1日で(松江みたいな片田舎まで)届くとは思わざりき(笑)
ありがたいことに「NAS 初心者ガイド」という日本語の冊子がついていた。 これのおかげでセットアップ自体は比較的スムーズにできた。 ブラウザで Web Assistant を開いたときに最初はうまく検出できなかったくらい(ブラウザを立ち上げ直したら上手くいった)かな?
RAID (Redundant Arrays of Inexpensive Disks)
RAID は SHR (Synology Hybrid RAID) にした。 RAID 1 とかだと ストレージの容量やメーカーを揃える必要があるが, SHR はその辺は柔軟に運用できるらしい。
QuickConnect は無効にした
最初は Synology アカウントを取得して QuickConnect も使ってたんだが,どうにも気持ち悪いので QuickConnect はいったん無効にした。 Synology アカウントは有効にしてるので,必要になったらまた復活させればいいだろう。
VPN 接続は Tailscale を検討中…
Ubuntu ファイルマネージャから SMB サービスに入れない
Ubuntu 標準のファイルマネージャ(nautilus
)は LAN 上の Windows 共有フォルダや Samba サービスを自動的に検出・表示してくれる。
DS220j も SMB (Server Message Block) が使えるので Windows ネットワークと同じように表示されるんだけど,クリックしても何故か入れないのよね。
なんやねん「無効な引数」て orz
これは現在に至るも改善しない(理由がわからないので)。
ただし mount.cifs
でマウントはできるし /etc/fstab
ファイルへの記述もちゃんと効いたので実害はない。
多分ファイルマネージャ側の問題なんだろうなぁ。
CIFS 経由で NAS に接続する方法は以下の通り。
ちなみに Android の FE File Explorer Pro からは普通に見れた。
Ubuntu から NFS サービスに入れない
Ubuntu に NFS クライアントを導入する。
$ sudo apt install nfs-common
DS220j 側の NFS サービスを有効化して Ubuntu からアクセスしようとしたが上手くいかない。 まぁ,考えてみたら当たり前で Kerberos を使ってアカウントのマッピングでもするのならともかく,家庭内 LAN ごときでそこまでしないし,しないなら見えなくても仕方ない。
というわけで,今回は 権限を「カスタマイズ」して Everyone
権限を追加・設定した。
複数人で使う場合は NFS は使わんほうがいいかもなぁ。
ちなみに /etc/fstab
ファイルを使ってマウントする場合には
sy-nas:/volumeX/homes/username /home/username/nas-home nfs rsize=8192,wsize=8192,timeo=14,intr 0 0
などとすればよい。
Cloud Sync
パッケージ・センターから Cloud Sync をインストールしてクラウド・ストレージと連携できるようにした。
Cloud Sync は Google Drive, Dropbox, Box, Microsoft OneDrive あるいは Azure Storage, Google Cloud Storage, S3 storage といったメジャー・サービスはもちろん,一般的な WebDAV とも連携できるらしい。
さらに Cloud Sync では
てな感じに同期データの暗号化ができる。 具体的には Cloud Sync からアップロードする際に暗号化された状態でアップロードされる。 元々クラウド・ストレージ側に置いてあるファイルは暗号化の対象にならない。 暗号化ファイルは NAS 側では復号された状態で格納されており,クラウド・ストレージ側で暗号化されているか否かに関係なく透過的に扱うことができる。
クラウド・ストレージって便利で使い勝手がいいけど,他人のデータを覗き見る痴漢野郎がいるぢゃん。 Google とか Apple とか。 だから積極的には使わないようにしてたんだけど,これで踏ん切りがついたわ。
物置用のクラウド・ストレージ・サービスとして Google Drive をデータ暗号化した上で利用することにした。 これに伴い Google One の有料プランへアップグレードした。
運用中の各種クラウド・ストレージ・サービスに置いてあるファイルを整理しないとな。
Git Server と SSH
パッケージ・センターで Git Server を見つけたのでインストールしてみたのだが…
どうやら SSH ベースのサーバのようだが
そもそも DS220j は管理者権限を持つアカウントしか SSH を使えないようになっている。 なので Git Server へのアクセス専用にグループとユーザを作成し,専用の共有フォルダを設定する必要がある。
更に言うとユーザ・ホーム・サービスを有効にしておく必要がある。
これがないと公開鍵認証ができないらしい。
まぁ,ぼちぼち進めるか。
【2021-10-30 追記】 Synology SSH に公開鍵認証でログインする
まずはおとなしくパスワード認証で入る。
前節で述べたように Git Server 用に専用のユーザとグループを作ってログイン可能な状態にすること(今回はユーザ:グループ名を git:git
とした1)。
$ ssh git@sy-nas
git@sy-nas's password:
ログイン直後のホーム・ディレクトリはこんな感じ。
$ pwd
/var/services/homes/git
$ ll
drwxrwxrwx+ 2 git users 4096 Oct 30 00:00 .
drwxrwxrwx+ 9 root root 4096 Oct 30 00:00 ..
このままでは拙いので,ホーム・ディレクトリのパーミッションを変更する。
chmod 755 /var/services/homes/git
次にホーム・ディレクトリ直下に .ssh
ディレクトリを作成する。
$ mkdir .ssh
$ ll
drwxr-xr-x 3 git users 4096 Oct 30 00:00 .
drwxrwxrwx+ 9 root root 4096 Oct 30 00:00 ..
drwxr-xr-x 2 git users 4096 Oct 30 00:00 .ssh
この .ssh
ディレクトリ直下に authorized_keys
ファイルを作り SSH 公開鍵を登録する。
ちなみに公開鍵は ECC 鍵が使える。
ECC 鍵を作ってサーバに登録する方法は以下の通り。
また SSH 鍵を GnuPG で作成・管理する方法は以下を参考にどうぞ。
.ssh
ディレクトリおよび .ssh/authorized_keys
ファイルのパーミッションに注意。
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys
これで適当なターミナルを立ち上げて
$ ssh git@sy-nas
でパスワード認証ではなく公開鍵認証が動き出したら成功である2(作業中の SSH セッションは維持しておくこと。しくじってアクセスできなくなったら困るからね)。
【2021-10-30 追記】 試しにリポジトリを作ってみる
Git Server 用に専用の共有フォルダを作る。
今回は gitrepos
という名前で共有フォルダを作った。
前節の git
ユーザで読み書きできるようにしておくこと(他のユーザはアクセスできなくてよい)。
さっそく gitrepos
共有フォルダに入ってみる。
$ ssh git@sy-nas
$ cd /volume1/gitrepos/
$ sudo chown git:git /volume1/gitrepos
$ chmod 755 /volume1/gitrepos
たぶん必須ではないが気持ち悪いので,所有者とパーミッションを変更して git
ユーザ専用にした。
では,適当なベア・リポジトリを作ってみよう。
$ mkdir hello-repos
$ cd hello-repos/
$ git init --bare
Initialized empty Git repository in /volume1/gitrepos/hello-repos/
これで空のベア・リポジトリができた。 リモートから SSH 接続でリポジトリを clone するには
$ git clone ssh://git@sy-nas/volume1/gitrepos/hello-repos
Cloning into 'hello-repos'...
warning: You appear to have cloned an empty repository.
とすればよい。
次は Tailscale か?
これは次の休みにでもやってみることにしよう。 もともと Tailscale は興味があってやってみようとは思っていたのだ。
ブックマーク
- RAIDの構成を「SHR」から「RAID 1」へ変更できますか? | Synology Community
- 知らないと損! Synology社員が教えるNASの裏ワザ【前編】セキュリティーと信頼性を高める | マイナビニュース
- 特別企画:知っておきたい!NAS購入から活用までの疑問あれこれ - デジカメ Watch
- NASを使ったほうがいい人、使わないほうがいい人:Synologyで始めるNAS生活(1/3 ページ) - ITmedia PC USER
- Synology アカウントの取得 - アラコキからの Raspberry Pi 電子工作
- Ubuntu 20.04にNFSマウントをセットアップする方法 | DigitalOcean
- 特別企画:NASに保存した写真データを効率的に管理…「Synology Photos」先行レビュー - デジカメ Watch
参考
- Synology NASキット 2ベイ DS220j クアッドコアCPU 512MBメモリ搭載 ライトユーザー向け 国内正規代理店品 電話サポート対応品 DiskStation
- Synology (Release 2020-03-12)
- Personal Computers
- B0855LMP81 (ASIN), 4537694279369 (EAN), 0846504003440 (EAN), 846504003440 (UPC)
- 評価
ドスパラで HDD 2基と3点セットで購入。家庭内 LAN で使うなら必要十分な性能。各種クラウド・ストレージ・サービスと連携可能。 Tailscale を含む各種 VPN と組み合わせることも可能。
- Western Digital ウエスタンデジタル 内蔵 HDD WD Red Plus NAS RAID (CMR) 3.5インチ WD40EFZX-EC 【国内正規代理店品】
- ウエスタンデジタル(Western Digital) (Release 2021-02-05)
- Personal Computers
- B08V8LNR2H (ASIN), 4988755057738 (EAN)
- 評価
Synology DS220j と併せて購入。
- Voice of Angel
- 太田貴子 (メインアーティスト)
- SOLID RECORDS 2021-10-20 (Release 2021-10-20)
- MP3 ダウンロード
- B09GS5ZCHN (ASIN)
- 評価
「太田貴子」としては31年ぶりのアルバムらしい。仕事中にヘヴィローテーションしてます。