概要
「ロリポップ!ゼロトラストリンク」のLinux版クライアントは、管理者権限(root)を必要としない「ユーザースペースモード」に対応しています。共有サーバーやコンテナなど、管理者権限を利用できない環境でもネットワークに参加できます。
ユーザースペースモードでは、OSのネットワーク設定(TUNデバイス・ルーティング・DNS)を一切変更せず、すべての通信をクライアント内蔵のネットワークスタックで処理します。このため、アプリケーションの通信はクライアントが提供するプロキシ(SOCKS5またはHTTP)経由で行う必要があります。
ポイント
通常モード(管理者権限で利用)では、アプリケーション側でプロキシを設定することなく通信できますが、ユーザースペースモードではプロキシを設定したアプリケーションの通信だけがネットワークに参加します。
インストール方法
管理者権限を利用できない環境では、パッケージマネージャー(apt / dnf など)を利用できないため、.tar.gz版のパッケージをダウンロードして展開します。
- ターミナルで.tar.gz版のパッケージをダウンロードし、展開します。
curl -LO https://pkgs.ztna.lolipop.jp/linux/lolipopztl_latest_linux_amd64.tar.gztar xzf lolipopztl_latest_linux_amd64.tar.gz
※arm64環境では、URLの「amd64」を「arm64」に読み替えてください。 - 展開された
ztldとztlctlを、パスの通ったディレクトリ(例:~/.local/bin)に配置します。
起動と接続
- ユーザースペースモードでクライアントを起動します。
ztld --userspace
※起動したままにしておく必要があります。バックグラウンドで動かす場合はnohup ztld --userspace > ~/ztld.log 2>&1 &のように実行してください。 - 別のターミナルで
ztlctl loginを実行します。sudoは不要です。 - 画面に認証用URLとコード(例: BCDF-GHJK)が表示されます。
- スマートフォンまたはPCのブラウザで表示されたURL(https://ztna.lolipop.jp/client/device)を開き、コードを入力します。
※ログインしていない場合は、先にログイン画面が表示されます。組織に登録されたアカウントでログインしてください。 - 承認画面に表示されるホスト名・OSが、コマンドを実行した端末と一致していることを確認し、接続を許可します。
- 認証が完了すると、自動的にネットワークに接続されます。
アプリケーションからの通信
ユーザースペースモードでは、以下のプロキシを経由してネットワーク内の端末と通信します。
| 種類 | アドレス |
|---|---|
| SOCKS5プロキシ | localhost:1080 |
| HTTPプロキシ | localhost:8080 |
例: ネットワーク内の端末(IPアドレスが 100.64.0.2 の場合)へcurlでアクセスする
curl --proxy socks5h://localhost:1080 http://100.64.0.2/
環境変数でHTTPプロキシを設定する場合: export HTTPS_PROXY=http://localhost:8080
プロキシのアドレスは、ztld の起動時のオプション(--socks5-addr / --http-proxy-addr)で変更できます。
ご注意
- プロキシを設定していないアプリケーションの通信は、ネットワークに参加しません。
- クライアント(ztld)はユーザー自身で管理する必要があります。端末の再起動後は、再度起動してください。
- ネットワーク内のほかの端末からこの端末宛ての着信通信には、制限があります。
- 環境変数
XDG_RUNTIME_DIRが設定されている必要があります(一般的なディストリビューションではログイン時に自動設定されます)。