SSH 多段接続で三段先のサーバに接続する
SSH の ProxyCommand を使うと接続先サーバで自動的に指定コマンドを実行出来ます。これを利用することで「サーバ A に接続し、そこからサーバ B に接続する(二段接続)」ということが出来ます。更に、これを応用すると「サーバ A に接続し、そこからサーバ B に接続し、更にサーバ B からサーバ C へ接続する(三段接続)」ということも出来ます(四段以上の接続も可能です)。今回は多段 SSH の設定方法をメモしておきます。
SSH の ProxyCommand を使うと接続先サーバで自動的に指定コマンドを実行出来ます。これを利用することで「サーバ A に接続し、そこからサーバ B に接続する(二段接続)」ということが出来ます。更に、これを応用すると「サーバ A に接続し、そこからサーバ B に接続し、更にサーバ B からサーバ C へ接続する(三段接続)」ということも出来ます(四段以上の接続も可能です)。今回は多段 SSH の設定方法をメモしておきます。
Let's Encrypt を使うと無料で SSL/TLS サーバ証明書を発行することが出来ます。Let's Encrypt を利用する際、以前は letsencrypt-auto というツールを使ったのですが、現在は certbot-auto というツールを使います。基本的な使い方はあまり変わらないのですが、今回は certbot-auto の使い方をメモしておきます。また、後半で証明書の自動更新についても記載しています。詳細は後述しますが、Let's Encrypt での証明書取得は単位時間辺りの枚数制限がありますので、頻繁過ぎる更新は避けるべきです。
sopenssl コマンドは様々なことが実行できますが、HTTPS の接続テストに使うことも出来ます。今回は openssl を使って SSL/TLS バージョンを明示的に指定した接続テストの方法をメモします。
EC2 インスタンスから S3 バケットをマウントする手順として、以前に EC2 上の CentOS7 から S3 をマウントする(API 利用編) というメモを書きました。この方法ではアクセスキー/シークレットキーを EC2 インスタンスの中に保存しましたが、IAM ロールを使えば EC2 インスタンス内に情報を保存する必要が無くなり、セキュリティが向上します。
goofys を使って AWS の EC2 上に作った CentOS7 から S3 をマウントするには以下のようにします。EC2 のインスタンスは「CentOS 7 (x86_64) - with Updates HVM (2016/02/26)」をベースにしました。今回は AWS の API を使ってマウントしていますが、IAM ロールを使ってマウントする方法 もあります。
macOS から Linux 等へ SSH する際、LANG 環境変数を渡して欲しく無い… という場合があります。こういった場合は macOS の /etc/ssh/ssh_config を下記のように変更します(SendEnv をコメントアウトします)。
HTTP のテストを行う際に curl を使うことは出来ますが、httpie を使うと「結果を色分け表示する」「JSON を整形して表示する」等、より人間にとって見やすく結果を表示することが出来ます。
macOS であれば Homebrew で簡単にインストール出来ます。
1 |
|
httpie のコマンドは httpie では無く、http です。 http --help でヘルプを表示出来ます。
Let's Encrypt を使うと無料で証明書を発行することが出来ます。今回は Ubuntu 16.04 + Apache 環境で Let's Encrypt で証明書を発行する手順をメモしておきます。
Web のデバッグには Fiddler が非常に便利です。Fiddler は .NET Framework 上で動作するので原理的には Windows 以外の OS でも動作可能です。macOS の場合は Homebrew Cask でインストール可能です。
ownCloud へ (ブラウザでは無く) コマンドラインからアップロード/ダウンロードしたい時には curl を使うと便利です。