0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Hadoop/Spark でよく出てくる Kerberos 認証とは?

Posted at

Kerberos認証をざっくり整理してみた(特徴・仕組み・設定ポイント)

はじめに

Kerberos 認証は Windows ドメインや Hadoop/Spark などで広く使われていますが、仕組みや設定項目がわかりづらいことが多いです。
本記事では、Kerberos 認証の基本を 特徴・認証フロー・設定ポイント・利用シーン という観点で整理してみました。


Kerberos認証とは?

ユーザーとサービス(サーバ)間で パスワードを送らずに本人確認できる仕組み です。
MIT で開発され、現在は企業・官公庁・教育機関・大規模データ基盤で幅広く利用されています。

特徴まとめ

特徴 内容
パスワードを直接送らない ネットワークにパスワードが流れないため盗聴に強い
チケットベースの認証 一度ログインすれば、以降は「チケット」で再認証なし(SSO)
暗号化通信 認証情報は暗号化されて送信されるため安全性が高い

認証の流れ(簡略版)

  1. ユーザーがログイン → 認証サーバ(KDC)から TGT(Ticket Granting Ticket) を取得
  2. サービスにアクセス → サービス用チケットを KDC から取得
  3. そのチケットを使ってサービスと通信開始(パスワードは送らない)

延長について

  • 初回ログイン時に TGT を取得
  • 有効期限内なら延長可能(例: kinit -R
  • ただし renew_lifetime を超えると再ログインが必要

チケット期限の設定

Kerberos 認証では「チケットの期限」が重要になります。

項目 内容
ticket_lifetime 初回に発行されたチケットの有効時間 10h
renew_lifetime 延長可能な最大有効期間 7d

設定ファイル例(krb5.conf

[libdefaults]
  ticket_lifetime = 10h
  renew_lifetime = 7d

主な構成コンポーネント

コンポーネント 役割
クライアント(PC/ブラウザ) TGT を保持し、SPNEGO で自動認証
Webサーバ(Apache/Nginx) Kerberos モジュールで SPNEGO トークンを検証
KDC(Key Distribution Center) Active Directory や MIT Kerberos サーバが担う

よくある利用シーン

  • Windows ドメイン(Active Directory)
    Windows ログインやファイル共有で自動的に Kerberos 認証が利用される(SSO)

  • Hadoop/Hive/Spark
    認証付き HDFS アクセスや HiveServer2 接続時に利用

  • 社内Webサービス(SSO)
    ブラウザが SPNEGO を使い、自動ログイン

  • SSH(Kerberos対応)
    パスワード不要で安全にログイン可能

  • メールサーバ(IMAP/SMTP)
    企業向け環境での安全な送受信


大量の kinit が引き起こす影響

同じクライアントから短時間に大量の kinit(認証要求)を送ると、KDC サーバに負荷がかかります。

項目 内容
CPU使用率 チケット発行時に暗号化処理(AESなど)が必要 → CPU負荷上昇
メモリ使用量 発行済み TGT 情報やログを一時保持 → 同時接続で逼迫の可能性
セッション管理 Kerberos自体はステートレスだが、ログや監視で内部的に管理情報が増える

まとめ

  • Kerberos 認証は「チケット方式の安全なログイン」
  • ticket_lifetimerenew_lifetime の設定が実運用で重要
  • Hadoop や Spark などのビッグデータ基盤を扱う場合は必須知識
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?