前回の記事でセキュリティについての指摘を受けたので、改善策を練ってみました。
hw_serverへ転送することの脆弱性について
まず、この方法だと、リモートサーバのIPアドレスと、ポート13121が開いているということがわかってしまうと、誰でも会社のhw_serverにそのまま接続できてしまうということです。
hw_serverは世間一般から見ればマイナーなプログラムで、これを対象に攻撃してくる人はいないでしょうが、おそらく未知の脆弱性をいっぱい持っているから、そんなポートが開いていないほうがよろしいだろうと。
まさにそのとおりだと思います。
AWSはデフォルトの設定でいこう
そこで、AWSで借りたリモートサーバのポート13121はやっぱり閉じて、AWSはSSH(ポート22)だけを開けておくようにします。要するにデフォルトの設定のままです。
AWSのログインのための証明書は、会社と自宅の両方のPCで持っておきます。
(もしくはパスワードでログインできるようsshdの設定を変えます。セキュリティ警察の人からクレームが来そうですが(^^
自宅でもSSHのポートフォワードを設定
自宅のTeraTermでもSSH転送の設定を行い、ローカルの13121をリモートの13121に転送するようにします。
会社のTeraTermはリモートの13121をローカルの3121に転送するようにするのは前回と同じです。
自宅と会社でSSHポートフォワーディングの向きが逆になる点に注意してください。
このようにすることで、
- 会社も自宅も、外部のサーバに通常のSSHをしているだけのように見える
- 会社のNATやファイアーウォールの設定を変えなくても自宅や移動中のモバイルPCから入れるようになる
- 証明書を持っていない人(あるいはSSHサーバのパスワードをしらない人)はこのトンネルに入れないのでセキュリティ的にもかなり強くなった
気になる速度は
XCZU2CGへの書き込みには約2~3秒だったので、体感速度的には低下していません。
ILA (Integrated Logic Analyzer)も問題なく動きました。
これで安全快適に、テレワークによるFPGA開発ができますね。