hkane8の技術ブログ

主にIT技術系で調査したこと等を備忘として記載します

【AWS】AWSのローカル開発で利用可能できるMiniStackのRDSを起動してみた

2026.5.3時点

目的

AWSのローカル開発に利用できるオープンソースのMiniStackを触ってみた

MiniStackは以下GitHubで公開されている github.com

環境

  • AlmaLinux 9
  • dockerインストール済
  • MiniStack 1.3.24

試してみた

GitHubのページに記載されている「Quick Start」を参考にやってみた。

(1)MiniStack起動

コマンド

docker run -p 4566:4566 -v /var/run/docker.sock:/var/run/docker.sock  ministackorg/ministack:full

※ RDS起動のために、-vで.sockファイルをマッピング指定

■実行結果

プロセス実行状態となったため、以下は(1)と別ウィンドウで実行していった。

(2)ステータス確認

MiniStackの状態を以下コマンドで確認する

curl http://localhost:4566/_localstack/health
curl http://localhost:4566/health

■実行結果 各サービスがavailableで利用可能と表示された。

(3)AWS CLIインストール

AWS CLIをインストールしていなかったのでインストールした。適当なディレクトリで以下を実行。
※ MiniStackをAWS CLIコマンドにてエンドポイントでローカル環境を指定して操作するため。

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

インストール後は、GitHubのページの「Using with AWS CLI」の記載を参考にconfigure設定。

aws configure --profile local

■実行結果

(4)RDS作成

実態はコンテナで起動して代替されるらしいので、下記パラメタで実際にRDSインスタンスを作ってみた。インスタンスタイプは存在するタイプを適当に指定してみた。

# 項目
1 エンジン postgres
2 DB名 mydb
3 管理者ユーザー admin
4 管理者パスワード secret
5 インスタンスタイプ db.t3.large
aws --profile local --endpoint-url=http://localhost:4566 rds create-db-instance --db-instance-identifier mydb --engine postgres --master-username admin --master-user-password secret --db-instance-class db.t3.large

■実行結果

MiniStackを起動したウィンドウにもメッセージが表示された。
表示から内部でIPアドレス172.17.0.3、ポート5432で起動されたと読める。

docker ps でコンテナ情報を確認すると、別のコンテナとしてRDSが起動していた。

(5)RDS接続確認

psqlコマンドで接続確認するために、AlmaLinuxにpostgresqlをインストール。

dnf install -y postgresql

■実行結果

(4)の作成結果、表示されていたIPアドレスとポート番号を指定して接続確認する

psql -h 172.17.0.3 -p 5432 -U admin -d mydb

※パスワードを聞かれるのでsecretを入力。

■実行結果
構築したRDSのpostgresqlのバージョンとクライアントのバージョンが異なるため警告メッセージは表示されるものの、接続できた。

以下の簡単な情報確認も実行してみた。

# 項目
1 バージョン確認 SELECT version();
2 テーブル確認 \dt
3 スキーマ確認 \dn
4 現在のユーザー確認 SELECT current_user;

■実行結果

exitでpsqlを終了する

■実行結果

以上です

【技術やってみた】 ローカルPCでSAML認証を確認できる環境を構築してみた

2026.2.11時点の情報です。

目的

SAML認証について、IdpとSPとのやりとりを理解したいと思い、ローカルPC上に確認できる環境を実際に構築してみた。 ローカルで動作検証することだけを目的として、手順を整理した。

構成

以下で構築してみた。

# OS 項目 ソフトウェア 補足
1 Windows11 ブラウザ Microsoft Edge ローカルPC
VM VirtualBox AlmaLinux9をゲストOSとして起動する
2 AlmaLinux9 IdP(Identity Provider) Keycloak 26.5.1 dockerのコンテナ(name=keycloak)で起動
3 SP(Service Provider) Apache 2.4.52 + mod_auth_mellon 0.18.0-1ubuntu0.1 dockerのコンテナ(name=sp)で起動

実施前の環境状態

Windows上にVirtualBoxをインストールして、VirtualBox上にゲストOSとしてAlamLinux9を構築済。
さらにAImaLinux上でdockerが利用できる状態。
AlmaLinuxのプライベートIPアドレスは192.168.56.101
docker versionの状態は以下。

構築手順

1.ldpの構築

(1) AlmaLinux上で、Idpを以下で起動。パスワードはローカル検証用としてadminとする。

docker run -d \
  --name keycloak \
  -p 8080:8080 \
  -e KEYCLOAK_ADMIN=admin \
  -e KEYCLOAK_ADMIN_PASSWORD=admin \
  quay.io/keycloak/keycloak:latest \
  start-dev

