Private Internet Access/AUR

提供: ArchWiki
ナビゲーションに移動 検索に移動

この記事では private-internet-access-vpnAUR のインストールと使用方法について説明しています。サービスや別のパッケージについての情報は Private Internet Access を見てください。

ノート: 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 LTS to ArchLinux
  • All VPN servers now are encrypted via dm-crypt, following advice from Arch devs
  • All VPN services now run in memory via ramdisk

インストール

private-internet-access-vpnAUR または private-internet-access-vpn-devAUR パッケージをインストールしてください。

パッケージには OpenVPN の設定ファイル をダウンロードして /etc/openvpn に保存するツールが含まれています。ただし、コマンドラインから使いやすくするためにファイルの名前は変更されます。

パッケージの設定は /etc/private-internet-access に保存されます。

インストール後に connman を使っていて接続に問題が発生する場合、connman-vpn.service再起動してください。

使用方法

自動ログインの有効化

自動ログインを有効にすることでコマンドラインでパスワードを入力しなくても VPN サービスに接続できるようになります。設定するには、以下を実行してください:

  • /etc/private-internet-access/login.conf を作成。
  • ユーザー名とパスワードをファイルに追加してください。LINE 1 がユーザー名で LINE 2 がパスワードです。他のテキストをファイルに追加してはいけません。機能しなくなります (これは OpenVPN の仕様です):
/etc/private-internet-access/login.conf
USERNAME
PASSWORD
  • ファイルのパーミッションを 0600 に、所有者を root:root に変更してください:
# chmod 0600 /etc/private-internet-access/login.conf
# chown root:root /etc/private-internet-access/login.conf
ヒント: 上記の設定で root 以外のユーザーからファイルが操作できなくなります。詳しくはファイルのパーミッションと属性を読んでください。自動ログインを有効にするには上記の設定が必須になります。
  • root で pia -a を実行してください。
    • networkmanager がインストールされている場合、networkmanager の設定ファイルが作成されます。networkmanager を再起動してください。
    • connman がインストールされている場合、connman の設定ファイルが作成されます。connman-vpn.service をまだ起動していない場合は起動してください。プロファイルが自動的にロードされます。
    • 上記のどちらの場合でも OpenVPN の .conf ファイルが /etc/openvpn に作成されます。
ヒント: 自動ログインを無効にするには /etc/private-internet-access/pia.confopenvpn_auto_login = False を追加してから pia -a を実行してください。

VPN に手動接続

root で openvpn --config /etc/openvpn/client/{config_file_name} を実行してください。{config_file_name} に指定するファイルは /etc/openvpn ディレクトリに存在し、pia -l コマンドでも確認できます。

VPN に自動接続

  1. connman-vpn.service有効化してください。
  2. root で pia -a を実行してください。
ノート: 以下はサポートされていない設定です。

設定例

自動ログインを有効にして、Connman と OpenVPN だけ設定し、UDP ポート 8080 を使用してアメリカ・日本・ロンドン・サウサンプトンの VPN エンドポイントを使用する設定例:

/etc/private-internet-access-vpn/pia.conf
[pia]
openvpn_auto_login = True

[configure]
apps = cm
port = 8080
hosts = US East, US West, Japan, UK London, UK Southampton

トラブルシューティング

NetwrokManager アプレットを使って接続するには:

  • システムトレイの NetworkManager アイコンを右クリック。
  • "Configure Network Connections..." をクリック。
  • "Add" をクリック。
  • "Import VPN..." を選択。
  • 使用したい設定 (例: "/etc/openvpn/client/CA_Toronto.conf") を選択。
  • "Open" をクリック。
  • "Gateway:" から ":1198" を削除してドメイン名だけ残す。
  • "Username:" にユーザー名 (例: "p1234567") を入力。
  • "Password:" にパスワードを入力。
  • "Advanced..." をクリック。
  • "Custom gateway port:" を "1198" に設定。
  • "Security" タブをクリック。
  • "Cipher:" を "AES-128-CBC" に設定。
  • "HMAC Authentication:" を "SHA-1" に設定。
  • "OK" をクリック。

/etc/resolv.conf の設定が原因で NetworkManager は DNS の情報を漏洩します python-pia/#13。以下のスクリプトを使うことで問題を回避できます。漏洩が止まらない場合は IPv6 を無効化してみてください。

/etc/NetworkManager/dispatcher.d/pia-vpn
#!/bin/bash
#/etc/NetworkManager/dispatcher.d/pia-vpn

interface="$1"
status=$2

case $status in
  vpn-up)
    if [[ $interface == "tun0" ]]; then
      chattr -i /etc/resolv.conf
      echo -e "nameserver 209.222.18.222\nnameserver 209.222.18.218" > /etc/resolv.conf
      chattr +i /etc/resolv.conf
    fi
    ;;
  vpn-down)
    if [[ $interface == "tun0" ]]; then
      chattr -i /etc/resolv.conf
    fi
    ;;
esac

参照