オープンソースの特権ID管理で特権IDでのAWSサーバーへのアクセスを制御

schedule 2021/04/26  refresh 2023/11/09

 

オープンソースの特権ID管理ソフトウェアSeciossPrivilegedIDを使用して、AWSのLinuxサーバーに対する特権IDでのログインを制御する方法を解説します。

 

SeciossPrivilegedIDは、専用アプリのインストールは必要なく、ブラウザからLinuxサーバーにログインすることができます。

 

SeciossPrivilegedIDのインストール

SeciossPrivilegedIDは、AWSのサーバーにssh接続が可能で、インターネットからアクセス可能なネットワークに存在するサーバーにインストールして下さい。

 

インストールは、SeciossPrivilegedIDのサイトの手順に従って行って下さい。

 

 

特権IDの設定

SeciossPrivilegedIDの管理コンソール(https://<LISMサーバー>/seciossadmin/)にログインして下さい。

 

ゲートウェイサーバーの設定

「特権ID管理」-「ゲートウェイサーバー」に、SeciossPrivilegedIDサーバーを設定して下さい。

 

項目
ゲートウェイサーバーID SeciossPrivilegedIDのインストール時にgateway-setup.sh実行時に設定したGateway ID
表示名 任意
ホスト名 SeciossPrivilegedIDのホスト名
ゲートウェイサーバー証明書 SeciossPrivilegedIDサーバーの証明書ファイル(/opt/secioss-gateway/www/simplesamlphp/cert/PublicKey.pem)

 

ターゲットの設定

「特権ID管理」-「ターゲット」にsshでログインするAWSのサーバーを設定して下さい。

 

項目
ターゲットID サーバーを識別するID
ターゲット名 任意
ゲートウェイサーバー 先程設定したゲートウェイサーバーを選択
接続形式 ssh
接続先 sshでログインするサーバー
ポート番号 22

 

特権IDの設定

「特権ID管理」-「特権ID」から、AWSのサーバーの特権ID(root)を設定して下さい。

 

項目
サービス 先程設定したターゲットを選択
ログインID root
公開鍵 AWSサーバーのsshの公開鍵
/root/.ssh/authorized_keysの1行目の内容を登録して下さい。
秘密鍵 AWSサーバーのsshの秘密鍵

 

ユーザーへの特権IDの割り当て

「ユーザー」-「新規登録」から、ユーザーを追加して、「特権ID」タブから特権IDを割り当てます。

 

サービス AWSサーバーのターゲットIDを選択
ログインID root
取消契機 期間指定、または無期限

 

 

認証の設定

SseciossPrivilegedIDの認証はSAMLで行います。

 

今回はSAMLのIdPとして、SeciossLinkを使用します。SeciossLinkは評価版をこちらから申し込むこともできます。

 

SAML の設定

SeciossLinkの管理コンソール(https://slink.secioss.com/seciossadmin/)にログインして、「シングルサインオン」-「SAML」の「登録」から、SAMLのSPとしてSeciossPrivilegedIDを設定します。

 

項目
サービスID SPを識別するID
サービス名 任意
エンティティID https://<SeciossPrivilegedIDのホスト名>/shibboleth-sp
Assertion Consumer Service https://<SeciossPrivilegedIDのホスト名>/Shibboleth.sso/SAML2/POST
IDの属性 urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
ユーザーIDの属性 ユーザーID

 

SeciossPrivilegedID側のShibboleth SPの設定で、IdPのメタデータはhttps://slink.seicoss.com/saml/metadata.php?tenant=<テナントID>からダウンロードして下さい。
また、IdPのエンティティIDには、https://slink.secioss.com/<テナントID>を設定して下さい。

 

ユーザーの登録

「ユーザー」-「新規登録」でユーザーを追加して下さい。

ユーザーのユーザーIDは、SeciossPrivilegedIDの管理コンソールから登録したユーザーのユーザーIDと同じ値にして、許可するサービスに先程設定したSAML SP(SeciossPrivilegedID)を設定して下さい。

 

 

AWSサーバーへのログイン

AWSサーバへブラウザからログインします。

 

以下のURLにアクセスすると、SeciossLinkのログイン画面が表示されるので、ログインするとSeciossPrivilegedIDサーバーのsshコンソール画面が表示されます。

 

 

 

今回はsshサーバーへのログインについて解説しましたが、SeciossPrivilegedIDはWindowsサーバーやDBサーバーへのログインを制御することも可能です。