Private Internet Access/AUR

提供: ArchWiki
2017年10月26日 (木) 20:46時点におけるKusakata (トーク | 投稿記録)による版 (カテゴリ変更)
ナビゲーションに移動 検索に移動

PIA は PIA によって提供されている有料の VPN サービスです。詳しくは 仕組み ページを見てください。

要件

PIA はほとんどのオペレーティングシステムをサポートしています。PIA の設定は大抵の場合、自動的に行われます。

ノート: 手動で PIA を設定する方法は PIA クライアントサポート ページの情報を読んでください。

先に openvpn のインストールが必要です。また、networkmanager を使用している場合 networkmanager-openvpn をインストールしてください。

インストール

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

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

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

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

使用方法

ノート: openvpn バージョン 2.4.0 現在、VPN の設定はサブフォルダに保存されます。参照: OpenVPN 2.4.0 update requires administrative interaction

自動ログインの有効化

自動ログインを有効にすることでコマンドラインでパスワードを入力しなくても 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
      chmod +w /etc/resolv.conf
      echo -e "nameserver 209.222.18.222\nnameserver 209.222.18.218" > /etc/resolv.conf
      chmod -w /etc/resolv.conf
    fi
    ;;
  vpn-down)
    if [[ $interface == "tun0" ]]; then
      chmod +w /etc/resolv.conf
    fi
    ;;
esac

参照