as the Wind Blows ...

パソコン、プログラミング、車、写真、etc...

Amazon AWS 体験談 (1)

 最近遅ればせながらAmazon AWSとはどんなものか、料金はどうなのか調べるきっかけがあったので内容をメモしておこうと思います。

 

きっかけはこのブログでも書いたことがある自宅のネットワーク構成に変更を入れたことでした。自宅はグローバルIPがもらえないマンションのネットワークを使っているため自宅サーバーを公開するのに外部のVPSを借り、VPS上に作ったVPN接続して外部からアクセスできるようにしています。

vonvon.hatenablog.com

自宅ネットワーク内では複数のサービスを外部からアクセスできるようにしていて、HTTP系のサービスが3つ(Emby, EPGStation, Wordpress)、Linux メインサーバーへアクセスするための踏み台 SSHサーバー1つを公開しています。SSHサーバーへのアクセスは、Proxyにより使用可能ポートが制限された環境にある私の職場ネットワークからもアクセスできるようにポート443を使っていました。HTTP系のサービスはすべて使用するポートが異なっていたので、それぞれポートを開放して使っていました。

 

最近環境の変化で、自宅外からHTTP系のサービスにアクセスする機会が以前より増えたのですが、その際にアクセスに使うブラウザのアドレス欄に表示される「安全でないサイト」の警告が気になってしょうがなくなってきました。そこで格安のSSL証明書を購入し、HTTP系のサービスをすべてSSL対応してHTTPS化しました。そのためこれまでSSH用に使っていたポート443がHTTPSで埋まってしまうという事態が発生しています。

 

VPS側にDockerのnginxコンテナをリバースプロキシとして動作させ、自宅内のサービスに割り振っています。そのためSSL対応しているのはクライアントーVPS間だけです。nginxを調べてみると、ポート443にHTTPSSSHを共存させ、SSL通信の場合はHTTPS、non-SSLの場合はSSHのような動作をすることが可能で、試してみる限り問題なく動作したのですが、proxy protocolを有効にしないと自宅サーバー内でアクセス元のIPアドレスが参照できないという事態が発生しました。Apache等それぞれのサービスを個々にproxy protocolに対応させればReal-IPは参照できるのですが、proxy protocol に対応していないサービスには適用できず、使用を泣く泣く断念することになってしまいました。

 

となるとポート443はうちではSSHには使えません。残るはポート80ですがポート80をSSHに使うのは技術的にはなんの問題もなく、不自由なくつかえるものの頻繁に外部からアクセスが来る可能性が高いポート80でSSHを使うのは気持ちが悪く辞めました。

 

そのため外部にもう一つ踏み台となるVPSを借りようという結論になり、VPSや同等のサービスについて調べ始めたというのがきっかけです。