Ana içeriğe geç

MonoSign hazırlığı

MonoSign ile Zimbra tek oturum: MonoSign'da uygulamayı hazırlama, Zimbra sihirbazında ön ayar, test, yayın ve sorun giderme.

Kurum kullanıcıları webmail'e MonoSign hesabıyla girer; Zimbra parolası sorulmaz. Zimbra tarafındaki sihirbaz adımları için bkz. Tek oturum (SAML); kurulum için Tek oturum (SAML) kurulumu.

Hazırlık ve örnek değerler

Aşağıdaki örnek değerleri kendi kurulumunuzdakilerle değiştirin. Metinde <zimbra-adresi>, <kiraci> ve <GUID> bu değerlerin yerini tutar.

Ne Örnek Not
Zimbra genel adresi https://posta.zpe.profelis.net Kullanıcıların tarayıcıda açtığı adres
SSO'ya alınacak domain zpe.profelis.net Bir domain yalnız bir bağlantıda olabilir
MonoSign yönetim konsolu https://ornek-mng.monofor.com Yönetici ekranı
MonoSign kullanıcı portalı https://ornek.monofor.com Kullanıcıların giriş yaptığı adres
Uygulama anahtarı (GUID) 00000000-0000-0000-0000-000000000000 Uygulama oluşturulunca MonoSign üretir

Önkoşullar:

  • Zimbra PFE 10'da kurulu Profelis SAML eklentisi; yönetici konsolunda Araçlar ve Geçiş › Tek Oturum (SAML) görünür.
  • Zimbra ve MonoSign'da saat eşitlemesi (NTP). 2 dakikadan fazla fark girişleri reddettirir.
  • Her kullanıcının MonoSign'daki Email alanı Zimbra posta adresiyle aynı olmalı; farklıysa sihirbazda domain yeniden yazımı ekleyin.
  • Hem MonoSign'da hem Zimbra'da hesabı olan bir test kullanıcısı. MonoSign'ın root gibi e-postası olmayan yönetici hesapları test edilemez.

Yapılandırma için SSH gerekmez

Bağlantı, sertifika, domain giriş/çıkış adresleri, sanal host, CSRF izinli adresler ve çıkış adresi listesi sihirbaz ve Yayına al düğmesiyle yazılır. Sunucu konsolu yalnız eklentinin ilk kurulumu, nadir durumlarda mailboxd yeniden başlatma ve yönetici konsolu çalışmıyorsa acil geri alma için gerekir.

Network Edition adımları gerekmez

MonoSign'ın kendi dokümanı Network Edition'a göre yazılmıştır. Adresler Profelis'te aynı çalışır; saml-config.properties, zimbraMyoneloginSamlSigningCert ve elle zmprov adımlarının hepsini sihirbaz yapar. zimbra_same_site_cookie="" adımını uygulamayın: CSRF korumasını gereksiz yere zayıflatır.

MonoSign tarafı

MonoSign yönetim konsolu › Applications bölümünde Zimbra'yı hizmet sağlayıcı olarak tanıtın.

Uygulama ve SAML anahtarı

  1. Applications › yeni uygulama: katalogdaki Zimbra şablonu ya da Web türünde bir uygulama.
  2. Keys › Add New Key: Type SAML, süre Lifetime.
  3. Oluşan SAML 2 kartından Metadata adresini kopyalayın: https://<kiraci>.monofor.com/saml/<GUID>/metadata. Zimbra tarafında yalnız bu adres gerekir.

MonoSign Keys sekmesi, SAML 2 kartı

Keys sekmesi: SAML 2 kartı ve Metadata adresi

Sık yapılan hata: karttaki \"Entity Id\"yi Zimbra'ya yazmak

Kart üzerindeki https://<kiraci>.monofor.com/saml/<GUID> değeri MonoSign'ın (IdP) kendi kimliğidir. Zimbra'daki SP Entity ID alanına yazılırsa eklenti kaydı reddeder. Zimbra'nın Entity ID'si Zimbra adresinden üretilir.

SAML ayarları

SAML 2 kartında Configure › SAML Settings › Configuration:

MonoSign alanı Değer
Assertion Consumer Url https://<zimbra-adresi>/service/extension/samlreceiver
ACS Validation Mode Enforce
Entity Id https://<zimbra-adresi>/service/extension/samlreceiver (ACS ile aynı; Zimbra SP entity ID ile birebir)
NameId Format urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
Name Id Email
Logout Url (tek çıkış, sayfanın en altında) https://<zimbra-adresi>/service/extension/samlslo
Audience, Relay State Boş