(2) Windowsブラウザで管理画面の確認
URLはローカル環境のアドレスです。

http://192.168.56.101:8080
ユーザ名: admin
パスワード: admin

ログイン画面

ログイン後画面

2.IdpとSPの連携準備

SP側のメタデータ作成

(1) AlmaLinuxにて、/root/docker/mellonディレクトリを作成し、作成したディレクトリで以下を実行。

メタデータ作成コマンドを実行するため、以下でmod_auth_mellonをインストール

sudo dnf install mod_auth_mellon

メタデータ作成コマンド

/usr/libexec/mod_auth_mellon/mellon_create_metadata.sh \
  https://192.168.56.101:8443/mellon \
  https://192.168.56.101:8443/mellon

■ 確認コマンド。cert、key、xmlの3ファイル作成されていることを確認。

ls  

(2) https_192.168.56.101_8443_mellon.xmlファイルをWindows上の適当なフォルダにSCPなどでコピーする。(後述するIdp管理画面からインポートするため)

IdP側へのSP登録

(1) 「1.ldpの構築」の(2)でログインした管理画面で、Managed realmsをクリック

(2) 「Create realm」をクリック

(3) 「Realm name」を適当に入力する。今回は「mellon」として「create」をクリック

(4) 作成した「mellon」が表示され、「Current realm」の表示があることを確認する

(5) Clients をクリックして 「Import Client」クリック

(6) 「Browse...」を押して、メタデータファイル(https_192.168.56.101_8443_mellon.xml)を選択する。
選択後自動的に値が入力されたことを確認して、「Save」をクリック

(7) 設定された情報が表示されることを確認

(8) 右上の「Action」をクリックして、「Download adapter config」をクリック

(9) ウィンドウが表示されるので、そのまま「Download」をクリック

keycloak-mod-auth-mellon-sp-config.zipファイルがWindows上にダウンロードされる。

(10) zipファイルを展開すると以下3ファイルが作成される。

  • client-cert.pem
  • idp-metadata.xml SP側設定時に必要なのはこのファイルのみ
  • sp-metadata.xml

sp側に必要なidp-metadata.xmlファイルをAlmaLinuxの/root/docker/mellon配下へ配置する。

(11) KeyCloakの画面の「Keys」タブをクリック

(12) 「Encryption keys config」の「Encrypt assertions」をOFF(無効)1にする。

無効にするか確認が表示されるので、Yesをクリック

OFFの表示となったことを確認する

(13) ブラウザからのログイン用ユーザーを登録するため、左のツリーの「Users」を選択し、「create new user」をクリック

(14) 任意の情報を入力する。ここではtestuserとする。
他の情報も入力して2 「Create」をクリック

(15) 作成されたユーザー名が表示されたことを確認して、パスワードを設定するために「Credentials」をクリック

(16) 「Set password」をクリック

(17) 設定する任意のパスワード入力し、TemporaryをOffにする3 。 入力したら「Save」をクリック

(18) 保存するか確認が表示されるので、「Save password」をクリック

(19) パスワードの行が表示されたことを確認する

3.SPの構築

SP側へのIdP登録

(1) AlmaLinux上で、/root/docker/sites-enabled/mellon.confファイルを以下内容で作成する。(コンテナSPのhttpd用定義)

<VirtualHost *:443>
    ServerName 192.168.56.101
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/server.crt
    SSLCertificateKeyFile /etc/apache2/ssl/server.key

    <Location / >
        MellonSPPrivateKeyFile /etc/apache2/mellon/https_192.168.56.101_8443_mellon.key
        MellonSPCertFile /etc/apache2/mellon/https_192.168.56.101_8443_mellon.cert
        MellonSPMetadataFile /etc/apache2/mellon/https_192.168.56.101_8443_mellon.xml
        MellonIdPMetadataFile /etc/apache2/mellon/idp-metadata.xml
        MellonEndpointPath /mellon

        MellonSecureCookie On
        MellonCookieSameSite None
    </Location>

    <Location /mellon>
        MellonEnable "info"
    </Location>

    <Location /protected>
        AuthType Mellon
        MellonEnable "auth"
        Require valid-user
    </Location>

</VirtualHost>

(2) SPを起動するためのDockerFileを以下内容で作成する。場所は/root/docker/Dockerfile

FROM ubuntu:22.04

