自宅にVPN接続して自宅経由でインターネットを利用するには squid版

ご自宅にVPNルータを導入して、外出先から自宅内のネットワーク機器を使用する場合があるかと思います。

外出先にて、PCやスマートフォンでインターネットを利用する場合。自宅にVPN接続後、自宅を経由してインターネットにアクセスするような設定を行うことで、VPNによりパケットが暗号化されるため、パケットの覗き見対策、セキュリティの強化につながるかと思います。

その実現方法は何通りかあるかと思いますが。ここでは、VPN接続中でも、任意のタイミングで「直接インターネット接続」「自宅経由で接続」を切り替えられるように。

自宅のPCにプロキシサービスのsquidをインストールする方法を記録しておこうと思います。

※注意:自宅へのVPN接続はOpenVPNを使用致しました。他のVPN接続方法(IPSec/L2TP、PPTP等)ではうまく動作しない可能性も御座いますので予めご了承下さい。


設定の全体的な流れ

次の流れになるかと思います。

  1. サーバ側(自宅PC)
    1. PC(パソコン)やSBC(シングルボードコンピュータ)にsquidサービスをインストール
    2. ファイアウォールの設定を変更(Fedoraの場合)
  2. クライアント側(外出先で使用するPC)
    1. 現在のグローバルIPアドレスを確認
    2. プロキシ設定
    3. グローバルIPアドレスが変わる=自宅経由でアクセスできているか確認

squidインストール手順

SBC(シングルボードコンピュータ)の場合

Ubuntuの場合、こちらの記事を御覧ください。

x86系PCの場合

x86系PCの場合、snapによるsquidのインストールが可能のようです。この記事は、FedoraをインストールしたNUCへのsquidインストール手順になります。

クラウドストレージ(Nextcloud)や動画ストリーミング(Emby)サービスを動かしていますが、まだまだサーバ性能に余裕がありそうです。

Fedoraは最新版(2019年1月現在、Fedora 29)にアップグレード済みです。

  1. Fedoraにログインします。rootで直接ログイン、sudoは省略致しました。
  2. snapをインストールしていない場合、次のコマンドでインストールします。
    dnf update
    dnf install snapd
  3. snapコマンドでsquidをインストールします。
    snap install squid-gary

  4. squidサービスを実行します。
    squid-gary.start

    既定の設定では、TCPポート番号3128でsquidサービスの待ち受け(LISTEN)が開始されると思います。詳細は次のコマンドで確認可能のようです。

    snap info squid-gary
  5. ファイアウォールの設定を変更して、外部からsquidサービスにアクセスできるようにします。
    firewall-cmd --permanent --add-service=squid
    firewall-cmd --reload

以上でsquidが動作するようになりました。

アクセスログ・キャッシュログは次のディレクトリに格納されるようです。tailコマンドでaccess.logを表示することで、squidの使用状況を確認できるかと思います。

cd /var/snap/squid-gary/current/var/log/squid
tail -f access.log


クライアント側の設定

現在、「直接インターネットに接続」した状態かと思います。グローバルIPアドレスを確認しておくと、あとで「自宅経由でインターネットに接続」されたかどうか確認が容易かと思います。

※19.2.21追記:グローバルIPアドレスは、下記のサイト等で調べられるようです。

適切なグローバルIPアドレスの調べ方がわからないため、ここでは方法のご紹介は控えさせて頂きます。「グローバルIPアドレス 確認」等で検索してみて下さい。

iPhone

Wi-Fi接続時、プロキシサーバを指定することは可能のようですが。

VPN接続後、プロキシサーバを設定する方法は、OpenVPNの場合難しいようです。

残念ながら、手元のiPhoneでは、プロキシサーバを使用する方法でVPN経由のインターネット接続はできませんでした。

iPhoneの場合、VPNプロキシ機能を持つWi-Fiルータを使用するほうが楽かもしれません。

Windows 10

Windows 10の場合、プロキシの設定は以下になります。

  1. 自宅にVPN接続して、SquidをインストールしたPCやSBCにアクセスできる状態にします。
  2. スタートメニューで「プロキシ」と入力、「プロキシの設定」を選択します。
  3. 画面を下にスクロール、「手動プロキシ セットアップ」を設定します。
    1. プロキシサーバーを使う:オン
    2. アドレス:squidをインストールしたPCのIPアドレス
    3. ポート:3128
    4. ローカル(イントラネット)のアドレスにはプロキシサーバーを使わない:チェックオン
    5. 次のエントリで始まるアドレス以外に・・・:自宅を経由せずに、直接接続したいアドレスがあれば入力します。
  4. 「保存」ボタンをクリックします。

これで「自宅経由でインターネットにアクセス」する状態になりました。次の3つを確認してみて下さい。

  1. Webブラウザなどで、正常にインターネットにアクセスできるかどうか。
  2. グローバルIPアドレスが変わったかどうか。恐らくご自宅のルーターのグローバルIPアドレスと同じになるかと思います。(※19.2.21追記:上述のIP Address Informationは、squid経由では正しくグローバルアドレスが表示されませんでしたが、自宅経由でアクセスしている確認にはなるかと思います。)
  3. squidのaccess.logにアクセス先のURL(アドレス)が記録されるかどうか。

squidのログですが、通信の内容は記録されませんが、アドレスが記録されるようです。アドレス内にたとえば何かのIDやメールアドレスのような個人情報・機密情報が含まれる場合がありますので、取り扱いはご注意下さい(定期的に消去する等)。

VPNルータをお探しでしたら、よろしければこちらの記事を御覧ください。


※19.10.27:Raspberry Piでsquidサーバを構築する記事へのリンクを追加しました。

スポンサーリンク

フォローする

スポンサーリンク