極北別世界通信

極北別世界通信

シングルサインオン

ようやくKeycloakでのシングルサインオンに手を付けた。

とはいえインターネット経由で使えるようにするとなるとまたSSLの設定やらなんやら必要ですし中々面倒ですな。

まぁ構築後の面倒をさけるための構築なんだからしょうがないんですが。

ちなみにKeyCloakは、単にテスト用程度に構築する分には実はそれほど難しくありません。

JDKのインストール

# yum update -y
# yum install java-1.8.0-openjdk

keycloakのインストール

# cd /opt
# sudo wget https://downloads.jboss.org/keycloak/11.0.2/keycloak-11.0.2.tar.gz
# tar xfpz keycloak-11.0.2.tar.gz
# mv keycloak-11.0.2 keycloak

Keycloakの設定

構築内容や状況によってはほかにもいろいろ必要だが、下記はおそらく絶対必要な対応ではないかと。

# vi /opt/keycloak/standalone/configuration/standalone.xml

<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:[KeycloakサーバーのIP]}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:[KeycloakサーバーのIP]}"/>
</interface>
</interfaces>

なお、実際の構築時にはいつも通りリバースプロキシを通すのでSSL化のために下記の太字部分を書き換えている

<subsystem xmlns="urn:jboss:domain:undertow:7.0" default-server="default-server" default-virtual-host="default-host" default-servlet-container="default" default-security-domain="other">
<buffer-cache name="default"/>
<server name="default-server">
- <http-listener name="default" socket-binding="http" redirect-socket="https" enable-http2="true"/>
+ <http-listener name="default" socket-binding="http" redirect-socket="https" enable-http2="true" proxy-address-forwarding="true"/>
<https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<http-invoker security-realm="ApplicationRealm"/>
</host>
</server>

起動設定のためにサービスとして登録

# sudo vi /etc/systemd/system/keycloak.service

[Unit]
Description=Jboss Application Server
After=network.target
[Service]
Type=idle
Environment=JBOSS_HOME=/opt/keycloak
JBOSS_LOG_DIR=/var/log/keycloak/ "JAVA_OPTS=-Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true"
User=root
Group=root
ExecStart=/opt/keycloak/bin/standalone.sh -Djboss.http.port=80 -b 0.0.0.0
TimeoutStartSec=600
TimeoutStopSec=600
[Install]
WantedBy=multi-user.target

設定ファイルを再読み込みし、サービスとして登録、起動します。

# systemctl daemon-reload
# systemctl enable keycloak
# systemctl start keycloak

Keycloakでは管理者をあらかじめ登録しないとアクセスできませんので、管理ユーザーをコンソールから登録します。
ユーザー名とパスワードは任意のものを設定してください。

# /opt/keycloak/bin/add-user-keycloak.sh -r master -u 【ユーザー名】 -p 【パスワード】

これで一応構築は完了です。

ログインしての設定等はまた別途。

 

0

Jitsiのリバースプロキシ下動作

Jitsi Meetを既存リバースプロキシの背後で動かす方法を探しているのですが、なかなか見つからない。

Jitsi MeetはインストーラがNginxを設定してくれちゃうらしいのですが、単体のマシンの中でのお話なので、
その設定を他のマシンにもっていってもうまく動かないように思われます。

(必要な設定をちゃんと書き換えればいいんだとは思いますが)

まぁただ、Jitsi Meet自体が20人ぐらいになると、クライアント側での処理が重たくなってなかなか表示が厳しくなるらしいので、単純に既存のZoom等の代替になるかというと難しそうですが。

 

0

HCI構成をOSSでやるのはなかなか難しいですな

oVirt+GlusterFSでのOSS HCIを構成しようとしていますが、GlusterFSの作成まではうまく動くのですが、Hosted-Engineの導入で毎回失敗します。

とはいえ実機を準備しておらず、すべて仮想マシンで準備していることも原因かもしれませんが、なかなか厄介ですな。

仮想マシンであればある程度のスペックのものは用意できますが、実機複数台というとちょっと厳しいですなぁ

逆にスペック落としても実機のほうがやりやすいのかもしれませんね。

0

ダウンローダー設置

そういやこっちに書いてなかった。

総集編以前に出したOperating System Maniacsの旧刊は、こちら からダウンロードできるようにしました。

各種イベントで無料配布したものなどもこちらからダウンロードできるようにしようかと思います。

技術書典9で配布中のものも、こちらにも置いています。

 

0

技術書典9戦利品

まだ開催初日なんですよね。まぁしばらくはだらだら見たりしますが。

購入およびいただいたもの。

無料のものが半分くらいでしょうか。当方の無料配布のも入ってるのはご愛敬。

0