Mattermost サーバー移行

Mattermostは最低限のスペックで試験運用中だったため、前回Jitsiを入れた高スペックサーバーに引っ越し。

直インストールから、Caddy + Docker運用へ変更。
バージョンは現行の10.12.4のまま移行。

旧サーバー

・Mattermost停止
systemctl stop mattermost
(起動する場合は、systemctl start mattermost)

・MySQLダンプ
mysqldump –no-tablespaces –default-character-set=utf8mb4 -u mattermost_user -p●●● mattermost_db > backup.sql

・データベース名を調べる
mysql -u mattermost_user -p●●●
show databases;

・データディレクトリ圧縮
cd /opt/mattermost
tar czvf mattermost_data.tar.gz data/
(/opt/mattermost/data/をカレントディレクトリにmattermost_data.tar.gzという圧縮ファイルにして保存)

・設定ファイルコピー(復旧に使うわけではない予備)
cp /opt/mattermost/config/config.json ./
(Mattermostの設定ファイルを今いるディレクトリにコピー)

・移行先サーバーにアップロード

新サーバー

・Caddy(既に運用状態で設定ファイルだけ変更)

cd /home/caddy
vim Caddyfile
docker compose down
docker compose up -d

・Mattermost

cd /home
mkdir mattermost
cd mattermost
vim docker-compose.yml

docker compose up -d

・データインポートのためDocker停止
docker stop mattermost-app

・SQLリストア
docker exec -i mattermost-db mysql –default-character-set=utf8mb4 -u mmuser -p●●● mattermost < backup.sql

・別ターミナルでプロセス確認する場合
docker exec -it mattermost-db mysql -u mmuser -p●●● -e “SHOW PROCESSLIST;”

・dataディレクトリ展開
※tarをdocker-compose.ymlと同じ階層に保存。
cd /home/mattermost
tar xzvf mattermost_data.tar.gz -C ./volumes/mattermost/
(tarを./volumes/mattermost/に解凍。tarにdataディレクトリを含んでいる)

・パーミッション
chown -R 2000:2000 /home/mattermost/volumes/mattermost/

・Docker開始
docker start mattermost-app

・エラーになる場合、AIプラグイン削除
rm -rf /home/mattermost/volumes/mattermost/plugins/mattermost-ai
docker restart mattermost-app

・DNSレコードのIPアドレス変更

FAX受信

GCP Javascript 複合機で受信したFAXをMattermostに投稿(PNGを投稿+PDFへのリンク)

アクセストークンが無効化されてしまうのでこちらは再設定。

・アクセストークン有効化
ステムコンソール>統合機能>統合機能管理>パーソナルアクセストークンを有効にする

・トークン生成
プロフィール>セキュリティー>パーソナルアクセストークン>編集する>トークンを生成する

・チャンネルID確認
チャンネルの上のチャンネル名をクリック>情報を表示

 

VPS Caddy Jitsi Meet 設定メモ

社内コミュニケーションにMattermostを利用しているが、会話なら一瞬で済む内容でも、テキストベースだと時間がかかってしまう。

かといってZoomやMeetを立ち上げるほどではないという場面のために手軽に呼び出せるJitsiプラグインを導入することにした。

Caddy

・共通ネットワーク作成
docker network create localproxy

・フォルダ準備
cd /home
mkdir caddy
cd caddy

・Caddyfile

vim Caddyfile

・docker-compose.yml

vim docker-compose.yml

・コンテナ起動
docker compose up -d

Jitsi Meet

・フォルダ準備
cd /home
mkdir jitsi
cd jitsi

・docker-compose.yml

vim docker-compose.yml

・コンテナ起動
docker compose up -d

・ufw
ufw allow 10000/udp

DNS

jitsi.●●●.comのAレコードをサーバーIPアドレスに向ける。

Mattermost

https://github.com/mattermost-community/mattermost-plugin-jitsi

Releasesからtar.gzをダウンロード。
システムコンソール>プラグイン管理>プラグインをアップロードする

プラグインを有効にする>設定

Jitsi Server URL:https://jitsi.●●●.com
Embed Jitsi video inside Mattermost:無効
Show pre-join page:有効
Jitsi Meeting Names:Random
Use JWT Authentication for Jitsi:有効
App ID for JWT Authentication:mattermost
App Secret for JWT Authentication:Jitsiと同じ秘密鍵

 

