VPS上のCent OS8 Streamにsoftether入れて自宅鯖を公開してみた編
最初に:
検索でよく出てくる[物理LANカードとのローカルブリッジ]とか[SecureNAT]は使わずにVPNからインターネットへ通信を通すよ
理由:
1.ふつうにローカルブリッジするとVPNのネットとVPN鯖の間で通信ができにゃい(VPN鯖からVPNでつにゃいだ自宅鯖の間で通信できにゃい、それ以外のインターネットはできる)
2.SecureNAT使うとMastodonのStreamingが前触れにゃく切れて使い物ににゃらにゃい(それ以外のVPN通信は問題にゃさそうだった)
手順:
とりあえずOSの基本的にゃ設定とSoftetherの最初のセットアップをしちゃうよ、どちらも最新版にアップデートしていこうね、仮想HUBを作ってアカウントも作ろう、DDNS・Azure・NATトラバーサルは必要にゃいから無効化しちゃうよ、Nginxが443で待ち受けることににゃるからもう443ポートの設定も消しちゃうよ、firewalldでserviceファイル作って993,1194,5555,8888,500,4500を許可してね
VPS上のCent OS8 Streamにsoftether入れて自宅鯖を公開してみた編
手順2:今回はL2TPでMacOS Serverとつにゃぐからその機能を有効化してね、そしたらブリッジの設定をしていくよ、CentOS8 Streamはnmcliで管理するらしい、bridgeとしてbr0を作ってnmcliで新しいIPアドレスとかを固定してね、このVPSがルータににゃるからね、専用のセグメントにしよう、
https://qiita.com/kanatatsu64/items/b7b8eca17202386d27e3
が理解を助けるよ、cとdは違う概念だからね、そしたらVPN管理ツールからローカルブリッジで仮想HUBと新しいtapデバイスとをブリッジしてね、そのあとsystemctlの自動起動serviceに
ExecStartPost=/usr/bin/sleep 5s
と
ExecStartPost=/usr/sbin/ip link set dev tap_vpn(任意のtapデバイス名) master br0
の行を追加してね、brctlは今は使わにゃいらしくipコマンドでブリッジさせるよ、
VPS上のCent OS8 Streamにsoftether入れて自宅鯖を公開してみた編
ファイル書いたらdaemon-reloadかけてからvpnserverを再起動させるよ、ip addr showでbr0にだけIP振られているのを確認してね、これでこのbr0のIPでVPNのクライアントからこの鯖にローカルでつにゃがるようににゃるよ、こっからはこのbr0をインターネットにつにゃげたい、SecureNATがやってくれているNATとDHCPを自分で作ってくよ、まずはDHCPサーバーをセットアップしてIPアドレス自動取得できるようにする、yumでdhcpdを入れて/etc/dhcp/dhcpd.confを書いてくよ、基本はSecureNATのDHCP鯖の設定と似てるよ、これも自動起動できるようにサービス登録しておこう、そしたら次にNATを設定していく、IPマスカレードってやつができればいい、nmcliでインターフェースのゾーンをVPSのWAN(ens3とか)はexternalでbr0をinternalに変更してやる、そしてnmcliで両方のゾーンにマスカレードを設定する
うちが「インターネット無料物件」とかいうとこでプライベートIPしか降ってこにゃいため自宅鯖の公開を諦めてたんですが、これでできました、ネットの情報に感謝感謝、あとは自宅鯖を整備していくぞ…