Zimbra sihirbazının 3. adımındaki MonoSign tarafına girilecek değerler kutusu bu değerleri kendi adresinizle, kopyalanabilir olarak gösterir.

SAML Settings Configuration, üst kısım

Configure › SAML Settings › Configuration (üst kısım)

SAML Settings alt kısım, Logout Url

Alt kısım: Logout Url `.../samlslo`

Logout Url: /samlslo, /samllogout değil

MonoSign çıkış yanıtını (LogoutResponse) ve kendinden başlayan çıkış isteğini bu adrese gönderir. /samllogout yalnız kullanıcının Zimbra'dan çıkışını başlatır; MonoSign'ın mesajlarını karşılamaz.

NotBefore

MonoSign onay verisine standart dışı bir NotBefore ekler. Eklentinin 15.10.2026 ve sonraki sürümü bunu kendisi tolere eder; Exclude NotBefore anahtarları kapalı kalabilir. Eski bir sürümde testte Subject confirmation validation failed alınırsa eklentiyi güncelleyin ya da geçici olarak Exclude NotBefore › From Confirmation açın.

Atamalar

  1. Edit › Source, Provider and Profile: User Access Type = Only Assigned Users (testte geçici olarak All Users seçilebilir).
  2. Assignments › Assign a User: Zimbra kullanacak kullanıcıları (ya da Groups sekmesinden grupları) atayın.
  3. Atanan her kullanıcının Directory › Users altındaki Email alanı Zimbra adresiyle aynı olmalı.

Edit, Source, Provider and Profile

Edit › Source, Provider and Profile

Assignments sekmesi

Assignments: uygulamaya atanmış kullanıcılar

Zimbra sihirbazında MonoSign ön ayarı

Yönetici konsolu › Tek Oturum (SAML) › Yeni bağlantı › MonoSign (Monofor) seçin. Eski uç (/samlreceiver) ve IdP-başlatmalı giriş açık gelir; NameID e-posta olarak ayarlanır. Adımların ayrıntısı Tek oturum (SAML) sayfasındadır. MonoSign için önerilen güvenlik değerleri:

