概要
お客様先とファイルを交換したい
nextcloud を試してみる
参考
Example installation on Ubuntu 20.04 LTS
https://docs.nextcloud.com/server/latest/admin_manual/installation/example_ubuntu.html
Ubuntu 20.04にNextcloudをインストールして設定する方法
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-nextcloud-on-ubuntu-20-04-ja
環境
host: Ubuntu Desktop 18.04
guest: Ubuntu 20.04 on lxc
lxd/lxc: 4.23
(snap でインストールした)
lxc container launch
lxc launch ubuntu:20.04 nextcloud
timezone 設定
timedatectl set-timezone Asia/Tokyo
vim-nox 入れてデフォルトエディタにする
apt update && apt -y upgrade apt install -y vim-nox update-alternatives --set editor /usr/bin/vim.nox update-alternatives --display editor
ユーザを作る
lxc shell nextcloud adduser -q --gecos "" ncuser # password `ncSample00!` # sudo 出来るようにする # でもいいが、sudoers file に書き込まれないのが気持ち悪い gpasswd -a ncuser sudo # のでやっぱりこっちにする visudo ... # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL ncuser ALL=(ALL:ALL) ALL ... # user swich su - ncuser
nextcloud のインストール
sudo apt install snap sudo snap install nextcloud
インストール確認
snap changes nextcloud
log
ncuser@nextcloud:~$ snap changes nextcloud ID Status Spawn Ready Summary 3 Done today at 14:38 JST today at 14:39 JST Install "nextcloud" snap ncuser@nextcloud:~$
Status Done
, Summary Install *
OK
管理アカウントの設定
セキュリティ強化のため、コマンドで管理者アカウントを作っておく
sudo nextcloud.manual-install Gold simple123!
log
ncuser@nextcloud:~$ sudo nextcloud.manual-install Gold simple123! Nextcloud was successfully installed ncuser@nextcloud:~$
信頼できるドメインの設定
コマンドからインストールすると、 localhost
のみ応答するらしい
現在の値の確認
sudo nextcloud.occ config:system:get trusted_domains
log
ncuser@nextcloud:~$ sudo nextcloud.occ config:system:get trusted_domains localhost ncuser@nextcloud:~$
追加
複数追加したい場合は下記のように trusted_domains X
の数値をインクリメントする
sudo nextcloud.occ config:system:set trusted_domains 1 --value='10.147.14.62' sudo nextcloud.occ config:system:set trusted_domains 2 --value=nc.example.net
確認
ncuser@nextcloud:~$ sudo nextcloud.occ config:system:get trusted_domains localhost 10.147.14.62 nc.example.net ncuser@nextcloud:~$
証明書の設定
本来は、Let's Encrypt などの正式な証明書が必要
今回は自己証明書で行う
コマンドが用意されているので楽
sudo nextcloud.enable-https self-signed
log
ncuser@nextcloud:~$ sudo nextcloud.enable-https self-signed [sudo] password for ncuser: Generating key and self-signed certificate... done Restarting apache... done ncuser@nextcloud:~$
これで、 apache に自己署名証明書が関連付けされ、TLS が有効になった
firewall の port を空ける
sudo ufw allow 80,443/tcp
確認
ncuser@nextcloud:~$ ss -altn State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 511 *:443 *:* LISTEN 0 511 *:80 *:* ncuser@nextcloud:~$
ブラウザを開いてログインして初期設定
ip の確認
ncuser@nextcloud:~$ ip -c a show eth0 | grep "inet " inet 10.147.14.62/24 brd 10.147.14.255 scope global dynamic eth0 ncuser@nextcloud:~$
https://10.147.14.62
にアクセス
当然怒られる
が、今回はこのまま進む
コマンドラインで作成したユーザ情報を使ってログインする
# user Gold # password simple123!
ログイン後の画面
よしなに進める
プリインストールされているファイル達
ユーザメニュー
ユーザ > 設定 > 基本設定 > メールサーバ
ここでメールサーバを設定できる
感想
TOTP (Time based One Time Password) もプラグイン一発で出来たし、他に必要なものはプラグインで大体入れられるし、とても良い
Tasks か、スイムレーンのやつがあってそれがタスク管理も出来て良さそう
モバイルアプリもある
問題は、これを作ったのはいいけどこれもフィルタリングされるときだな