外からアクセスできるファイルサーバを用意して使っていましたが、nextcloudというプライベートクラウドがストレージクラウドだけではなく、グループウェアとしても使えて便利そうだったので少し触ってみました。
インストール方法
ちょっと調べてみたところ、nextcloudのインストール方法は次のようなものがあるっぽいです。
- ALL-IN-ONE Docker IMAGE(AIO Docker)
- DockerImageを利用する
→手順は簡単だったがドメイン登録しないとダメっぽい。ドメイン持ってない。
- DockerImageを利用する
- ALL-IN-ONE VM IMAGE(AOI VM)
- VMImageを使用する
→VM環境ない
- VMImageを使用する
- COMMUNITY PROJECTS
- 自前でLAMPを用意し、そこにnextcloudを載せる
→ぶっちゃけめんどいのでsnapでやった後でいい - snapパッケージを利用する。
→比較的簡単 - ラズパイ用イメージを利用する
→もってない。
- 自前でLAMPを用意し、そこにnextcloudを載せる
私の場合は
- ソブリンクラウドのように実体は自宅に置きたい
- とりあえず評価したいのでより簡単な手順で試してみたい
- AlmaLinux9.xでたてたい
という事で、snapパッケージを利用した手順で構築してみました。
また、AlmaLinux9.xで構築したナレッジも見かけなかったのでメモ程度ですが手順も作成してみました。
構成
構成としては
- ホームゲートウェイPR500 LAN側192.168.1.1/24
- AlmaLinux9.x(物理)に192.168.1.2/24
- PR500のWAN側ポート12345をNAPTでLAN側192.168.1.2:443にフォワード
手順
1. AlmaLinux9.3のインストール
- 最小構成でインストール。
- sshで作業したいので、ついでにwheel権限与えたユーザを1つだけ作りました。
- 以降のコマンドではsudoがついてたりついてなかったりしますが、お手数ですが適宜読み替えてくださいませ。
2. snapインストール
#EPELを入れて最新化する
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
sudo dnf upgrade
sudo dnf install snapd
sudo systemctl enable --now snapd.socket
3. snapでnextcloudのインストール
インストール
sudo snap install nextcloud
※少し時間がかかるかもしれない。あるいは2回やらないとだめかもしれない?
確認
snap changes nextcloud
snap connections nextcloud
実行例
snap changes nextcloud
ID Status Spawn Ready Summary
2 Done today at 23:02 JST today at 23:04 JST Install "nextcloud" snap
実行例
snap connections nextcloud
Interface Plug Slot Notes
network nextcloud:network :network -
network-bind nextcloud:network-bind :network-bind -
network-observe nextcloud:network-observe - -
removable-media nextcloud:removable-media - -
4. 管理アカウント設定
sudo nextcloud.manual-install NAME PASSWORD
# NAME・・・ユーザ名
# PASSWORD・・・パスワード
5. ドメイン設定
trusted_domainsの表示
sudo nextcloud.occ config:system:get trusted_domains
localhost
ドメインの追加
sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com
# LAN側IPでアクセスする場合は↓のようにvalueに自分自身のIPを設定する
sudo nextcloud.occ config:system:set trusted_domains 1 --value=192.168.1.2
# NAPTで外に出す場合は、WAN側のアドレスも登録する。
sudo nextcloud.occ config:system:set trusted_domains 2 --value=AAA.BBB.CCC.DDD
再度trusted_domainsの表示
sudo nextcloud.occ config:system:get trusted_domains
localhost
192.168.1.23 #←LAN側IP
AAA.BBB.CCC.DDD #←WAN側IP(※ルータの外側のIP)
6. SSL(オレオレ証明書)の設定
sudo nextcloud.enable-https self-signed
Generating key and self-signed certificate... done
Restarting apache... done
7. Firewall設定
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
8. インターフェイスへのログイン
https://192.168.1.2(LANIP)
https://AAA.BBB.CCC.DDD:Port(NAPTでポートフォワードしているWANIPとポート)
9. バージョン確認
AlmaLinuxの確認
cat /etc/almalinux-release
AlmaLinux release 9.3 (Shamrock Pampas Cat)
nextcloudの確認
snap info nextcloud
中略
installed: 27.1.8snap1 (41512) 322MB -
以上で終了です。とりあえず動けばいい程度でやってみましたが、いざやってみると簡単で良いですね。