RUN apt-get update && \
    apt-get install -y apache2 libapache2-mod-auth-mellon openssl && \
    a2enmod auth_mellon && \
    a2enmod ssl

# SSL 証明書(HTTPS 用)
RUN mkdir -p /etc/apache2/ssl && \
    openssl req -new -x509 -days 365 -nodes \
      -out /etc/apache2/ssl/server.crt \
      -keyout /etc/apache2/ssl/server.key \
      -subj "/C=JP/ST=Tokyo/L=Tokyo/O=Example/OU=oreore/CN=192.168.56.101"

# protected ディレクトリと テスト用HTML を作成
RUN mkdir -p /var/www/html/protected/other && \
    echo '<html><body><h1>SAML SUCCESS!</h1><a href="/protected/other/">Go to OTHER</a></body></html>' \
        > /var/www/html/protected/index.html && \
    echo '<html><body><h1>OTHER PROTECT DIR</h1><a href="/protected/">Back to PROTECTED</a></body></html>' \
        > /var/www/html/protected/other/index.html    

CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]

(2) /root/dockerディレクトリで、以下ビルド実行する。

docker build -t mellon-sp .  

(3) 以下コマンドを実行しSPを起動する。-vで、AlmaLinux上のmellonディレクトリ、mellon.confファイルをコンテナ(sp)から参照する

docker run -d \
  --name sp \
  -p 8443:443 \
  -v /root/docker/mellon:/etc/apache2/mellon \
  -v /root/docker/sites-enabled/mellon.conf:/etc/apache2/sites-enabled/mellon.conf \
  mellon-sp

(4) AlmaLinux上で、以下コマンドでSPのコンテナが起動していることを確認する
docker ps
※ NAMESが「sp」の情報が表示されたら成功。

4.確認

(1) Windowsのブラウザから以下URLにアクセスする。
※ローカル環境のリンクURLです。
https://192.168.56.101:8443/
保護対象外のパスのため、認証なしでhttpdデフォルトのページ内容が表示される。

(2) 保護してるパスにアクセスする。
※ローカル環境のリンクURLです。
https://192.168.56.101:8443/protected
保護対象のため、リダイレクトされてIdpのKeyCloakのログイン画面が表示されるので、ユーザーとパスワードを入力してsign inをクリック

(3) テスト用HTMLの内容であるSUCCESS画面が表示された!

以上です。


  1. 「Encryption keys config」の「Encrypt assertions」を無効化しないとリクエストが復号できず、以下Apacheのエラーログに出力された
    Error processing authn response. Lasso error: [-427] When looking for an assertion we did not found it., SAML Response: StatusCode1="urn:oasis:names:tc:SAML:2.0:status:Success", StatusCode2="(null)", StatusMessage="(null)"
  2. Email、FirstName、LastNameを設定しないと「4.確認」(2)の初回認証時に設定画面が表示されたため設定。
  3. Offにしないと、「4.確認」(2)の初回認証時にパスワード設定が必要なったため設定。

【JP1】JP1/AJS3でジョブ実行するためのJP1/Baseのユーザー関連設定

2025.12.28時点の情報

メモ

JP1/AJSをManager1台とAgentで構築する際、JP1/Baseに必要な設定を毎回忘れて確認しているため、自分用の備忘として残しておく。

no. 画面のタブ名 設定 JP1/AJS3 Managerのサーバー JP1/AJS3 Agentのサーバー
1 認証サーバ 認証サーバー 自サーバー1 (設定不要)
2 認証サーバ JP1ユーザー関連 JP1/AJS Viewでログインするユーザーパスワード、JP1の権限 (設定不要)
3 ユーザーマッピング パスワード管理 5のマッピングで利用するOSユーザーのパスワード2 5のマッピングで利用するOSユーザーのパスワード3
4 ユーザーマッピング JP1ユーザー 5のマッピングで設定するJP1ユーザー 5のマッピングで設定するJP1ユーザー
5 ユーザーマッピング ユーザーマッピング 3のOSユーザーと4のJP1ユーザーの紐付け 3のOSユーザーと4のJP1ユーザーの紐付け



  1. JP1バージョン13のマニュアル「Base運用ガイド」→「8.1.1 使用する認証サーバを指定する」に、JP1/AJS3 ManagerなどJP1/Baseの認証を利用する製品がインストールされたホスト上で指定が必要な旨記載あり
  2. JP1バージョン13のマニュアル「Base運用ガイド」→「8.1.6 GUIを使ってユーザーマッピングを設定する」「(1) [パスワード管理]での設定」に、各ホストで設定が必要な旨記載あり
  3. 2.と同様

