仮想プライベートネットワーク(VPN)

目次

【概要】

この章では、VPN (Virtual Private Network) 技術の中でも Linux でよく使用される OpenVPN および IPsec (IP Security) の使用方法について解説します。同時に L2TP についても知識として覚えておく必要があります。


【OpenVPNの基礎知識】

OpenVPN は SSL/TLS に基づくプロトコルで接続される VPN で、安全性と拡張性が高いのが特徴です。

▶ OpenVPNの接続方式

  • TUN (ルート接続): レイヤー3のIPレベルで接続し、ルーティングのような挙動
  • TAP (ブリッジ接続): レイヤー2のEthernetフレームを送信

▶ サーバーセットアップ

  1. OpenVPNのインストール:
sudo apt install openvpn easy-rsa
  1. 証明書(CA)とキーの生成
  2. /etc/openvpn/server.conf の設定
port 1194
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
server 10.8.0.0 255.255.255.0
persist-key
persist-tun
  1. サービス起動
sudo systemctl start openvpn@server

▶ クライアント設定

  • /etc/openvpn/client.conf にサーバ情報を設定

【IPsec (IP Security)の基礎知識】

IPsec はネットワークレベルで IP パケットを暗号化する技術で、第3者からの中間攻撃や特定診断を防ぎます。

  • 一般的に IPsec-Toolsracoon を使用
  • 認証:
    • 共通キー (pre-shared key)
    • 証明書(CA)

▶ 設定ファイル

  • /etc/ipsec-tools.conf: ここに SA(セキュリティアソーシエーション)やポリシーを設定
  • /etc/racoon/racoon.conf: ISAKMP (キー交換プロトコル)の設定
path pre_shared_key "/etc/racoon/psk.txt";

remote anonymous {
  exchange_mode main,aggressive;
  proposal_check obey;
  proposal {
    encryption_algorithm aes;
    hash_algorithm sha1;
    authentication_method pre_shared_key;
    dh_group 2;
  }
}

sainfo anonymous {
  encryption_algorithm aes;
  authentication_algorithm hmac_sha1;
  compression_algorithm deflate;
}

▶ キー設定

echo "remote_ip your_psk_key" > /etc/racoon/psk.txt

【L2TPの概要】

  • L2TP (Layer 2 Tunneling Protocol)はトンネルの二重化を行う技術で、IPsecと組み合わせることが多い
  • Linuxでは xl2tpdstrongSwan との連携が一般

【重要ファイル/コマンド一覧】

名稱概要
/etc/openvpn/*OpenVPNの設定ファイル
openvpnOpenVPNサーバ/クライアントプログラム
setkey手動で IPsec SA を設定するコマンド
/etc/ipsec-tools.confIPsec パケットフィルタ設定
/etc/racoon/racoon.confracoonのISAKMP設定

章末問題

問題1

OpenVPNで「TAP」デバイスを使用する主な目的はどれか?

A. IPレベルでのルーティングを行う
B. Ethernetレベルでのブリッジ接続を行う
C. ファイル転送専用のVPN接続を行う
D. DNSトンネリングを利用するため

解説

正解:B

解説:TAPはレイヤー2(Ethernet)を扱う仮想デバイスで、ブリッジ接続に使用されます。



問題2

IPsecで使用されるISAKMPの主な役割はどれか?

A. ファイアウォールルールの適用
B. IPヘッダの圧縮
C. 鍵交換とセキュリティポリシーの交渉
D. VPNユーザーのログ保存

解説

正解:C

解説:ISAKMP(Internet Security Association and Key Management Protocol)は、鍵交換とSA(セキュリティアソシエーション)の管理を行います。



問題3

racoonの設定ファイルのパスとして正しいものはどれか?

A. /etc/ipsec-tools.conf
B. /etc/openvpn/server.conf
C. /etc/racoon/racoon.conf
D. /etc/vpn/racoon.conf

解説

正解:C

解説:racoonはIPsecにおけるISAKMP実装であり、その設定ファイルは/etc/racoon/racoon.confです。



問題4

OpenVPNサーバー設定で、クライアントに割り当てるIPアドレスレンジを定義するディレクティブはどれか?

A. client-config-dir
B. tun-mode
C. server
D. local-address

解説

正解:C

解説serverディレクティブはOpenVPNサーバーがクライアントに割り当てるIPアドレスの範囲を定義します。


よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次