Ubuntu 22.04
Sponsored Link

SQL Server 2022 : Windows प्रमाणीकरण2023/12/07

 
Windows प्रमाणीकरण सक्षम करने के लिए Linux पर SQL सर्वर कॉन्फ़िगर करें।
[1]
Ubuntu सर्वर जोड़ें जो SQL सर्वर Active Directory डोमेन पर चलता है, यहां देखें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
डोमेन सर्वर : Windows Server 2022
डोमेन नाम : srv.world
होस्ट का नाम : fd3s.srv.world
NetBIOS नाम : FD3S01
क्षेत्र : SRV.WORLD
[2] SQL सर्वर सेवा के लिए AD पर एक डोमेन उपयोगकर्ता बनाएँ।
इस उदाहरण पर, निम्नानुसार [mssql] उपयोगकर्ता बनाएं।
[3]
व्यवस्थापक विशेषाधिकार के साथ PowerShell चलाएँ और सेवा प्रिंसिपल को SQL सर्वर सेवा उपयोगकर्ता पर सेट करें।
PS > setspn -A MSSQLSvc/(SQL Server Host's FQDN):(SQL Server Port) (SQL Server service user)
PS > setspn -A MSSQLSvc/(SQL Server Host's' NetBIOS Name):(SQL Server Port) (SQL Server service user)
[4] Ubuntu सर्वर पर कॉन्फ़िगर करें जो SQL सर्वर चलाता है।
root@dlp:~#
apt -y install krb5-user
# SQL सर्वर सेवा उपयोगकर्ता के साथ Kerberos टिकट प्राप्त करें

root@dlp:~#
kinit mssql@SRV.WORLD

Password for mssql@SRV.WORLD:
# सुनिश्चित करें कि कुंजी संस्करण संख्या (kvno)

root@dlp:~#
kvno MSSQLSvc/dlp.srv.world:1433

MSSQLSvc/dlp.srv.world:1433@SRV.WORLD: kvno = 2
# कीटैब फ़ाइल बनाएँ
# addent -password -p MSSQLSvc/(SQL Server Host's FQDN):(SQL Server Port) -k (kvno)

root@dlp:~#
ktutil

ktutil:
addent -password -p MSSQLSvc/dlp.srv.world:1433@SRV.WORLD -k 2 -e aes256-sha1

Password for MSSQLSvc/dlp.srv.world:1433@SRV.WORLD:
ktutil:
addent -password -p MSSQLSvc/dlp.srv.world:1433@SRV.WORLD -k 2 -e rc4-hmac

Password for MSSQLSvc/dlp.srv.world:1433@SRV.WORLD:
ktutil:
addent -password -p MSSQLSvc/DLP:1433@SRV.WORLD -k 2 -e aes256-sha1

Password for MSSQLSvc/dlp.srv.world:1433@SRV.WORLD:
ktutil:
addent -password -p MSSQLSvc/DLP:1433@SRV.WORLD -k 2 -e rc4-hmac

Password for MSSQLSvc/dlp.srv.world:1433@SRV.WORLD:
ktutil:
wkt /var/opt/mssql/secrets/mssql.keytab

ktutil:
quit
root@dlp:~#
chown mssql:mssql /var/opt/mssql/secrets/mssql.keytab

root@dlp:~#
chmod 400 /var/opt/mssql/secrets/mssql.keytab
# कीटैब फ़ाइल सेट करें

root@dlp:~#
/opt/mssql/bin/mssql-conf set network.privilegedadaccount mssql

root@dlp:~#
/opt/mssql/bin/mssql-conf set network.kerberoskeytabfile /var/opt/mssql/secrets/mssql.keytab

SQL Server needs to be restarted in order to apply this setting. Please run
'systemctl restart mssql-server.service'.
root@dlp:~#
systemctl restart mssql-server

[5] SQL सर्वर लॉगिन बनाएं।
# उदाहरण के लिए, [serverworld] उपयोगकर्ता का लॉगिन बनाएं

root@dlp:~#
id FD3S01\\serverworld

uid=581001103(serverworld@srv.world) gid=581000513(domain users@srv.world) groups=581000513(domain users@srv.world)
root@dlp:~#
sqlcmd -S localhost -U SA

Password:
1> create login [FD3S01\Serverworld] from windows;
2> go
1> select name from sys.server_principals;
2> go
name
------------------------------------------
sa
public
sysadmin
securityadmin
serveradmin
setupadmin
processadmin
diskadmin
dbcreator
bulkadmin
##MS_ServerStateReader##
##MS_ServerStateManager##
##MS_DefinitionReader##
##MS_DatabaseConnector##
##MS_DatabaseManager##
##MS_LoginManager##
##MS_SecurityDefinitionReader##
##MS_PerformanceDefinitionReader##
##MS_ServerSecurityStateReader##
##MS_ServerPerformanceStateReader##
##MS_SQLResourceSigningCertificate##
##MS_SQLReplicationSigningCertificate##
##MS_SQLAuthenticatorCertificate##
##MS_PolicySigningCertificate##
##MS_SmoExtendedSigningCertificate##
##MS_PolicyEventProcessingLogin##
##MS_PolicyTsqlExecutionLogin##
##MS_AgentSigningCertificate##
BUILTIN\Administrators
NT AUTHORITY\NETWORK SERVICE
NT AUTHORITY\SYSTEM
ubuntu
FD3S01\Serverworld

(33 rows affected)
[6] Ubuntu सर्वर पर एक AD उपयोगकर्ता के रूप में लॉगिन करें जिसके पास SQL सर्वर लॉगिन अधिकार है और सुनिश्चित करें कि SQL सर्वर में भी लॉगिन करना संभव है।
# केर्बरोस टिकट प्राप्त करें

serverworld@srv.world@dlp:~$
kinit

Password for Serverworld@SRV.WORLD:
serverworld@srv.world@dlp:~$
klist

Ticket cache: FILE:/tmp/krb5cc_581001103_fn7Zzd
Default principal: Serverworld@SRV.WORLD

Valid starting       Expires              Service principal
11/24/2023 11:50:26  11/24/2023 21:50:26  krbtgt/SRV.WORLD@SRV.WORLD
        renew until 11/25/2023 11:50:23

serverworld@srv.world@dlp:~$
sqlcmd -S dlp.srv.world

1> select @@version;
2> go

--------------------------------------------------------------------------------
Microsoft SQL Server 2022 (RTM-CU10) (KB5031778) - 16.0.4095.4 (X64)
        Oct 30 2023 16:12:44
        Copyright (C) 2022 Microsoft Corporation
        Developer Edition (64-bit) on Linux (Ubuntu 22.04.3 LTS) <X64>          

(1 rows affected)
  सक्रिय निर्देशिका डोमेन में मौजूद विंडोज क्लाइंट्स से [Windows Authentication] के साथ लिनक्स पर SQL सर्वर में लॉग इन करना भी संभव है।
मिलान सामग्री