リソース

/

ACP 実習ノート

[第22回] サーバーパスワードを入力せずSSH接続する — QueryPie Webターミナル

サーバーアクセス制御

2026年11月9日

これまではDBの接続・参照・変更を試した。次は接続者ごとにパスワードを渡す代わりに、QueryPieでサーバー権限を与えたい。

 

実習Ubuntuを登録して開発者へSSHロールを付けた。QueryPieへログインし、サーバーとアカウントを選ぶだけで、パスワード入力なしにターミナルが開いた。

 

 

SSH接続先サーバーを登録する

 

ServersでSSH Operations Lab、acp-ssh-lab、Ubuntu、SSH、22番ポートを登録した。

 

画面1. 実習UbuntuをSSH Operations Labとして登録した。
画面1. 実習UbuntuをSSH Operations Labとして登録した。

 

分かりやすい名前なら利用者もアドレスを覚えず選べる。今回はOperations Lab Serversグループへ入れた。

 

 

サーバー認証情報をQueryPieへ登録する

 

グループにlabopsをQueryPie - Passwordで追加した。管理者がここへパスワードを登録するため、開発者へ個別に渡さずに済む。

 

画面2. labopsと接続情報を登録。画面でもパスワードは隠れている。
画面2. labopsと接続情報を登録。画面でもパスワードは隠れている。

 

Test ConnectionでSSH Operations LabへSSH・labopsによる接続成功を確認した。

 

画面3. サーバーとアカウントの接続テストが成功した。
画面3. サーバーとアカウントの接続テストが成功した。

 

付与前に管理者が疎通確認できて便利だった。アドレスと認証情報の準備はここで完了した。

 

 

接続ポリシーと作業記録を設定する

 

Operations Lab SSH PolicyでOperations Lab ServersのlabopsへのSSHを許可した。サーバー・アカウント・方式を一つに指定できる。

 

commandAuditとsessionRecordingをtrueにし、コマンドと画面の記録を有効にした。Errors(0)を確認して保存した。

 

画面4. SSHポリシーにコマンド監査とセッション録画を設定した。
画面4. SSHポリシーにコマンド監査とセッション録画を設定した。

 

Operations Lab Operatorへポリシーを接続した。このロールに対象サーバーとアカウントをまとめられた。

 

画面5. Operations Lab OperatorにSSHポリシーを接続した。
画面5. Operations Lab OperatorにSSHポリシーを接続した。

 

 

開発者へサーバーロールを付与する

 

Access ControlでDemo DeveloperにOperations Lab Operatorを付与した。DB実習と同じQueryPieアカウントにサーバー権限を追加した。

 

画面6. Demo DeveloperへOperations Lab Operatorを付与した。
画面6. Demo DeveloperへOperations Lab Operatorを付与した。

 

接続情報の配布ではなくユーザーとロールを関連付けた。担当やサーバーが変わっても誰がどの役割か管理できそうだ。

 

 

開発者はサーバーとアカウントを選んで接続する

 

Demo DeveloperのServersでOperations Lab Operatorを選ぶと、グループとSSH Operations Labが見えた。

 

選択するとlabopsとSSHが表示され、パスワード欄はなかった。Connectで新タブにWebターミナルが開いた。

 

画面7. 開発者は付与ロールからサーバーとアカウントを選んだ。
画面7. 開発者は付与ロールからサーバーとアカウントを選んだ。

 

管理者が登録した認証情報をQueryPieが使用する。開発者は自分のQueryPieアカウントで入り、サーバーパスワードを受領・保管しなくてよい。

 

 

ブラウザのターミナルで接続先を確認する

 

whoamiはlabops、hostnameはacp-ssh-lab、pwdは/home/labops。lsで実習ファイルも確認した。

 

画面8. Webターミナルでアカウント、サーバー名、作業パスを確認した。
画面8. Webターミナルでアカウント、サーバー名、作業パスを確認した。

 

別のSSHソフトを開かずブラウザで操作できた。接続できるサーバーとアカウントが整理され、Connectですぐ開く点が便利だった。

 

 

接続者とサーバーアカウントが一緒に残る

 

exit後、管理者のServer Access HistoryでDemo Developerを探すと、接続と終了がどちらもSuccessだった。

 

画面9. 接続履歴でユーザー、ロール、サーバーアカウント、対象を確認した。
画面9. 接続履歴でユーザー、ロール、サーバーアカウント、対象を確認した。

 

03:30:01〜03:31:59の記録にDemo Developer、Operations Lab Operator、labops、Web(Connection)が残った。

 

サーバー上はlabopsでも実際のQueryPie利用者が残り、アカウント名から作業者を探す手間が減る。

 

パスワードを伝えず必要な接続を提供できた点が最もよかった。管理者は登録とロール付与、開発者は自分のログインでWeb利用、終了後は人と使用アカウントを履歴で確認できた。

 

次は同じサーバーで参照コマンドを使いながら特定コマンドを制限し、接続後にできることも定めたい。

 

QueryPie Community 11.6.7と別途用意したUbuntu 24.04で実施した。

 

参考: サーバーの手動登録 · サーバーグループとアカウント管理 · 許可されたサーバーへの接続