Ayar Değer
İmza politikası İmzalı assertion (MonoSign assertion'ı imzalar)
AuthnRequest'i imzala Açık
IdP-başlatmalı girişe izin ver Açık: MonoSign portalındaki kutucuktan giriş için gerekir. Portal kullanılmayacaksa kapatın (giriş-CSRF riski)
Her girişte yeniden kimlik doğrulama Kapalı
İzin verilen saat farkı 120 sn
En çok IdP oturum yaşı 28800 sn (8 saat)
Audience denetimini atla Kapalı
Tek çıkış (SLO) Açık: kapalıyken çıkıştan sonra sistem parola sormadan yeniden giriş yapar

IdP bilgileri adımında MonoSign'daki Metadata adresini yapıştırıp Metadata'yı oku'ya basın. Sunucu MonoSign'a erişemiyorsa MonoSign'da Download IdP Metadata ile indirdiğiniz dosyayı XML sekmesine yükleyin. Zimbra tarafı adımında SP Entity ID alanını boş bırakın ya da https://<zimbra-adresi>/service/extension/samlreceiver yazın.

Test ve yayın

    1. adımda Testi başlat: yeni pencerede MonoSign giriş ekranı açılır. Uygulamaya atanmış ve e-postası olan bir kullanıcıyla girin. MonoSign'da başka oturum açıksa önce çıkın ya da gizli pencere kullanın.
  1. Sekiz kontrolün hepsi yeşil olunca Yayına al düğmesi açılır.
  2. Yayına al: seçilen domain'lerin giriş sayfası MonoSign'a yönlenir. Yayından geri al hepsini eski haline döndürür.

Yayın yaklaşık bir dakikada görünür

Web istemcisi domain bilgisini önbellekte tutar. Stok Zimbra'da bu süre 60 dakikadır; Profelis kurulumu SAML modülüyle süreyi 1 dakikaya indirir. Yayın sonucu "Giriş sayfası yaklaşık bir dakika içinde güncellenir" derse bir dakika bekleyin, yeniden başlatma gerekmez. Sonuç yeniden başlatma komutu gösteriyorsa süre 60 dakikada kalmıştır (ör. bir Zimbra paket güncellemesinden sonra): kurulumu yeniden çalıştırın ya da tek sunucuda zimbra kullanıcısıyla zmmailboxdctl restart, Always On kümesinde root olarak profelis-alwayson-companion rolling-restart uygulayın (kesintisiz, bkz. Always On). (Kurulum /usr/local/sbin altına bağlantı koyar; tam yol /opt/profelis-alwayson/bin/profelis-alwayson-companion.)

Kullanıcı girişini doğrulama

Gizli pencerede, test kullanıcısıyla deneyin.

  • En kesin yol: test kullanıcısının MonoSign parolası Zimbra parolasından farklı olsun. Giriş MonoSign parolasıyla gerçekleşiyorsa SSO çalışıyordur.
  • Yönlendirme: https://<zimbra-adresi> açılınca adres çubuğu MonoSign giriş sayfasına geçer.
  • Tek çıkış: webmail'den çıkın; MonoSign oturumu da kapanır, yeniden giriş istenir.
  • IdP-başlatmalı giriş: MonoSign kullanıcı portalında Zimbra kutucuğuna tıklayın; posta kutusu doğrudan açılır.
  • Oturum olayları: yönetici konsolu › Tek Oturum (SAML) › Oturum olayları: her giriş, çıkış ve test; sonuç, kullanıcı, IP ve tarayıcıyla.

Belirtiye göre sorun giderme

Belirti Neden Çözüm
Zaman aşımı: "No response arrived from the IdP within 5 minutes" MonoSign yanıt göndermedi (genellikle aşağıdaki iki MonoSign hatasından biri) Test penceresindeki MonoSign hatasına bakın
"Cannot find entity … SPSSODescriptor" SP Entity ID alanına MonoSign'ın Entity Id'si yazılmış SP Entity ID'yi boş bırakın ya da .../samlreceiver yazın
"Subject confirmation validation failed" MonoSign'ın NotBefore değeri (eski eklenti sürümü) Eklentiyi güncelleyin ya da MonoSign'da Exclude NotBefore › From Confirmation
Test sonucunda Audience kırmızı MonoSign Entity Id ≠ Zimbra SP entity ID İkisini birebir aynı yapın
Zimbra hesabı kırmızı Hesap yok, pasif ya da e-posta farklı domain'de Hesabı açın ya da domain yeniden yazımı ekleyin
İmza kırmızı Eski ya da yanlış sertifika; imza politikası uyuşmuyor IdP metadata'sını yenile; politikayı Signed assertion / Signed response deneyin
Süre kırmızı Saat farkı 2 dakikadan fazla İki tarafta NTP
Yayından sonra Zimbra'nın kendi giriş formu geliyor Domain'de sanal host yok ya da webmail önbelleği eski (stok 60 dk, Profelis kurulumunda 1 dk) Bir dakika bekleyin; yayın sonucundaki uyarıya bakın; zmprov gd <domain> zimbraVirtualHostname genel adresi içermeli
Çıkıştan sonra parola sormadan yeniden giriyor SLO kapalı; MonoSign oturumu açık kalıyor Güvenlik adımında Tek çıkış'ı açın; MonoSign Logout Url = .../samlslo
IdP dönüşünde 403 CSRF referer listesi yenilenmemiş (zm-mailbox yaması 122 yok) Tek sunucuda zmmailboxdctl restart; Always On kümesinde profelis-alwayson-companion rolling-restart

MonoSign ekranında görülen hatalar:

MonoSign izin hatası

"You need permission": kullanıcı uygulamaya atanmamış. Çözüm: Assignments sekmesinden kullanıcıyı atayın.

MonoSign boş e-posta hatası

"Your Email seems empty": kullanıcının Email alanı boş (ör. `root`). Email'i dolu bir kullanıcıyla deneyin ya da Email'i doldurun.

NotBefore kaynaklı test hatası

Eski sürümde NotBefore kaynaklı ret; Teknik ayrıntılar altında nedeni görünür

Ayrıntılı iz için: zmprov aal <kullanici> zimbra.extensions debug (bitince zmprov ral).

Acil durum ve geri alma

Parola ile giriş hiçbir zaman kapanmaz.

  • Acil durum girişi: https://<zimbra-adresi>/?ignoreLoginURL=1. MonoSign erişilemezse kullanıcılar Zimbra parolasıyla buradan girer.
  • SSO'yu kapatmak: bağlantı kartında Yayından geri al. Domain ayarları eski haline döner; yayın bir sanal host eklediyse yalnız onu kaldırır.
  • Yönetici konsolu kullanılamıyorsa:
su - zimbra -c "zmprov md <domain> zimbraWebClientLoginURL '' zimbraWebClientLogoutURL ''"

MonoSign imza sertifikası değişirse bağlantı kartında IdP metadata'sını yenile (metadata adresi kayıtlıysa) ya da yeni metadata'yı yükleyin. Pano, bitişine 30 gün kalan sertifikayı sarı gösterir.