Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Red Hat Enterprise Linux 8 の Web Console を守る技術
Search
Kazuo Moriwaka
August 05, 2019
Technology
4
1.8k
Red Hat Enterprise Linux 8 の Web Console を守る技術
RHELのWeb Consoleの安全性を高める工夫や、関連した情報をおしらせします。
Kazuo Moriwaka
August 05, 2019
Tweet
Share
More Decks by Kazuo Moriwaka
See All by Kazuo Moriwaka
システム全体の暗号化ポリシーをカスタマイズ
moriwaka
0
1.9k
Red Hat Enterprise Linux 9のリリースノートを読む前に知りたい最近のキーワードをまとめて復習
moriwaka
0
1.5k
odpからmp4を作る / odp2mp4
moriwaka
0
280
Red Hat Enterprise Linux Web Console を使う / cockpit-rhel8
moriwaka
0
730
systemdエッセンシャル / systemd-intro
moriwaka
46
12k
flatpak
moriwaka
0
2.4k
Red Hat Enterprise Linux 8 の セキュリティトピック
moriwaka
2
1.3k
システム全体の暗号化ポリシー設定
moriwaka
0
1.1k
端末のセッション記録
moriwaka
0
5.3k
Other Decks in Technology
See All in Technology
日経電子版におけるリアルタイムレコメンドシステム開発の事例紹介/nikkei-realtime-recommender-system
yng87
1
490
プロダクト成長に対応するプラットフォーム戦略:Authleteによる共通認証基盤の移行事例 / Building an authentication platform using Authlete and AWS
kakehashi
1
150
Aurora_BlueGreenDeploymentsやってみた
tsukasa_ishimaru
1
120
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
330
APIテスト自動化の勘所
yokawasa
7
4.1k
来年もre:Invent2024 に行きたいあなたへ - “集中”と“つながり”で楽しむ -
ny7760
0
460
「 SharePoint 難しい」ってよく聞くけど、そんなに言うなら8歳の息子に試してもらった
taichinakamura
1
600
わたしとトラックポイント / TrackPoint tips
masahirokawahara
1
240
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
1
180
急成長中のWINTICKETにおける品質と開発スピードと向き合ったQA戦略と今後の展望 / winticket-autify
cyberagentdevelopers
PRO
1
160
AIを駆使したゲーム開発戦略: 新設AI組織の取り組み / sge-ai-strategy
cyberagentdevelopers
PRO
1
130
Gradle: The Build System That Loves To Hate You
aurimas
2
140
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
22k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Music & Morning Musume
bryan
46
6.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
Building an army of robots
kneath
302
42k
Building Applications with DynamoDB
mza
90
6.1k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Transcript
1 Red Hat Enterprise Linux 8 の Web Console を守る技術
森若 和雄 Solution Architect 2019-11-19
2 Copyright Red Hat K.K. All rights reserved. このスライドの位置付けと目的 •
対象 • RHELのWeb Console(cockpit)に興味があるがセキュリティに 不安がある人 • 目的 • cockpitがどのように実装されているかの情報提供
3 Copyright Red Hat K.K. All rights reserved. 概要 •
Web Console(cockpit) • ログイン時の動作 • TCPポートの制限 • Identity Managementとの統合
4 Copyright Red Hat K.K. All rights reserved. Web Console
サーバ管理用のWeb UIを提供 • サービス管理 • アカウント管理 • ネットワーク管理 • ファイアウォール管理 • ログ閲覧 • 仮想マシン管理 • 仮想端末 などの管理機能を提供 https://cockpit-project.org/
5 Copyright Red Hat K.K. All rights reserved. インストール •
パッケージ導入 • yum install -y cockpit • ファイアウォール設定 • firewall-cmd --add-service=cockpit --permanent • firewall-cmd --reload • サーバ証明書配置 • /etc/cockpit/ws-certs.d/に証明書を配置(なければ自己署名証明書を自動生成) • 起動設定 • systemctl enable --now cockpit.socket • ブラウザで接続 • firefox https://example.com:9090/
6 Copyright Red Hat K.K. All rights reserved. よくある(?)「Webコンソール」のイメージ(偏見) •
外部コマンド実行 やファイル変更を root権限で実施 • 「root権限で何で もできるプロセ ス」を実行 • 独自の権限管理設 定やDBが必要 root権限で 何でもできる プロセス httpd 権限 管理 外部プロセス 外部プロセス ファイル UI DB
7 Copyright Red Hat K.K. All rights reserved. cockpitは? •
ログインしたユーザの権限で実施 • root権限はセッション開始のみ • OSの権限管理をそのまま使う cockpit-session root権限で動作 ログイン処理 外部プロセス 外部プロセス ファイル UI cockpit-bridge ユーザの 権限で 何でもやる cockpit-ws ログインと 接続 pam GSSAPI OSの 権限管理 生成 認証情報 リクエスト
8 Copyright Red Hat K.K. All rights reserved. ログイン時の動作 1.
cockpit-wsがログイン 画面を表示 2. 認証情報を送付 • ID+Password • GSSAPI 3. cockpit-sessionを実行 4. PAMで認証 5. 認証ユーザでcockpit-bridgeを実行 6. 以下チェックのある場合pkexecで root権限のcockpit-bridgeを起動 cockpit-session root権限で動作 ログイン処理 cockpit-bridge ユーザの 権限で 何でもやる cockpit-ws ログインと 接続 pam GSSAPI 生成 リクエスト PolicyKit経由でroot権限で実行する デフォルト設定ではwheelグループの ユーザのみ成功 cockpit-bridge --privilege rootユーザの 権限で 何でもやる 生 成 認証情報
9 Copyright Red Hat K.K. All rights reserved. ログイン後 •
ブラウザ上のjavascriptとcockpit-bridge(およびcockpit-bridge --privilege)が通信 • cockpit-bridge本体と、packageと呼ばれるプラグインがdbus, REST API, プロセス 実行など各種の操作を実施。通常のユーザ権限管理をそのまま利用。 cockpit-session セッション管理 だけ 外部プロセス 外部プロセス ファイル UI cockpit-bridge ユーザの 権限で 何でもやる cockpit-ws ログインと 接続 OSの 権限管理
10 Copyright Red Hat K.K. All rights reserved. ログイン関連について •
権限を必要最小限に制限したプロセスに分割 • cockpit-wsプロセスはcockpit-wsユーザで待ちうけと接続、cockpit-session の起動とcockpit-bridgeとの通信を実行 • cockpit-sessionは認証を行いセッションを開始。ユーザ自身の権限(指定 によりroot権限も)で動作するcockpit-bridgeを起動するだけ • SELinuxのポリシーも準備されている • enforcingで使うことでcockpit-wsやcockpit-sessionに未知の脆弱性がある 場合にも任意プロセス実行などを予防 • 自己署名証明書の利用はお勧めしません • ブラウザとcockpit-ws間の通信路が信頼できてはじめて安全
11 Copyright Red Hat K.K. All rights reserved. TCPポートを制限したい •
Cockpitは通常9090番ポートをlisten • Cockpit同士でsshによる通信を行う • cockpit-wsはssh経由で他サーバのcockpit-bridgeを起動・通信 • 踏み台サーバからsshで数珠繋ぎにすることで直接通信できない サーバを管理 HTTPS port 9090 SSH port 22 踏み台サーバ 管理対象サーバ cockpit cockpit
12 Copyright Red Hat K.K. All rights reserved. Identity Managementとの統合
• RHEL同梱のRed Hat Identity Managementと統合されています • IdMが管理するドメインにサーバが参加していれば以下が可能 • Web Consoleを含めたシングルサインオン(SSO) • Web Consoleで利用するサーバ証明書を自動発行 • ドメイン内ではsshの鍵配布が不要になるため、sshを経由し て他サーバを参照する場合に準備が不要
13 Copyright Red Hat K.K. All rights reserved. まとめ •
RHELの管理を簡単にするWeb Consoleは、簡単に利用 できるだけでなくセキュリティにも配慮して開発され ています • ログイン時に最小の特権だけを利用 • 長期間に渡る実績があるPolicyKitなど枯れた技術を活用 • ネットワーク接続ポートを増やせない場合はsshのみ許 可されていれば踏み台から接続可能 • Identity Managementと統合されています
14 Copyright Red Hat K.K. All rights reserved. • RHEL8ドキュメント「Web
コンソールを使用したシステムの管理」 • https://bit.ly/rhel8-webconsole-ja2 • Cockpitプロジェクトblog「Is Cockpit Secure?」 • https://cockpit-project.org/blog/is-cockpit-secure.html • Cockpitプロジェクトドキュメント「Single Sign On」 • https://cockpit-project.org/guide/latest/sso.html See also
15 Copyright Red Hat K.K. All rights reserved. Thank You