【AI】Ollamaは本当にインターネット接続しないで回答生成しているのか、Windowsファイアウォールでブロックして試してみた

概要

以下記事でインストールしたOllamaを利用する際、インターネット接続なしで利用できているのか気になったので、WindowsファイアウォールでブロックしてOllamaが回答生成してくれるか試してみた。2025.8.15  再度ollama.exeもブロックして確認した結果を反映した。

結論

インターネット接続できない状態でプロンプト入力しても回答が生成された。

 

以下、試した内容。

環境

・OS:Windows 11 Pro

・CPU:Intel(R) Core(TM) Ultra 5 125U   1.30 GHz

・メモリ:16.0GB

・Ollamaバージョン:0.11.3

 

ファイアウォールでOllama送受信をブロックして試してみた

1.Ollamaは「ollama app.exe」であることをタスクマネージャより確認した。

 

また、「ollama.exe」も起動されていることを確認した。

 

2.Windowsファイアウォール設定で、送信も受信もブロック設定した。

  ollama app.exe、ollama.exeは、C:\Users\ユーザー名\AppData\Local\Programs\Ollama 配下にあるので、それぞれのexeについて、送信と受信をブロック設定。

 

 

3.プロンプトを入力したら、インターネット接続なしの状態で回答が生成された。(下記スクリーンショットは一部ですが、複数のモデルを回答してもらえた。)



 

 

以上です。

 

【AI】OllamaのLLMを選択してみた

概要

以下記事でインストールしたOllamaで、利用するLLMを選択してみた。

hkane8.hatenablog.com

環境

・OS:Windows 11 Pro

・CPU:Intel(R) Core(TM) Ultra 5 125U   1.30 GHz

・メモリ:16.0GB

・Ollamaバージョン:0.11.3

 

利用するLLM(大規模言語モデル)を確認

1.画面の右下にあるプルダウンを押すとLLMが複数表示された。選択しているLLMが回答で利用されるLLM。

 

2.コマンドでLLMを確認してみた

  ollama list

LLMが何も表示されてない。ローカルPC上にはLLMがまだない状態ということ。

 

3.ためしにgemma3:4bを選択して、質問を入力して送信してみたら、モデルのダウンロードが始まった!

 

 

4.ダウンロードが終わったら、AIが回答を生成した

 

 

5.コマンドでLLM確認すると、gemma3:4bが表示された!

 

 

以上です。

 

【AI】PCにOllamaをインストールしてみた

※2025.8.8時点

概要

AIについて検索していると、Ollmaという「ローカル環境で大規模言語モデル(LLM)を簡単に実行できるオープンソースのツール」があるとわかった。インストールしてみた。

 

環境

・OS:Windows 11 Pro

・CPU:Intel(R) Core(TM) Ultra 5 125U   1.30 GHz

・メモリ:16.0GB

・インストールしたOllamaバージョン:0.11.3

 

インストールしてみた

1.以下Ollamaの公式ページにアクセスして、ダウンロードした

ollama.com


2.ダウンロードしたOllamaSetup.exeを実行した

 

3.インストール中の画面が表示された。少し待った。


4.途中でMicrosoft Visual C++ ランタイムのインストールでなかなか進まなくなったと思ったら、別ウィンドウでアクセス制御のウィンドウが表示されていた。続行したら、以下の画面でインストールが始まった。

 

4.少し待ったらインストール完了したようで、自動的に以下画面が表示された。

補足:

Ollamaのバージョンを知りたかったので、Powershellでバージョン確認してみた。

   ollama --version

 

以上です。

 

【AWS】WindowsのEC2インスタンスのキーペアについて調べてみた

※2025.6.14時点

公開情報が見つけられてない箇所は自分用メモとして、推測で記載しておく。

概要

AWSWindowsのEC2インスタンスを作成した際の、キーペアがどう利用されるのかが気になったので調べて、シーケンスにしてみた。公開情報がない部分は、推測して整理してるので、誤りがある可能性は残る。

 

整理した情報とシーケンス(推測含む)

秘密鍵AWS上に保管されないため、なくしても再ダウンロードできない。

・公開鍵はWindows上には保管されない可能性が高い

→ インスタンスメタデータはそのインスタンス自体からリンクローカルIP(169.254.169.254のやつ)に都度リクエストを送信して値を取得するため、Windowsでは、メモリ上で公開鍵を一時的に利用し、永続的な保管はしないと推測している。

 

 

参考

 

 

docs.aws.amazon.com

 

以上です。