XServerVPS SoftEtherVPNServer インストール

## CPU/Bit確認

cat /proc/cpuinfo | grep ‘model name’ | head -1
uname -m

## ダウンロード

cd /opt

wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.44-9807-rtm/softether-vpnserver-v4.44-9807-rtm-2025.04.16-linux-x64-64bit.tar.gz

## インストール

apt update
apt install gcc make libreadline-dev zlib1g-dev libssl-dev

tar -zxvf softether …
cd vpnserver
make

## パーミション

chmod 600 *
chmod 700 vpncmd
chmod 700 vpnserver

## サービス登録

vim /etc/systemd/system/vpnserver.service
以下、書き込み。

## 起動
systemctl daemon-reload
systemctl enable vpnserver
systemctl start vpnserver

## 終了
sudo systemctl stop vpnserver

## ポート開放
ufw allow from xxx to any port 5555 proto tcp

## Windowsのサーバー管理マネージャ

起動画面にて、新しい接続設定を実行
・接続設定名:XServerVPS
・ホスト名:IPアドレス
・ポート番号:5555

接続すると初回接続時のみ
管理者パスワード設定+簡易セットアップダイアログが開く。

・リモートアクセスVPNサーバー
をチェックし次へ

・仮想HUB名:VPN(そのまま)
と入力しOK。

・ダイナミックDNS機能
はそのまま変更なし。閉じる。

・IPsec/L2TP/EtherIP/L2TPv3サーバー機能の設定
はチェック無し(そのまま)でOK。

・VPN Azureクラウド
VPN Azureを無効にする
をチェックしOK。

1.ユーザーを作成する
をクリックし、ユーザー名とパスワードを入力してOK。

3.ローカルブリッジの設定
ではブリッジの設定しない。
閉じる。

簡易セットアップダイアログここまで。
ここからサーバー管理マネージャの通常画面で作業。

VPNをダブルクリック>仮想NATおよび仮想DHCPサーバー機能>
SecureNAT機能を有効にする>SecureNATの設定

NICを192.168.29.1とし、DHCP配布を192.168.29.10-200とする。
クライアントに割り当てるオプションの設定は空白にする。

Mattermostサーバー 更新(10.12.0)

https://docs.mattermost.com/product-overview/version-archive.html
から対象のダウンロードリンクを見つける

Boards更新

https://github.com/mattermost/mattermost-plugin-boards/releases
から、該当のファイル
mattermost-plugin-boards-v9.1.6-linux-amd64.tar.gz
をダウンロード。

システムコンソール>プラグイン管理からアップロード

 

RustDesk VPSインストール

※hbbrがリレーサーバー、hbbsがシグナルサーバー

ufw

※ from xxx は省略可能
(ufw allow to any port 21116 proto tcp)
※ proto xxx は省略可能(tcp/udpが適用)
(ufw allow to any port 21116)
※ to any portを省略する場合、proto toも省略する省略記法(カンマ区切不可)
(ufw allow 21116/udp)

ufw allow to any port 21114,21115,21116,21117,21118,21119 proto tcp
ufw allow to any port 21116 proto udp

※以下が必要
21114(TCP)
21115(TCP)
21116(TCP/UDP)
21117(TCP)
21118(TCP)
21119(TCP)

コマンド

ufw status numbered
ufw delete 1
ufw reload

Docker

mkdir rustdesk
cd rustdesk
vim docker-compose.yml

docker compose up -d

クライアント

https://github.com/rustdesk/rustdesk/releases

設定>ネットワーク>認証サーバー/中継サーバーにIPアドレスを入れる
Keyの調べ方。
cd data
cat id_ed25519.pub

XserverVPS+Ubuntu+Docker Samba-DC

Samba DC

今回は検証目的で、通常はVPSで直接Dockerを公開するような運用はNGで、VMを経由する。

●●●=利用環境のグローバルIPアドレス

・ufw

ufw allow from ●●● to any port 9922,3306,53,88,135,139,389,445,464,636,3268,3269,49152:49252 proto tcp
ufw allow from ●●● to any port 53,88,123,137:138,389,464 proto udp

・フォルダ作成

cd /home
mkdir samba
cd samba
mkdir data
mkdir config

chmod 700 data
chmod 700 config

Docker

vim docker-compose.yml

・もし再実行で既にコンテナがあるようだったら

