raspberry piにVPNサーバーを構築する

Raspberry pi2にVPNサーバーを構築します。これで、ある程度、安心してホテル等の無料Wifiを使ったり、家の共有サーバーにある動画を見たりできます。

システムを最新にして、必要なソフトをインストールします。

<br />
sudo apt-get update<br />
sudo apt-get upgrade<br />
sudo apt-get install lsof openswan xl2tpd<br />

カーネルパラメータを記述する設定ファイルを修正して、IPフォワードを有効にします。

<br />
sudo vi /etc/sysctl.conf</p>
<p>以下を追加。</p>
<p>##############################################################<br />
# VPN<br />
net.ipv4.ip_forward=1<br />
net.ipv4.conf.all.send_redirects=0<br />
net.ipv4.conf.all.accept_redirects=0<br />
net.ipv4.conf.default.send_redirects=0<br />
net.ipv4.conf.default.accept_redirects=0<br />
net.ipv4.conf.eth0.send_redirects=0<br />
net.ipv4.conf.eth0.accept_redirects=0<br />
net.ipv4.conf.lo.send_redirects=0<br />
net.ipv4.conf.lo.accept_redirects=0<br />

有効にします。

<br />
sudo sysctl -p<br />

IPsecを設定します。

<br />
sudo vi /etc/ipsec.conf</p>
<p>以下を追加。</p>
<p>conn L2TP<br />
    keyingtries=0<br />
    type=transport<br />
    compress=yes<br />
    authby=secret<br />
    forceencaps=yes<br />
    pfs=no<br />
    auto=add<br />
    ike=aes-sha1;modp3072<br />
    phase2=esp<br />
    phase2alg=aes-sha1;modp3072<br />
    rekey=no<br />
    salifetime=3h<br />
    ikelifetime=1h<br />
    left=192.168.X.XX # Raspberry PiのIPアドレスにする<br />
    leftprotoport=17/1701<br />
    right=%any<br />
    rightprotoport=17/%any<br />

<br />
sudo vi /etc/ipsec.secrets</p>
<p>以下を変更。192.168.X.XXはRaspberry PiのIPアドレス、SECRETはiPhoneのL2TPのシークレットに入力。</p>
<p>192.168.X.XX %any: PSK &quot;SECRET&quot;<br />

有効にします。

<br />
sudo service ipsec restart<br />

チェックします。

<br />
sudo ipsec verify<br />

もしfailになるなら、一旦、再起動を行い、ipsecを起動します。

L2TPを設定します。

<br />
sudo vi /etc/xl2tpd/xl2tpd.conf</p>
<p>以下を追加。<br />
ip range = 192.168.X.FROM - 192.168.X.TO は、外からの接続で、このIPが割り振られる。<br />
local ip = 192.168.X.XX は、Raspberry PiのIPアドレスにする。</p>
<p>[global]<br />
port = 1701</p>
<p>[lns default]<br />
ip range = 192.168.X.FROM - 192.168.X.TO<br />
local ip = 192.168.X.XX<br />
length bit = yes<br />
refuse chap = yes<br />
require authentication = yes<br />
pppoptfile = /etc/ppp/l2tpd.pppopt<br />

<br />
sudo vi /etc/ppp/l2tpd.pppopt</p>
<p>以下を追加。</p>
<p>asyncmap 0<br />
auth<br />
crtscts<br />
lock<br />
modem<br />
debug<br />
proxyarp<br />
lcp-echo-interval 180<br />
lcp-echo-failure 3</p>
<p>refuse-pap<br />
refuse-chap<br />
refuse-mschap<br />
require-mschap-v2</p>
<p>ms-dns 8.8.8.8<br />

<br />
sudo vi /etc/ppp/chap-secrets</p>
<p>以下を追加。UserNameはiPhoneのL2TPのアカウントに入力。Passwordはパスワードに入力。</p>
<p>UserName * Password *<br />

有効にします。

<br />
sudo service xl2tpd restart<br />

再起動時に実行できるようにします。

<br />
sudo insserv ipsec<br />
sudo insserv xl2tpd<br />

シェアする

  • このエントリーをはてなブックマークに追加

フォローする