踏み台サーバとSSH鍵管理による安全なリモートアクセス構築手順
1. 踏み台サーバの配置とネットワーク設計
踏み台サーバは、管理用のネットワークセグメントへ配置し、業務ネットワークとは分離する。業務サーバ側のファイアウォールでは、踏み台サーバからのSSH接続だけを許可し、それ以外の送信元からの接続をすべて遮断する。踏み台自体も単一障害点にならないよう、可能であれば二台構成として冗長化する。踏み台のOSは常に最新のセキュリティ修正を適用し、不要なサービスは停止する。sshd の設定ではパスワード認証を無効化し、公開鍵認証だけを許可する。root での直接ログインも禁止し、一般ユーザでログインした後に sudo を利用する運用とする。踏み台へログインできるユーザは、業務上必要な担当者に限定し、アクセス権の一覧を台帳で管理する。
2. SSH鍵の発行と配布および失効の運用
SSH鍵は、利用者ごとに ssh-keygen -t ed25519 コマンドで作成する。秘密鍵にはパスフレーズを設定し、ファイルの権限は600に制限する。秘密鍵をメールやチャットで送ることは絶対に避け、利用者本人が自分で作成した公開鍵だけを管理者へ提出する運用とする。公開鍵は、業務サーバの authorized_keys へ登録する。手作業で登録すると抜け漏れが起きるため、構成管理の仕組みや配布スクリプトで一括管理する方法が望ましい。鍵には有効期限を設け、定期的な更新をルール化する。担当者の異動や退職、端末紛失時には、対象の公開鍵を全サーバから速やかに削除し、失効を記録する。複数人での秘密鍵の共用は禁止し、誰がどの鍵を使ったのかを追跡できる状態を保つ。
3. 接続の監査と不正アクセスへの対応
踏み台サーバの認証ログは、集中ログ管理の仕組みへ転送して保管する。成功したログインと失敗したログインの両方を記録し、深夜や休日の不審なログイン、短時間の大量の失敗を監視対象とする。セッションの内容は、業務上必要な範囲で記録し、問題発生時の調査に使えるようにする。SSHの接続設定では、踏み台を経由する ProxyJump の設定を共通化し、利用者が直接業務サーバへ接続する経路を残さない。ssh -J を用いることで、踏み台経由の接続を一つのコマンドで実現できる。異常を検知した場合は、対象アカウントの鍵を一時的に失効させ、ログイン元を確認したうえで、必要に応じてアクセス権を見直す。アクセス権の棚卸しは定期的に実施し、不要になったアカウントと鍵を削除して、権限が残り続ける状態を防ぐ。