Sqlserver安全篇之_手工创建TLS用到的pfx证书文件

打印 上一主题 下一主题

主题 1017|帖子 1017|积分 3051

Sqlserver官方提供的Windows Powershell脚本
https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/configure-sql-server-encryption?view=sql-server-ver16
  1. # Define parameters
  2. $certificateParams = @{
  3.     Type = "SSLServerAuthentication"
  4.     Subject = "CN=$env:COMPUTERNAME"
  5.     DnsName = @("$($env:COMPUTERNAME)", $([System.Net.Dns]::GetHostEntry('').HostName), 'localhost')
  6.     KeyAlgorithm = "RSA"
  7.     KeyLength = 2048
  8.     HashAlgorithm = "SHA256"
  9.     TextExtension = "2.5.29.37={text}1.3.6.1.5.5.7.3.1"
  10.     NotAfter = (Get-Date).AddMonths(36)
  11.     KeySpec = "KeyExchange"
  12.     Provider = "Microsoft RSA SChannel Cryptographic Provider"
  13.     CertStoreLocation = "cert:\LocalMachine\My"
  14. }
  15. # Call the cmdlet
  16. New-SelfSignedCertificate @certificateParams
复制代码
自己测试实行
在woncntestdb3数据库服务器上创建一个自签名的证书,再把这个自签名证书导出到C:\Certs\dainetdaicom.pfx,这个自签名证书的subject必须是woncntestdb3.dai.netdai.com,就算是*.dai.netdai.com或dai.netdai.com都无法把它从C:\Certs\dainetdaicom.pfx导入到woncntestdb3的sqlserver中
  1. $certParams = @{
  2.     Type = "SSLServerAuthentication"
  3.     Subject = "CN=$env:COMPUTERNAME.dai.netdai.com"
  4.     DnsName = @("$($env:COMPUTERNAME)", $([System.Net.Dns]::GetHostEntry('').HostName), 'localhost')
  5.     KeyAlgorithm = "RSA"
  6.     KeyLength = 2048
  7.     HashAlgorithm = "SHA256"
  8.     TextExtension = "2.5.29.37={text}1.3.6.1.5.5.7.3.1"
  9.     NotAfter = (Get-Date).AddMonths(36) # 有效期3年
  10.     KeySpec = "KeyExchange"
  11.     Provider = "Microsoft RSA SChannel Cryptographic Provider"
  12.     FriendlyName     = "Certificate test for woncntestdb3.dai.netdai.com"
  13.     CertStoreLocation = "cert:\LocalMachine\My"
  14. }
  15. $cert = New-SelfSignedCertificate @certParams
  16. $password = ConvertTo-SecureString -String "123456" -Force -AsPlainText # 导入到sqlserver中提示输入密码的时候,就填这个密码
  17. $exportPath = "C:\Certs\dainetdaicom.pfx"
  18. Export-PfxCertificate -Cert $cert -FilePath $exportPath -Password $password
复制代码
–把上面生成的C:\Certs\dainetdaicom.pfx拷贝到Linux路径/root/123/dainetdaicom.pfx,实行如下语句可以看到证书的有效期
  1. openssl x509 -in /root/123/dainetdaicom.pfx -noout -dates
复制代码
证书可以在linux和windows下互用,目前已经乐成验证windows下生成的pfx证书可以在linux中使用,但是还没有乐成实行linux生成的证书可以在windows下使用

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81429

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表