Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Linux üzerinde SQL Server
Kuruluşunuzun en iyi güvenlik uygulamalarına bağlı olarak, network.privilegedadaccount'da mssql.conf olarak sağlanan Windows Active Directory hesabının veya SQL Server hizmetinin hizmet asıl adlarının (SPN) sahibi olan başka bir hesabın parolasını düzenli olarak döndürmeniz gerekebilir. Hesabın parolasını değiştirmek için desteklenen yöntem bu makalede belgelenmiştir. Parola değişikliği, Linux üzerinde SQL Server hizmetini yeniden başlatmaya gerek kalmadan geçerlilik kazanır.
adutil aracı, tuş sekmesini güncelleştirmek için kullanılır. adutil komutu etki alanına katılmış bir makineden çalıştırılmalıdır. adutil ve aracın indirilme yöntemi hakkında daha fazla bilgi için, adutil'e Giriş - Active Directory yardımcı programıbölümüne bakın.
Active Directory'de güncelleştirmeden önce anahtar sekmesindeki yeni parolayı sonraki kvno numarasıyla güncelleştirmek kritik önem taşır. Sonraki kvno numarasının kullanılması, parola değişikliğinden sonra SQL Server hizmetinin yeniden başlatılmasını önler. Önce Active Directory'de parolayı güncelleştirir ve ardından anahtar sekmesini değiştirirseniz, Active Directory kimlik doğrulamasının düzgün çalıştığından emin olmak için SQL Server hizmetini yeniden başlatmanız gerekir.
Tuş sekmesini döndürme senaryosu
Bir örnek düşünelim. Active Directory kimlik doğrulaması Linux üzerinde SQL Server için zaten etkindir.
mssql.conf dosyasında, network.privilegedadaccountsqluserolarak ayarlarsınız. Hesap sqluser@CONTOSO.COM Active Directory'de zaten oluşturulmuştur ve anahtar sekmesi de /var/opt/mssql/secrets/mssql.keytabvarsayılan konumda oluşturulur. Şimdi sqluser@CONTOSO.COMparolasını değiştirmek istiyorsunuz. İzlemeniz gereken adımlar şunlardır:
Etki alanına katılmış makineye adutil yükleyin.
kinitkomutunu kullanarak Kerberos TGT'sini (anahtar verme bileti) alın veya yenileyin.kinitkomutu için ayrıcalıklı bir hesap kullanın. Hesabın etki alanına bağlanma izni olması ve etki alanında hesap ve SPN'ler oluşturabilmesi gerekir. Bu durumda, hesaplar ve SPN'ler oluşturma izinlerine sahipprivilegeduser@CONTOSO.COMhesabını,CONTOSO.COMadlı etki alanımızda kullanıyoruz.kinit privilegeduser@CONTOSO.COMTGT'yi almak veya yenilemek için
kinit'yi çalıştırdıktan sonra, geçerli 'ünnetwork.privilegedadaccountnumarasını sorgulayın. Bu durumda,sqluser@CONTOSO.COM.kvno sqluser@CONTOSO.COM
anahtar sekmesini mssql-conf ile döndürmeyiseçebilir veya adutilkullanarak tuş sekmesini el ile döndürebilirsiniz.
anahtar sekmesini mssql-conf ile döndürme
adutil yükleyebilir ve mssql-confile tümleştirebilirsiniz. Bu, mssql-confkullanarak tuş sekmesini döndürebileceğiniz anlamına gelir.
Kök kullanıcı olarak oturum açın ve
mssqlkullanıcıya geçin.su mssqlkinitkomutunu kullanarak Kerberos TGT'sini (anahtar verme bileti) alın veya yenileyin.kinitkomutu için ayrıcalıklı bir hesap kullanın. Hesabın etki alanına bağlanma izni olması ve etki alanında hesap ve SPN'ler oluşturabilmesi gerekir. Bu durumda, hesaplar ve SPN'ler oluşturma izinlerine sahipprivilegeduser@CONTOSO.COMhesabını,CONTOSO.COMadlı etki alanımızda kullanıyoruz.kinit privilegeduser@CONTOSO.COMSQL Server anahtar sekmesini ve ayrıntılarını sağlayarak
network.privilegedadaccountkomutunu çalıştırın. Bu örnekteprivilegedadaccount,sqluser'dir../mssql-conf setup-ad-keytab /var/opt/mssql/secrets/mssql.keytab sqluser --use-next-kvno'Parola istendiğinde, kullanmayı düşündüğünüz yeni bir parola girin.
--use-next-kvnoseçeneği, geçerli kvno'yu + 1 olarak ayırır.İsteğe bağlı: Belirli bir
--kvnosağlamak içinmssql-conf setup-ad-keytabseçeneğini, komutuyla da kullanabilirsiniz. Önce kullanıcı için geçerli kvno aldığınızdan emin olmanız ve ardından yeni kvno uygun şekilde güncelleştirdiğinizden emin olmanız gerekir; bu, geçerli kvno + 1 olacaktır.Komutunu kullanarak tuş sekmesinin anahtarlarını listeleyebilirsiniz:
klist -kte /var/opt/mssql/secrets/mssql.keytabAnahtar sekmesinin hem kullanıcı hem de SPN girdileri için sonraki kvno ile güncelleneceğini fark edeceksiniz.
Artık
sqluserkullanıcının parolasını değiştirebilirsiniz. İşte bir örnek.Önemli
Bu adım sırasında SQL Server'ı yeniden başlatmanız istenirse, bunu yoksayabilirsiniz. Active Directory 'da da parolayı değiştirmeyi unutmayın.
bash-4.4$ kinit privilegedaccount@CONTOSO.COM Password for privilegedaccount@CONTOSO.COM: bash-4.4$ ./mssql-conf setup-ad-keytab /var/opt/mssql/secrets/mssql.keytab sqluser --use-next-kvno sqluser@contoso.com's password: Confirm sqluser@contoso.com's password: SQL Server needs to be restarted in order to adopt the new AD configuration. To restart, run `systemctl restart mssql-server.service`. bash-4.4$ klist -kte /var/opt/mssql/secrets/mssql.keytab Keytab name: FILE:/var/opt/mssql/secrets/mssql.keytab KVNO Timestamp Principal ---- ------------------- ------------------------------------------------------ 4 12/30/2021 14:02:08 sqluser@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1.contoso.com:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1.contoso.com@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 sqluser@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1.contoso.com:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1.contoso.com@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1@CONTOSO.COM (aes256-cts-hmac-sha1-96)
Adutil ile keytab'ı el ile döndürün
adutilkullanarak tuş sekmesini el ile güncelleştirmek istiyorsanız aşağıdaki adımlara bakın.
adutil kullanarak tuş sekmesini güncelleştirmek geçerli anahtar sekmesine bir girdi ekler. Örneğin, önceki komuttan kvno numarası 2ise, tuş sekmesini güncelleştirirken 3 numarasını kullanın. Çalıştırmanız gereken adutil komutları aşağıdadır.
- Ortamınızla eşleşecek şekilde bağlantı noktası numarasını (
-p), ana bilgisayar adını (-H), keytab dosyasının yolu (-k) ve kvno numarasını değiştirin.
adutil keytab createauto -k /var/opt/mssql/secrets/mssql.keytab -p 1433 -H mssql.contoso.com --password '<newpassword>' -s MSSQLSvc --kvno 3
adutil keytab create -k /var/opt/mssql/secrets/mssql.keytab -p sqluser --password '<newpassword>' --kvno 3
| Parametre | Description |
|---|---|
-k |
SQL Server tarafından kullanılan ve dosyadaki mssql.conf seçeneği kullanılarak ayarlanan geçerli anahtar sekmesine giden yol. |
-H |
SQL Server ana bilgisayarının tam nitelikli etki alanı adı. |
-p |
SQL Server hizmetinin ilk komutta dinleyecek şekilde yapılandırıldığı bağlantı noktası. İkinci komutta -p, parolasını güncelleştireceğiniz network.privilegedadaccount temsil eder. |
kvno |
Değerin geçerli kvno + 1 olması gerekir. Geçerli kvno değeri 3. adımdan alınır. |
Yukarıdaki komutları çalıştırdıktan sonra, anahtar sekmesi girdileri için şifreleme türü seçiminizi sağlamanız gerekir. Ortamınız için doğru olanı seçtiğinizden emin olun.
Anahtar sekmesi girişlerini denetleyin
Anahtar sekmesini güncelleştirdikten sonra artık aynı hesap kvno 3 ve SPN'ler için kvno 2 (yeni) ve sqluser@CONTOSO.COM (eski) girişlerini görmelisiniz. Anahtar sekmesindeki girdileri denetlemek için aşağıdaki klist komutunu çalıştırabilirsiniz:
klist -kte /var/opt/mssql/secrets/mssql.keytab
Active Directory'de hesap parolasını değiştirme
Son adım, network.privilegedadaccount veya Windows Active Directory'de SQL Server SPN'lerinin sahibi olan hesabın parolasını güncelleştirmektir. Önceki senaryoda, Active Directory'deki sqluser@CONTOSO.COM parolasını güncelleştirmemiz gerekir. Önceki bölümdeki 3. adımda sağladığınız <newpassword> olarak parolayı değiştirin. Active Directory kimlik doğrulaması çalışmaya devam etmelidir ve SQL Server hizmetinin yeniden başlatılmasına gerek yoktur.
İlgili içerik
- Öğreticisi: Linux'ta SQL Server ile Active Directory kimlik doğrulamasını yapılandırmak için adutil kullanma
- Öğreticisi: Linux kapsayıcılarında SQL Server ile Active Directory kimlik doğrulamayı yapılandırma
- Linux ve kapsayıcılarda SQL Server için Active Directory kimlik doğrulamasını anlama
- Linux ve kapsayıcılarda SQL Server için Active Directory kimlik doğrulaması sorunlarını giderme