Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:SQL Server Linux rendszeren
A szervezet biztonsági ajánlott eljárásai alapján előfordulhat, hogy rendszeresen el kell forgatnia a jelszót az network.privilegedadaccountmssql.conf megadott Windows Active Directory-fiókhoz, vagy bármely más fiókhoz, amely az SQL Server szolgáltatásnévneveit (SPN) birtokolja. A fiók jelszavának módosítására szolgáló támogatott módszert ebben a cikkben dokumentáljuk. A jelszómódosítás anélkül lép érvénybe, hogy újra kellene indítania az SQL Server szolgáltatást Linuxon.
A adutil eszközzel frissítheti a kulcstáblát. Az adutil parancsot tartományhoz csatlakoztatott gépről kell futtatni. Az adutil és az eszköz letöltéséről további információt az Bevezetés az adutil – Active Directory segédprogramcímű témakörben talál.
Az Active Directoryban való frissítés előtt fontos, hogy a keytab új jelszavát a következő kvno számmal frissítse. A következő kvno szám használata megakadályozza, hogy az SQL Server szolgáltatást újra kell indítani a jelszó módosítása után. Ha először az Active Directoryban frissíti a jelszót, majd módosítja a kulcstáblát, újra kell indítania az SQL Server szolgáltatást, hogy az Active Directory-hitelesítés megfelelően működjön.
Forgatókönyv a kulcstartó elforgatására
Vegyünk egy példát. Az Active Directory-hitelesítés már engedélyezve van a Linuxon futó SQL Serverhez. A mssql.conf fájlban a network.privilegedadaccountsqluserértékre állítja. A fiók sqluser@CONTOSO.COM már létrejön az Active Directoryban, és a keytab az alapértelmezett helyen is létrejön /var/opt/mssql/secrets/mssql.keytab. Most meg szeretné változtatni a sqluser@CONTOSO.COMjelszavát. Az alábbi lépéseket kell követnie:
Telepítse az adutil a(z) tartományhoz csatlakoztatott gépre.
Szerezze be vagy újítsa meg a Kerberos TGT-t (jegykiadó jegy) a
kinitparanccsal. Használjon emelt szintű fiókot akinitparancshoz. A fióknak engedéllyel kell rendelkeznie a tartományhoz való csatlakozásra, és képesnek kell lennie fiókokat és szolgáltatásneveket létrehozni a tartományban. Ebben az esetben a(z)privilegeduser@CONTOSO.COMfiókot használjuk, amely rendelkezik aCONTOSO.COMnevű tartományban fiókok és szolgáltatásfőneveket (SPN-eket) létrehozhat engedélyekkel.kinit privilegeduser@CONTOSO.COMMiután futtatja a
kinit-t a TGT megszerzéséhez/megújításához, lekérdezze az aktuális kvno számot anetwork.privilegedadaccount-on. Ebben az esetbensqluser@CONTOSO.COM.kvno sqluser@CONTOSO.COM
Dönthet úgy is, hogy az mssql-confbillentyűabát elforgatja, vagy manuálisan forgassa el a kulcstartót az adutilhasználatával.
A kulcstartó elforgatása mssql-conf használatával
Telepítheti az adutil-t, és integrálhatja a mssql-conf-mal, ami azt jelenti, hogy a keytab-ot a mssql-confhasználatával elforgathatja.
Jelentkezzen be gyökérfelhasználóként, és váltson a
mssqlfelhasználóra.su mssqlSzerezze be vagy újítsa meg a Kerberos TGT-t (jegykiadó jegy) a
kinitparanccsal. Használjon emelt szintű fiókot akinitparancshoz. A fióknak engedéllyel kell rendelkeznie a tartományhoz való csatlakozásra, és képesnek kell lennie fiókokat és szolgáltatásneveket létrehozni a tartományban. Ebben az esetben a(z)privilegeduser@CONTOSO.COMfiókot használjuk, amely rendelkezik aCONTOSO.COMnevű tartományban fiókok és szolgáltatásfőneveket (SPN-eket) létrehozhat engedélyekkel.kinit privilegeduser@CONTOSO.COMFuttassa az mssql-conf parancsot, és adja meg az SQL Server-kulcstartót és a
network.privilegedadaccountrészleteit. Ebben a példában aprivilegedadaccountsqluser../mssql-conf setup-ad-keytab /var/opt/mssql/secrets/mssql.keytab sqluser --use-next-kvno'Amikor a rendszer kéri a jelszót, adjon meg egy új jelszót, amelyet használni szeretne. A
--use-next-kvnoopció lefoglalja az aktuális kvno értéket, + 1.Választható: Használhatja a
--kvnoparancsmssql-conf setup-ad-keytablehetőségével is, hogy egy adott kvno-t adjon meg. Először meg kell győződnie arról, hogy megszerezte a felhasználó aktuális kvno értékét, majd frissítse az új kvno értékét, amely a jelenlegi kvno + 1 lesz.A keytab kulcsait a következő paranccsal listázhatja:
klist -kte /var/opt/mssql/secrets/mssql.keytabÉszreveheti, hogy a keytab frissül a következő kvno értékkel mind a felhasználói, mind az SPN bejegyzések esetében.
Mostantól módosíthatja a
sqluserfelhasználó jelszavát. Íme egy példa.Fontos
Ha a rendszer a lépés során az SQL Server újraindítását kéri, figyelmen kívül hagyhatja. Ne felejtse el módosítani a jelszót az Active Directory is.
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)
A kulcstartó manuális elforgatása az adutil használatával
Ha manuálisan szeretné frissíteni a kulcstartót adutilhasználatával, tekintse meg az alábbi lépéseket.
A keytab frissítése az adutil használatával egy bejegyzést ad hozzá az aktuális keytabhoz. Ha például az előző parancs kvno száma 2, használja a kvno számot 3 a keytab frissítésekor. Az alábbi adutil parancsokat kell futtatnia.
- Módosítsa a portszámot (
-p), a gazdagépnevet (-H), a keytab (-k) elérési útját és a kvno számot a környezetnek megfelelően.
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
| Paraméter | Description |
|---|---|
-k |
Az SQL Server által jelenleg használt keytab aktuális elérési útja, amely a network.kerberoskeytabfile fájlban található mssql.conf opció segítségével van beállítva. |
-H |
Az SQL Server-gazdagép teljes tartományneve. |
-p |
Az a port, amelyre az SQL Server szolgáltatást az első parancsban konfigurálják figyelésre. A második parancsban -p azt a network.privilegedadaccount jelöli, amelyhez frissíteni szeretné a jelszót. |
kvno |
Az értéknek az aktuális kvno + 1 értéknek kell lennie. Az aktuális kvno érték a 3. lépésből származik. |
A fenti parancsok futtatása után meg kell adnia a keytab-bejegyzések titkosítási típusának kiválasztását. Győződjön meg arról, hogy a környezetének megfelelőt választja.
A keytab bejegyzéseinek ellenőrzése
A keytab frissítése után most már látnia kell a kvno 3 (új) kulcstabában lévő bejegyzéseket, valamint kvno 2 (régi) egyazon fiók sqluser@CONTOSO.COM és SPN-jeihez. A következő klist parancs futtatásával ellenőrizheti a keytab bejegyzéseit:
klist -kte /var/opt/mssql/secrets/mssql.keytab
Fiókjelszó módosítása az Active Directoryban
Az utolsó lépés a network.privilegedadaccount vagy a Windows Active Directory SQL Server SPN-jeinek tulajdonosa fiók jelszavának frissítése. Az előző forgatókönyvben frissíteni kell a sqluser@CONTOSO.COM jelszavát az Active Directoryban. Változtassa meg a jelszót a <newpassword>-ra, amit az előző szakasz 3. lépésében adott meg. Az Active Directory-hitelesítésnek továbbra is működnie kell, és nem kell újraindítania az SQL Server szolgáltatást.
Kapcsolódó tartalom
- oktatóanyag: Active Directory-hitelesítés konfigurálása az Adutil használatával linuxos SQL Serverrel
- oktatóanyag: Active Directory-hitelesítés konfigurálása SQL Serverrel Linux-tárolókon
- Az SQL Server Active Directory-hitelesítésének ismertetése Linuxon és tárolókon
- Linuxon és tárolókon futó SQL Server Active Directory-hitelesítésének hibaelhárítása