Private Internet Access

提供: ArchWiki
2022年1月25日 (火) 20:28時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (序文を修正および記事を追加)
ナビゲーションに移動 検索に移動

Private Internet Access はサブスクリプションベースの VPN サービスです。

ノート: In 2019, PIA merged with Kape Technologies, and this event has been surrounded by a lot of controversy, especially via reddit posts. However, since the merger, the following improvements have been made to the PIA infrastructure:
  • All PIA applications got released as open source: https://github.com/pia-foss
  • WireGuard got added to the VPN servers and VPN Apps
  • VPN servers got migrated from Ubuntu 14.04 LTS to Arch Linux
  • All VPN servers now are encrypted via dm-crypt, following advice from the Arch Linux developers
  • All VPN services now run in memory via ramdisk

手動

インストール

[1] をダウンロードしてください。ファイルを解凍したら /etc/openvpn/client に移動してください。ファイルの所有者は root にしてください。

ヒント: .opvn 拡張子は .conf に変更して、設定ファイルの名前に含まれている空白は削除してください。OpenVPN#systemd サービスの設定を参照。
ノート: PIA は IPv6 をサポートしていないため、IPv6 は無効化する必要があります [2]

使用方法

OpenVPN#OpenVPN の起動を参照してください。

ヒント: 自動でログインするには、設定ファイルの auth-user-pass の後にユーザー名とパスワードを追加してください。詳しくは openvpn(8) のオプションを参照。

VPN に正しく接続できたかどうかテストするには こちらの記事 を見てください。

自動

公式インストールスクリプト

Private Internet Access は VPN を利用するように NetworkManager をセットアップするスクリプトを用意しています。スクリプトは こちら からダウンロードして実行できます。

パッケージ

  • openvpn-pia — このパッケージは#手動セクションで書かれている手順を自動化します。OpenVPN#systemd サービスの設定で使用するために設定ファイルの名前を変更したり、OpenVPN の auth-user-pass パラメータを設定して自動ログインを有効にします。インストールしたら /usr/share/doc/openvpn-pia/README を読んでください。
https://www.privateinternetaccess.com/ || openvpn-piaAUR[リンク切れ: パッケージが存在しません]
https://www.privateinternetaccess.com/ || pia-nmAUR[リンク切れ: パッケージが存在しません]
https://www.privateinternetaccess.com/ || private-internet-access-vpnAUR

ヒントとテクニック

インターネットのキルスイッチ

以下の iptables ルールは tun インターフェイス経由のネットワーク通信のみ許可します (VPN 接続を確立するときに使用する PIA の DNS サーバーへの接続とポート 1197 は例外的に許可します):

/etc/iptables/iptables.rules
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:10]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i tun+ -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -d 209.222.18.222/32 -j ACCEPT
-A OUTPUT -d 209.222.18.218/32 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 1197 -j ACCEPT
-A OUTPUT -o tun+ -j ACCEPT
-A OUTPUT -j REJECT --reject-with icmp-net-unreachable
COMMIT

上記のように設定することで VPN から切断されたときに、ネットワーク通信が入ったり出たりすることがないと保証されます。

LAN 上のデバイスにもアクセスしたい場合、明示的に許可してください。例えば、192.0.0.0/24 のデバイスへのアクセスを許可するには、以下の2つのルールを (REJECT ルールの前に) 追加します:

-A INPUT -s 192.168.0.0/24 -j ACCEPT
-A OUTPUT -d 192.168.0.0/24 -j ACCEPT

さらに、上記のルールは ICMP プロトコルもブロックします。詳しくは こちらのスレッド を見てください。