UniFi-API-Browserインストールと注意点
UniFi-API-Browserとは
UbiquitiのAPIに触れてみたいけど、効率的に確認できるものはないかなと思ったところ、
見つけたのがUniFi API Browserです。
要はUbiquitiのネットワーク状態のAPIを簡単に見れるツールです。
作成者はArt of WiFi
ライセンスはMIT Licenseです。
UbiquitiのUDMやUCGなどのゲートウェイがあればAPIの一覧をブラウザで取得できます。
今回、初期設定で多少躓いたため、記事に残しておきます。
UniFi側の設定
最近のアップデートにより、UniFi NetworkにログインするときにはMFA(2FA)が必要になりました。
UniFi-API-BrowserはAPI Keyではなく、ユーザー/パスワードで認証を行っていますのでUniFi Networkのユーザー(クラウドアクセスのユーザー)ではUniFi-API-Browserにはログインできません。
したがって、UDMのLAN側にUniFi-API-Browserがいる構成にして、かつMFAが必要のないローカルユーザーアカウントを作成しておくことが前提になります。
躓いたポイントここで、MFAを回避するのにローカルユーザーを作成しないとアクセスできないことに気づくのに時間を要しました。
UDMへのローカルユーザー作成方法
UniFi Networkバージョン10.0のGUIをベースにした解説。
UniFi Networkにアクセスして、Admin & Usersに入ります。
Create Newにてユーザーの新規作成を行います。
ポイントはAdminにチェック、Restrict to Local Access Onlyにチェックです。

作成したユーザーでUDMのLAN側からログインできることを確認してください。
UDMへのFW設定追加(必要な場合)
設定→ポリシーエンジン→新しいポリシー作成
送信元をUniFI-API-Browserのいるネットワークを指定、送信先をゲートウェイでゲートウェイのLAN IPのみ指定で許可がよいと思います。
UniFi-API-Browserインストール
Ubuntu 24.04にインストールしていきます。
といってもここはGithubの通りですが、細かく説明しましょう。
まずは必要パッケージを入れます。
sudo apt update
sudo apt install -y apache2 php php-curl php-json php-cli php-xml git unzip
ディレクトリ移動してGit Cloneします。
cd /var/www/html
sudo git clone https://github.com/Art-of-WiFi/UniFi-API-browser.git
パーミッション変更をしておきます。あとApache再起動
sudo chown -R www-data:www-data UniFi-API-browser
sudo chmod -R 755 UniFi-API-browser
sudo systemctl restart apache2
ここまででインストールはできているはず。ブラウザでアクセスできると思います。
http://<サーバーのIP>/UniFi-API-browser/
ただし設定しないのでエラー表示になりますがこれでOK
UniFi-API-Browser設定
phpを環境に合わせて編集します。
ディレクトリを移動してテンプレートをコピー。
cd /var/www/html/UniFi-API-browser/config
sudo cp config-template.php config.php
パーミッション変更をしておきます。
sudo chown www-data:www-data config.php
sudo chmod 644 config.php
設定ファイルを編集
sudo vi config.php
設定時の注意点
ここで記述するユーザー、パスワードは作成したローカルユーザーである必要があります。
URLはゲートウェイのLAN側アドレスです。
$controllers = [
[
'user' => 'ユーザー', // Username for access to the UniFi Controller
'password' => 'パスワード', // Password for access to the UniFi Controller
'url' => 'https://IP Address:443', // Full URL to the UniFi Controller, e.g., 'https://22.22.11.11:8443'
'name' => 'UDM Pro', // Name for this controller which will be used in the dropdown menu
],
];
UniFi API Browserにアクセス
改めてサーバーにアクセスするとAPIが簡単にGetできる環境が作成されています。
http://<サーバーのIP>/UniFi-API-browser/

Discussion