Ubuntu に Fathom プライバシー重視の Web 分析をインストールする方法
Fathom は、GDPR に準拠し、Cookie バナーを必要としない、プライバシー重視の Web 分析ソフトウェアです。Google Analytics の代替品ですが、ユーザーのプライバシーを侵害せず、訪問者のデータを危険にさらしません。
この記事では、Ubuntu 22.04 サーバーに Fathom Privacy Focused Web Analytics ソフトウェアをインストールする方法を説明します。リバース プロキシとして PostgreSQL と Nginx を使用して Fathom をインストールします。
前提条件
Fathom をインストールするには、次のものを用意してください。
- Ubuntu 22.04 サーバー。
- ルート権限を持つ非ルートユーザー。
- サーバーの IP アドレスを指すドメイン名。
PostgreSQL サーバーのインストール
Fathom は、PostgreSQL をバックエンド データベースとして使用するオープン ソースの Web 分析ツールです。Fathom をインストールするには、PostgreSQL をインストールしてから、新しい PostgreSQL データベースとユーザーを作成する必要があります。
まず、次のコマンドを実行して、Ubuntu パッケージ インデックスを更新します。
sudo apt update
次に、以下のコマンドを実行して、PostgreSQL データベース サーバーを Ubuntu システムにインストールします。
sudo apt install postgresql
入力 はい プロセスを確認します。
インストール後、Postgresql サービスが自動的に実行され、有効になります。次の systemctl コマンドを実行して、PostgreSQL が起動していることを確認します。
sudo systemctl is-enabled postgresql sudo systemctl status postgresql
以下の出力では、postgresql サービスが有効になっており、起動時に自動的に開始されることがわかります。また、postgresql サービスのステータスが実行中であることがわかります。
PostgreSQLデータベースとユーザーの作成
PostgreSQL をインストールしたら、Fathom インストール用の新しいデータベースとユーザーを作成しましょう。
以下のコマンドを使用して、デフォルトのユーザー postgres として PostgreSQL にログインします。
sudo -u postgres psql
ログインしたら、次のクエリを実行して新しいPostgreSQLデータベースとユーザーを作成します。この例では、データベースを作成します。 ファトムdb およびユーザー 測る Fathom のインストール用です。
CREATE USER fathom WITH CREATEDB CREATEROLE PASSWORD 'password'; CREATE DATABASE fathomdb OWNER fathom;
次に、以下のクエリを使用して、使用可能なデータベースとユーザーのリストを確認します。これにより、データベースとユーザーが作成されたことが保証されます。
\du \l
次の出力では、データベースを確認できます ファトムdb およびユーザー 測る 作成されます。PostgreSQL を終了するには、q と入力するか、Ctrl+d を押します。
次に、次のコマンドを実行してPostgreSQLデータベースに接続します。 ファトムdb 経由 測る ユーザー。パスワードを求められたら入力し、 入力 確認するために。
sudo -u postgres psql -U fathom -h 127.0.0.1 -d fathomdb
ログインしたら、次のクエリを使用して接続を確認します。
\conninfo
次のスクリーンショットは、ユーザーが 測る PostgreSQLデータベースに接続されています ファトムdbこれで、Fathom のインストールを続行します。
UbuntuにFathomをインストールする
PostgreSQL データベースの準備ができたので、次の段階を完了して Fathom のインストールを開始します。
- ユーザーの設定と Fathom のダウンロード
- Fathomの設定
- Fathom を Systemd サービスとして実行する
さっそく始めましょう。
ユーザーの設定と Fathom のダウンロード
まず、Fathom を実行するために使用する新しいシステム ユーザーを作成する必要があります。次に、Fathom バイナリ パッケージを Ubuntu マシンにダウンロードします。
まず、以下のコマンドを実行して新しいシステムユーザーを作成します。 測る。
sudo useradd -r -d /opt/fathom fathom
新しいホームディレクトリを作成する /opt/ファソム 所有権をユーザーとグループに変更する 測る。
sudo mkdir -p /opt/fathom sudo chown -R fathom:fathom /opt/fathom
次に、以下の wget コマンドを使用して fathom バイナリ パッケージをダウンロードします。
wget https://github.com/usefathom/fathom/releases/download/v1.3.1/fathom_1.3.1_linux_amd64.tar.gz
ダウンロードしたら、fathom バイナリ ファイルを /usr/local/bin ディレクトリに抽出し、fathom バイナリ ファイルを実行可能にします。
tar -C /usr/local/bin -xzf fathom_1.3.1_linux_amd64.tar.gz chmod +x /usr/local/bin/fathom
最後に、次のコマンドを実行して、fathom の場所とバージョンを確認します。
which fathom fathom --version
Fathom 1.3.1がインストールされている場所 ローカル。
Fathomの設定
この時点で、Fathom をダウンロードし、必要なユーザーとインストール ディレクトリを作成しました。次に、Fathom のインストールを構成してみましょう。
以下のコマンドを実行して、ランダムなパスワード シークレットを生成します。生成されたシークレットをメモにコピーします。
head /dev/urandom | tr -dc A-Za-z0-9 | head -c 20 ; echo ''
では、 /opt/ファソム ディレクトリ。
cd /opt/fathom
新しいを作成します データ ディレクトリと .env 以下のコマンドを使用してファイルを作成します。
sudo -u fathom mkdir -p /opt/fathom/data sudo -u fathom touch /opt/fathom/data/.env
次のnanoエディタコマンドを使用して、 .env ファイル。
sudo -u fathom nano /opt/fathom/data/.env
次の設定を挿入し、PostgreSQLデータベースの詳細を必ず変更してください。 FATHOM_SECRET あなたの情報とともに。
FATHOM_GZIP=true FATHOM_DEBUG=true FATHOM_DATABASE_DRIVER="postgres" FATHOM_DATABASE_NAME="fathomdb" FATHOM_DATABASE_USER="fathom" FATHOM_DATABASE_PASSWORD="password" FATHOM_DATABASE_HOST="127.0.0.1" FATHOM_DATABASE_SSLMODE="disable" FATHOM_SECRET="qDQ4fawzKOfBAtJ3O4ID"
完了したらファイルを保存して終了します。
次は /opt/fathom/データ ディレクトリに移動し、以下のコマンドで Fathom を実行します。
cd /opt/fathom/data sudo -u fathom fathom server
これにより、Fathomデータベースが初期化され、移行されます。成功した場合、Fathomがデフォルトポートで実行されていることを確認する必要があります。 8080を押すと、 Ctrl+C キー Fathom プロセスを終了します。
Fathom を Systemd サービスとして実行する
これで Fathom の設定が完了し、コマンド ラインから実行できるようになりました。管理を容易にするために、さらに Fathom を systemd サービスとして実行してみましょう。これにより、systemctl 経由で Fathom を管理できるようになります。
次のnanoエディタコマンドを実行して、新しいsystemdサービスファイルを作成します。 システム変数。
sudo nano /etc/systemd/system/fathom.service
次の設定をファイルに挿入します。以下に示すように、fathomサービスはユーザー`の下で実行されます。測る` デフォルトの作業ディレクトリ /opt/fathom/データ。
[Unit] Description=Starts the fathom server Requires=network.target After=network.target
[Service]
Type=simple
User=fathom
Restart=always
RestartSec=3
WorkingDirectory=/opt/fathom/data
ExecStart=/usr/local/bin/fathom server
[Install]
WantedBy=multi-user.target
完了したら保存してエディターを終了します。
次に、以下のコマンドを実行して、systemd マネージャーをリロードします。
sudo systemctl daemon-reload
再ロードしたら、次のコマンドを使用して fathom サービスを起動して有効にします。これにより、Fathom はバックグラウンドで実行され、起動時に自動的に実行されるようになります。
sudo systemctl start fathom sudo systemctl enable fathom
以下のコマンドを実行して、fathom サービスを確認します。
sudo systemctl status fathom
設定が成功した場合、ステータスが実行中の fathom サービスが表示されます。
最後に、以下のコマンドを実行して、開いているポート経由でFathomを確認します。Fathomはデフォルトのポートで実行されています。 8080 Ubuntu マシン上で。
ss -tulpn | grep fathom
Fathom ユーザーの作成
Fathom が起動して実行されたので、Fathom インストール用の最初のユーザーを作成する必要があります。
に移動 /opt/fathom/データ ディレクトリ。
cd /opt/fathom/data
Fathomユーザーを作成するには、以下のfathomコマンドを実行します。この例では、新しいユーザーを作成します。 ボブ パスワード付き パスワード。
sudo -u fathom fathom user add --email="[email protected]" --password="password"
リバースプロキシとしてのNginxのインストールと設定
このガイドでは、リバース プロキシとして Nginx を使用して Fathom を実行します。Nginx をインストールし、Fathom 用の新しいサーバー ブロック構成を作成しましょう。
次の apt コマンドを実行して、Ubuntu サーバーに Nginx をインストールします。
sudo apt install nginx -y
インストールが完了したら、nano エディタを使用して新しいサーバー ブロック構成 /etc/nginx/sites-available/fathom を作成します。
sudo nano /etc/nginx/sites-available/fathom
以下の設定を挿入し、ドメイン名を必ず変更してください。 サーバーの名前 ライン。
server { listen 80; server_name fathom.hwdomain.io;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080;
}
}
完了したらファイルを保存して終了します。
次に、以下のコマンドを実行してサーバーブロック構成を有効にします。 /etc/nginx/sites-available/fathom Nginx 構文全体を検証します。
sudo ln -s /etc/nginx/sites-available/fathom /etc/nginx/sites-enabled/ sudo nginx -t
エラーがなければ、出力は次のようになります。構文は正常です – テストは成功しました’。
次に、以下の systemctl コマンドを実行して Nginx サービスを再起動し、変更を適用します。
sudo systemctl restart nginx
最後に、以下のコマンドを使用して Nginx サービスのステータスを確認します。Ubuntu サーバー上で Nginx がアクティブ (実行中) かつ有効になっていることを確認します。
sudo systemctl is-enabled nginx sudo systemctl status nginx
UFW による Fathom のセキュリティ確保
Nginx を設定したら、UFW を設定し、HTTP ポートと HTTPS ポートの両方を開いて Fathom インストールへのアクセスを許可します。
次のコマンドを実行して、 オープンSSH アプリケーション プロファイルを UFW に追加します。次に、UFW を起動して有効にします。
sudo ufw allow OpenSSH sudo ufw enable
続行するには y と入力し、UFW が起動時に自動的に起動して実行されます。
次に、以下のコマンドを実行してアプリケーションプロファイルを追加します。Nginx フル‘。これにより、Ubuntu システムで HTTP プロトコルと HTTPS プロトコルの両方が開きます。
sudo ufw allow 'Nginx Full'
以下のコマンドを使用して、UFWのポートのリストを確認します。OpenSSHと’Nginx フル‘ プロファイルは UFW で有効になっています。
sudo ufw status
Certbot 経由で HTTPS を有効にする
この段階では、Fathom インストールはネットワーク外部からアクセスされますが、まだ HTTP モードのままです。インストールを保護するには、Nginx サーバー ブロック構成で HTTPS を有効にする必要があります。
この例では、Certbot と Letsencrypt を介して HTTPS を有効にします。したがって、ドメイン名が Ubuntu サーバーの IP アドレスを指していることを確認してください。
次の apt コマンドを実行して、Certbot および python3-certbot-nginx パッケージを Ubuntu にインストールします。続行するには y と入力してください。
sudo apt install certbot python3-certbot-nginx -y
インストールが完了したら、以下の certbot コマンドを実行して新しい SSL/TLS 証明書を生成します。ドメイン名と電子メール アドレスの詳細は必ず自分の情報に変更してください。
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d fathom.hwdomain.io
プロセスが完了すると、SSL 証明書が /etc/letsencrypt/live/domain.com ディレクトリに生成されます。また、Nginx サーバー ブロック構成は、Nginx Certbot プラグインによって自動的に HTTPS で構成されます。
Fathom インストールへのアクセス
Webブラウザを起動し、Fathomインストールのドメイン名にアクセスします(例: https://fathom.hwdomain.io/) インストールが成功すると、Fathom ログイン ページが表示されます。
作成したユーザー名とパスワードでログインし、 サインイン 確認するために。
まず、最初のトラッカーを作成するように求められます。サイト名を入力してクリックします。 サイトを作成。
これで、サイト用に生成された JavaScript トラッキング コードが表示されます。コードをコード エディターにコピーし、ターゲット サイトに配置します。
ここで、サイトの更新ボタンをクリックして続行し、ポップアップ ウィンドウの外側をクリックすると、次のような Fathom 分析ダッシュボードにアクセスできます。
結論
おめでとうございます。これで、Ubuntu サーバーに Fathom Web 分析がインストールされました。PostgreSQL データベース サーバーに Fathom をインストールし、Nginx をリバース プロキシとして構成しました。さらに、Letsencrypt を介して HTTPS で Fathom を保護し、HTTP ポートと HTTPS ポートの両方を開くように UFW を構成しました。
Hope this help!