【问题标题】:How to set SSL to no ssl for FTP server in windows 2019如何在 Windows 2019 中为 FTP 服务器设置 SSL 为无 ssl
【发布时间】:2019-09-09 13:35:14
【问题描述】:

我正在尝试准备脚本以在 Windows 上配置 FTP 服务器。 我需要使用 powershell 将 SSL 设置为无 SSL。

默认情况下,SSL 设置为要求。我创建了一个 FTP 站点,但是当我尝试访问它时出现错误。是因为 SSL 吗?

也找不到配置。

【问题讨论】:

  • 那么您是在问如何关闭 SSL 吗?或者如何解决“用户无法登录”问题(似乎与 SSL 无关)?无论如何,我们都需要您当前的 PowerShell 代码。
  • docs.microsoft.com/en-us/iis/manage/… 使用配置编辑器生成 PowerShell 脚本。
  • 您的问题在这里与编程无关。还要确保在您的问题中添加所有相关信息作为文本,而不是作为内嵌图像或外部链接。当然,显然不要禁用 TLS。
  • New-WebFtpSite -Name $FTPSiteName -Port $FTPPort -PhysicalPath $FTPRootDir -IPAddress $ip $FTPSitePath = "IIS:\Sites\$FTPSiteName" $BasicAuth = 'ftpServer.security.authentication.basicAuthentication .enabled' Set-ItemProperty -Path $FTPSitePath -Name $BasicAuth -Value $True $Param = @{ Filter = "/system.ftpServer/security/authorization" Value = @{ accessType = "Allow" roles = "" users = "*" 权限 = 1 } PSPath = 'IIS:\' 位置 = $FTPSiteName }Add-WebConfiguration @param Restart-WebItem "IIS:\Sites\$FTPSiteName" -Verbose
  • @MartinPrikryl 是的,我需要关闭 SSL。我尝试使用 No SSL 手动创建 FTP 站点,并且我能够毫无问题地登录。问题仅在于脚本创建的 FTP 站点。我错过了什么

标签: powershell ssl iis ftp


【解决方案1】:

错误可能是由损坏的配置引起的。建议你回滚配置,试试下面的powershell脚本。

将 IIS FTP SSL 设置为 NO SSL 等于将“要求 SSL”设置为“允许 SSL”并删除“证书哈希”。 所以你必须同时设置

system.applicationHost/sites /[name='Site Name'].ftpServer.security.ssl.controlChannelPolicy 和 system.applicationHost/sites /[name='Site Name'].ftpServer.security.ssl。数据通道策略

请试试这个

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='MYFTP']/ftpServer/security/ssl" -name "serverCertHash" -value ""

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='MYFTP']/ftpServer/security/ssl" -name "controlChannelPolicy" -value "SslAllow"

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='MYFTP']/ftpServer/security/ssl" -name "dataChannelPolicy" -value "SslAllow"

【讨论】:

  • 我将 SSL 更改为允许 certash 值为 null。效果很好。
  • $ssl = @( 'ftpServer.security.ssl.controlChannelPolicy', 'ftpServer.security.ssl.dataChannelPolicy', 'ftpServer.security.ssl.serverCertHash' ) Set-ItemProperty -Path $FTPsitepath -Name $ssl[0] -Value $false Set-ItemProperty -Path $FTPsitepath -Name $ssl[1] -Value $false Set-ItemProperty -Path $FTPsitepath -Name $ssl[2] -Value "" 关于用户不能登录错误,“New-WebFtpSite”cmdlet 不接受 -Physicalpath。我创建了虚拟目录并将其设置为物理路径。感谢大家的帮助。
猜你喜欢
  • 2021-06-23
  • 1970-01-01
  • 1970-01-01
  • 2016-01-18
  • 1970-01-01
  • 2020-09-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多