DL-iNetのトラベルルーターでPPTPする
私はトラベルルーターが好きだ。出張先で使うためにいくつか所有している。
最近のお気に入りはDL-iNetのMicrouter-N300 (Microuter)とGL-AR750 (Creta) のふたつ。
どちらもコンパクトなサイズで出張のお供に連れて行くには十分小さい。特にMicrouterはとにかく小さく、電源もUSB給電で十分なので結構使い勝手が良くてお気に入り。
両機種共にOpenVPNとWireGuardのサーバー、クライアント機能が搭載されており出張先から自宅に設定しているOpenVPNサーバーに接続しホームネットワーク上のNASストレージからファイルを持って来たり旅先で撮りためた写真やビデオを転送しておいたりと重宝している。

しかしデフォルトでPPTP接続には対応しておらずPPTP接続が必要になった際に仕方なくアンドロイドスマホの標準機能を使っていた。

PCにファイルを保存したい時にスマホのテザリングを使うとか、一旦スマホにDLしたものをPCに転送するなど一手間増えることもあり使い慣れたトラベルルーターからPPTP出来るようにしたかった。
DL-iNetのトラベルルーターにはOpenWrtが搭載されているものが多くあり、これを利用すれば結構あっけなく機能追加が可能。
まずPCからルーターにrootとしてSSH接続。パスワードはルーターに設定しているパスワードと同じで良い。
ssh root@192.168.8.1

上のような画面になったら以下のコマンドをプロンプトにコピペしてリターン。
7-9行目は自分の環境にあわせてサーバーアドレス、ユーザーID、パスワードを入れる。
# Install packages
opkg update
opkg install nano kmod-pptp ppp-mod-pptp vpn-policy-routing luci-app-mwan3 luci-i18n-mwan3-en kmod-nf-nathelper-extra
# Configuration parameters
PPTP_IF="vpn"
PPTP_SERV="*********"
PPTP_USER="*********"
PPTP_PASS="*********"
# Configure kernel parameters
cat << EOF >> /etc/sysctl.conf
net.netfilter.nf_conntrack_helper=1
EOF
/etc/init.d/sysctl restart
# Configure firewall
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci del_list firewall.wan.network="${PPTP_IF}"
uci add_list firewall.wan.network="${PPTP_IF}"
uci commit firewall
/etc/init.d/firewall restart
# Configure network
uci -q delete network.${PPTP_IF}
uci set network.${PPTP_IF}="interface"
uci set network.${PPTP_IF}.proto="pptp"
uci set network.${PPTP_IF}.server="${PPTP_SERV}"
uci set network.${PPTP_IF}.username="${PPTP_USER}"
uci set network.${PPTP_IF}.password="${PPTP_PASS}"
uci set network.${PPTP_IF}.ipv6="0"
uci commit network
/etc/init.d/mwan3 disable
/etc/init.d/mwan3 stop
/etc/init.d/network restart
ここまでやれば既にターゲットのサーバーにPPTP接続されているはず。
OpenWrtの標準インターフェイスであるLuciをインストールしてやれば接続、停止、削除等の管理も簡単に出来る。