docker ps -a
docker compose down
※カレントディレクトリにdocker-compose.ymlがある状態で実行

・通常終了しない場合
docker ps -a
docker rm -f コンテナID

・バインドボリューム削除
rm -rf ./data/* && rm -rf ./config/*

※再起動の場合
docker restart samba-dc

※一時停止の場合
docker pause samba-dc
docker unpause samba-dc

・起動

docker compose up -d
※カレントディレクトリにdocker-compose.ymlがある状態で実行
※dはバックグランド実行

・停止
※もし自動で再起動を繰り返している場合止める
docker stop samba-dc

・初回のみエラー

53ポートが使用中とのことでエラー。

lsof -i :53

vim /etc/systemd/resolved.conf
DNSStubListener
>no
に変更する。
systemctl restart systemd-resolved

SambaRPCポート変更

※直接変更する方法
docker exec -it samba-dc vi /etc/samba/smb.conf

rpc server dynamic port range = 49152-49172

rpc server dynamic port range = 49152-49252
に変更。

docker exec -it samba-dc supervisorctl restart samba

※ポートが多すぎるコンテナ生成で失敗する。(タイムアウトしてしまう)
ポートが少なすぎるとADの同期で問題が発生する。

エラー確認

journalctl -u docker
docker logs -f samba-dc
docker exec -it samba-dc tail -f /var/log/samba/log.smbd
docker exec -it samba-dc tail -f /var/log/ntp

NTP変更

docker logs samba-dc | grep ntp
でntp系のエラー確認

・ntpサーバー確認
docker exec -it samba-dc ntpq -p
現在のntpサーバー(*)を確認しping
docker exec -it samba-dc sntp xxx.xxx.xxx.xxx

/etc/ntp.conf or /etc/ntpd.conf
使用されている方の調べ方(ps aux | grep ntpd)
を編集する。

docker exec -it samba-dc vi /etc/ntpd.conf

server ntp.nict.jp iburst prefer
を追加し、
ntpsigndsocket /usr/local/samba/var/lib/ntp_signd/

ntpsigndsocket /var/lib/samba/ntp_signd/
に変更する

docker exec -it samba-dc supervisorctl restart ntpd

・ntp.drift作成

docker exec -it samba-dc mkdir -p /var/lib/ntp
docker exec -it samba-dc touch /var/lib/ntp/ntp.drift
docker exec -it samba-dc chown ntp:ntp /var/lib/ntp
docker exec -it samba-dc chown ntp:ntp /var/lib/ntp/ntp.drift
docker exec -it samba-dc chmod 755 /var/lib/ntp
docker exec -it samba-dc chmod 664 /var/lib/ntp/ntp.drift

docker exec -it samba-dc supervisorctl restart ntpd

・一応確認

アクセス権限
cd /var/lib/ && ls -la
chown ntp:ntp /var/lib/ntp
chmod 755 /var/lib/ntp
になっていればOK。

ntpユーザがいるかどうか
id ntp

・usersharesフォルダ作成
docker exec -it samba-dc mkdir -p /var/lib/samba/usershares

SambaTool(DNS逆引き)

VPSアドレス[AAA.BBB.CCC.DDD]
から
samba-dc.xxx.local
を取得する方法

docker exec -it samba-dc samba-tool dns zonecreate localhost CCC.BBB.AAA.in-addr.arpa –username=administrator –password=xxx

docker exec -it samba-dc samba-tool dns add localhost CCC.BBB.AAA.in-addr.arpa DDD PTR samba-dc.xxx.local –username=administrator –password=xxx

docker exec -it samba-dc supervisorctl restart samba

Windowクライアント設定

Win11でNASにアクセスできなくなる対策と同じ設定。
(安全でないゲスト ログオン等)

ncpa.cpl
利用しているNICのDNSをVPSのIPアドレスにする。

sysdm.cpl
コンピュータ名タブ>変更
ドメインを選択しドメイン名を入力する。

ユーザーはadministrator
パスワードはdocker-compose
で指定したパスワードを入力する。

再起動したらログイン画面で
ドメイン名\administrator
のように入力しログインできる。初回ログイン時はかなり時間がかかる。

※アカウントもADに参加しないと以下コマンドは使えないが、このタイミングでローカルorMSアカウントを入力して、端末だけAD参加という状態も可能。

・Windows RSAT 有効化(ユーザー参加必須)

システム>オプション機能>機能表示>使用可能な機能を表示する
RSAT: ActiveDirectoryDomainServices およびライトウェイトディレクトリサービスツール
をチェックし追加すると、
Active Directory サイトとサービス
Active Directory ドメインと信頼関係
Active Directory ユーザーとコンピュータ
Active Directory 管理センター(Samba-DCでは利用不可)
が有効化される。

RSAT: グループポリシー管理ツール
をチェックし追加すると、
gpmc.msc
が有効化される。

・DNSが問題ないか確認する。

nslookup ドメイン
これでVPSのIPアドレスが返ってくればOK。

nslookup VPSのIPアドレス
これでドメイン名が返ってくればOK。

・接続状況(信頼関係)確認※管理者

nltest /sc_verify:ドメイン名
nltest /dsgetdc:ドメイン名

・時刻関係※管理者

w32tm /config /syncfromflags:domhier /update
※DCから取得に変更

w32tm /query /status
ソースを確認

w32tm /resync
同期実行

・gpupdate・

※コンピュータのみ更新場合
gpupdate /target:computer /force

エラーが発生した場合
eventvwr>アプリケーションとサービスログ>Microsoft>Windows>GroupPolicy
で確認する。

・\\xxx.local\sysvolアクセス時、このファイルは他のコンピュータから取得したものです。とついてしまう場合。

Win+R>inetcpl.cpl>セキュリティ>信頼済みサイト

\\xxx.local
を登録する。

・ドメインコントローラーへのポートテスト
Test-NetConnection “xxx.local” -Port 389

・接続テスト(ユーザダイアログ表示させる)

Test-ComputerSecureChannel -Repair -Verbose -Credential (Get-Credential)
※ドメイン\ユーザー名で入力する

・端末パスワードの更新
Reset-ComputerMachinePassword -Credential (Get-Credential)
※Smaba-DC内では、ユーザーと、端末、それぞれパスワードが存在するが端末のパスワードは自動で管理されユーザーが意識する必要はない。

※接続がうまくいかない場合sysdm.cplから一度抜けて再度登録すると直ることが多い。

・Win11ユーザープロファイルの削除

テストしているとプロファイルが多くできてしまう。
sysdm.cpl>詳細設定>ユーザープロファイル>設定
ここで不要なプロファイルを削除できる。

メモ:コンテナエントリポイントを調べて
スクリプトを追加する方法

※この方法だとinit.sh後の処理ができないので不採用。

・エントリポイントのスクリプトを調べる
docker exec -it samba-dc bash
cat /proc/1/cmdline

・作成

vim setup.sh

#!/bin/sh
sed -i ‘s|xxx|xxx|’ /etc/samba/smb.conf
sed -i ‘s|xxx|xxx|’ /etc/ntpd.conf

docker-composeで呼び出す。

volumes:
– ./setup.sh:/setup.sh
command: sh -c “/setup.sh && exec /init.sh”

メモ:シンボリックリンク

バインドしているexternalに保存
上記と同じように、エントリスクリプト内でcpできないエラーになる。

#!/bin/sh
ln -sf /etc/samba/external/smb.conf /etc/samba/smb.conf
ln -sf /etc/samba/external/ntpd.conf /etc/ntpd.conf

※lnコマンド
ln -sf [実体] [リンク]

ls -laの見え方
ntpd.conf(リンク) -> /etc/samba/external/my_ntpd.conf(実体)

メモ:Docker Network

docker network ls

・基本
xxx bridge bridge local
xxx host host local
xxx none null local

・削除方法
docker network rm samba_default

・種類
bridge
host:portsの設定は意味ない
macvlan:VPSだと難しい

メモ:SambaTool(DNSレコード)

・DBチェック
docker exec -it samba-dc samba-tool dbcheck –cross-ncs –fix –username=administrator –password=xxx

・ADに登録されている端末取得
docker exec -it samba-dc samba-tool computer list
docker exec -it samba-dc samba-tool computer show xxx

・ADに登録されているユーザー/PCリスト取得
docker exec -it samba-dc samba-tool user list
docker exec -it samba-dc samba-tool computer list

・PC追加

docker exec -it samba-dc samba-tool computer create PCNAME –user=administrator –password=xxx

・ゾーン一覧取得
docker exec -it samba-dc samba-tool dns zonelist localhost –username=administrator –password=xxx

xxx.localと_msdcs.xxxlocalが返ってくる。

・xxx.localのレコード一覧取得
docker exec -it samba-dc samba-tool dns query localhost xxx.local @ ALL –username=administrator –password=xxx

・_msdcs.xxx.localのレコード一覧取得
docker exec -it samba-dc samba-tool dns query localhost _msdcs.xxx.local @ ALL –username=administrator –password=xxx

・下位レコード取得
docker exec -it samba-dc samba-tool dns query localhost _msdcs.xxx.local gc ALL –username=administrator –password=xxx

・Aレコード削除
docker exec samba-dc samba-tool dns delete localhost xxx.local samba-dc A 172.19.0.2 -UAdministrator%xxx

・Aレコード登録
docker exec samba-dc samba-tool dns add localhost xxx.local samba-dc A サーバーIPアドレス -UAdministrator%xxx

メモ:アクセス制御リスト(ACL)

docker exec -it samba-dc samba-tool ntacl sysvolreset –username=administrator –password=xxx

docker exec -it samba-dc samba-tool ntacl sysvolcheck –username=administrator –password=xxx

docker exec -it samba-dc supervisorctl restart samba

・ACL権限関連リセット

samba-tool ntacl sysvolreset
samba-tool ntacl sysvolcheck

VPSで稼働しているサービス整理(XserverVPS)

安価なプランのIndigoVPSで色々なOSS運用していたが、1つにまとめることにした。今回はXserverVPS。すでにOSSは稼働状態なので、新しい環境と並行稼働してから切り替えることにした。

ssh

sudo vim /etc/ssh/sshd_config
Port
>9922

PasswordAuthentication
ChallengeResponseAuthentication
GSSAPIAuthentication
>no

sudo service ssh restart

ufw

※Xserverにもパケットフィルタがあるので要設定。

sudo vim /etc/default/ufw
>IPV6=no

sudo ufw allow from ●●●.●●●.●●●.●●● to any port 9922 proto tcp

sudo ufw enable
sudo ufw status

・メモ

削除
sudo ufw status numbered
sudo ufw delete [番号]

Docker

sudo apt update
sudo apt install -y ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
“deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo “$VERSION_CODENAME”) stable” | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

MySQL

このMySQLは外部接続用で単独で使用。
今までは直接インストールしていたが今回はDocker。

sudo mkdir project_management
cd project_management

sudo mkdir data
sudo chown -R 999:999 ./data
sudo chmod 700 ./data

sudo mkdir conf.d
sudo chown -R 999:999 ./conf.d
sudo chmod 700 ./conf.d

sudo vim docker-compose.yml

sudo docker compose up d

cd conf.d
sudo touch external.cnf
sudo chown 999:999 external.cnf
sudo chmod 644 external.cnf

sudo vim external.cnf
[mysqld]
bind-address = 0.0.0.0
require_secure_transport = ON

sudo docker restart production_management

sudo ufw allow from ●●●.●●●.●●●.●●● to any port 3306 proto tcp
※Xserverのパケットフィルタも要設定。

dataフォルダの
client-cert.pem
client-key.pem
ca.pem
をダウンロード。

・pfx作成

pass=$(head /dev/urandom | tr -dc a-km-np-z1-9 | head -c 13);openssl pkcs12 -export -inkey client-key.pem -in client-cert.pem -out client.pfx -passout pass:${pass};echo $pass;

メモ

コンテナ一覧
sudo docker ps

コンテナに入る
docker exec -it production_management bash

コンテナ再起動
sudo docker restart production_management

コンテナ削除
sudo docker rm -f production_management

MySQL設定ファイル
/etc/my.cnf

MySQL Workbench

Standard TCP/IPを選択。

・Parametersタブ
Hostname:IPアドレス
Port:3306
Username:DBユーザー
パスワード:DBパスワード

・SSLタブ
Use SSL:Require and Verify CA
SSL Key File:client-key.pem
SSL CERT File:client-cert.pem
SSL CA File:ca.pem
ダウンロードしたファイルを選択。登録後ファイルの移動はできない。

これでVPS上のDockerのMySQLに外部から接続することが可能。

MySQLバックアップ

cd /home/project_management
sudo mkdir backup
sudo chmod 700 backup

sudo vim backup.sh

weekday=date +%w
f=/home/project_management/backup/dump_${weekday}.sql
docker exec production_management mysqldump –single-transaction -u root -p●●● project_management > $f

sudo chmod 700 backup.sh

・cron

cd /etc/cron.d
sudo vim /etc/cron.d/mysql_backup

0 2 * * * root /home/project_management/backup.sh

sudo chmod 600 mysql_backup

sudo systemctl status cron

Indigo(Ubuntu)でCaddy+Docker(MeshCentral)環境構築

Vaultwardenで利用したVPSに追加の別サブドメインでMeshCentralをインストールしてみる。

・Azure DNSゾーン

対象のドメインを選択
>+子ゾーン
>確認および作成
>作成

作成されたゾーンを選択

Aレコードに、sub.domainを追加する。
>レコードセット
>+追加
種類:A
IPアドレス:対象のアドレス
として作成。

・caddy

取得できているかどうか

・Docker

・MeshCentral

・ダウンロードしたAgentのwss://domain:port/agent.ashxが以下で変わる。
AgentPortは、portの部分、Certはdomainの部分。
ここでCertを指定しないとLANだけの動作になる。

●Agent

・MeshCentral>ログインしてアカウントを作成
・デバイスグループを作成>デバイスを作成
・Agentインストーラーをダウンロード>実行
・プログラムフォルダに作成されたプログラムを起動し、インストール
※インストーラーが起動しない場合、
システム>オプション機能>機能を表示>
WMICを追加する

●メモ

再起動する場合

sudo docker compose restart meshcentral
sudo docker compose restart meshcentral-db

・エラー発生した場合

コンテナID確認
sudo docker ps

コンテナ停止
sudo docker container stop コンテナID

コンテナを削除
sudo docker rm コンテナID

ログ
sudo docker logs コンテナID

Indigo(Ubuntu)でCaddy+Docker(Vaultwarden)環境構築

・Indigoで新規インスタンスを生成

Ubuntu 24.04
2vCPU/2GB/40GB

・TeraTermからSSHアクセス

・Docker

・Docker Compose

・DNS設定

Azure>DNSゾーン>+子ゾーン
名前のところにサブドメインにしたい値を入れて、確認及び作成

作成したサブドメイン付きのドメインのレコードセットを編集
AレコードでVPSのIPアドレスを指定

・Caddy

・Vaultwarden

これでhttps://sub.domainでアクセスできる。

・ufw

sudo vim /etc/default/ufw
IPV6=no

・ssh
sudo vim /etc/ssh/sshd_config

・PasswordAuthentication
・ChallengeResponseAuthentication
・GSSAPIAuthentication
3つともnoへ

・Dockerコマンドメモ

全てのコンテナ
sudo docker compose ps -a

全てのコンテナストップ
sudo docker stop $(sudo docker ps -q)

全てのコンテナ削除
sudo docker container prune

・Caddyメモ

caddy設定ファイル

 

CentOS(ConoHa) Mattermostテンプレート

ConoHa設定

実験のため、ConoHa メモリ1GBプランでMattermostのテンプレートを立ち上げてみた。

SSHキー設定し忘れたのでrootパスワードを利用し、TeraTermから接続。

MuuMuu + Xserver 独自ドメイン

CentOS(ConoHa) 初期設定 LAMP

SSH接続とファイアーウォール設定あたりを実行。

Mattermostの設定

ブラウザからアクセスし、メールアドレス、ユーザー名、パスワードを決め、チーム(Create a team)を作成する。ここで、チーム名とURLを決める。

・日本語化

メニュー>Account Settings>Display>Language
日本語に変更

システムコンソール>言語>
デフォルトのサーバー言語、デフォルトのクライアント言語の2つを
日本語に変更

・トークン発行

システムコンソール>統合機能管理
パーソナルアクセストークンを有効にする

メニュー>アカウントの設定>セキュリティ>パーソナルアクセストークン
トークンを生成する

C#にてRestAPIを利用するサンプル

Ubuntu Rocket Chatインストール

同じようなソフトのRocketChatの場合。
少し操作してみただけで利用していない。

・インストール

snap install rocketchat-server

・ufw

ufw allow 3000/tcp
ufw reload

・アンイストール

snap remove rocketchat-server

・ufw

ufw status numbered(番号確認)
ufw delete 番号
ufw reload