2017年7月22日土曜日

Harbor で ldap 認証を試してみた

概要

前回 CentOS 上に LDAP サーバを構築しました
Harbor には LDAP 認証と連携する機能があります
せっかくなので Harbor の LDAP 連携機能を使ってみました

環境

  • サーバ側
    • CentOS 7.3.1611
    • openldap (servers, clients) 2.4.40-13
  • クライアント側
    • Harbor 1.1.2
    • docker 17.03.1-ce
    • docker-compose 1.13.0

ldap を有効にする

今回は既存の Harbor 環境に対して ldap をあとから追加します

  • vim harbor.cfg
ldap_url = ldap://192.168.10.1:389/
ldap_basedn = ou=People,dc=example,dc=com
  • docker-compose down
  • docker rmi $(docker images -q)
  • docker volume rm $(docker volume ls -q)
  • rm -rf /data
  • ./install.sh

ポイントはデータボリュームと /data を削除することです
そうしないと昔のデータを参照してしまい認証モードがずっと db_auth になってしまいます

動作確認

まずは admin ユーザで Harbor にログインします
そして、 Configuration -> Authentication で Auth Mode が「LDAP」になっていることを確認します
harbor_ldap.png

「LDAP Search Password」は自動で入力されていました
下に「TEST LDAP SERVER」というボタンがあるのでここをクリックして「Connection to LDAP server is verified. 」なることを確認します
もし失敗する場合は FW や ldap サーバの設定を確認してください

確認できたら ldap に登録したユーザでログインできるか確認してみましょう
一旦 admin ユーザでログアウトして別ユーザでログインします

問題なく ldap ユーザでログインできれば連携は成功です

最後に docker login もできるか確認してみましょう
同じく ldap ユーザでログインできるのが確認できると思います

最後に

Harbor の ldap 機能を試してみました
ldap サーバ側はかなり単純な設定なので、Harbor 側も設定する項目が少なく簡単にできました
ユーザ管理が断然楽になるので ldap がある環境であればこっちを使うほうが良いと思います

0 件のコメント:

コメントを投稿