powershell - Powershell CREDSSP 和 TLS 1.2
问题描述
服务器 A 是 Server 2008 R2、Powershell V3 启用所有 SSL 和 TLS 以及所有密码。服务器 B 是 Server 2016、Powershell V5 和仅 TlS 1.2 和特定的密码集。
我无法让 Credssp 身份验证从 A 工作到 B,即使我使用
Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
我知道这是每个会话设置,所以我包含在脚本本身中。
如果我将服务器 B (Server 2016) 设置为打开所有 SSL 和 TLS 加密,则 CREDSSP 工作没有问题。
是的,我需要使用 CREDSSP,因为服务器 B 上的脚本引用了服务器 A 上的文件共享。
这是我正在使用的脚本,它再次在启用所有版本的 TLS 时工作。
$pass = ConvertTo-SecureString "password" -asplaintext -force
$mycred = new-object -typename System.Management.Automation.PSCredential -argumentlist "domain\user.service",$pass
#
#
# The Remote Execution Command. Fully Qualified Domain name is critical since we are using Credssp.
# Credssp is being used to resolve an issue with a double hop authentication issue.
Invoke-Command -ComputerName ServerB.domain.edu -command { C:\HelloWorld.ps1 } -Authentication Credssp -Credential $mycred
我还没有尝试过但我会尝试的一件事是将服务器 A 和 B 都放在 TLS 1.2 上,看看它是否可以这样工作。这不是一个长期的解决方案,因为此时不能将服务器 A 设置为仅 TLS 1.2。
解决方案
推荐阅读
- wordpress - “我们无法预览您页面的这个区域,因为它在 IFRAME 中”wordpress 网站上的谷歌广告错误
- android - Firebase 测试实验室为 /jacoco.exec 抛出 FileNotFound
- javascript - 如何从 html 表单获取用户输入的数据并添加到 JSON 字符串以使用 JS/Jquery 在 POST 请求中发送
- python-3.x - 为什么我在运行代码时会出现此错误?错误=对已关闭文件的 I/O 操作
- node.js - 节点 - 错误:不支持方言 mariadb。支持的方言:mssql、mysql、postgres 和 sqlite
- file - 文件上传并保存在 Blazor 服务器端
- javascript - 如何动态更改VueRouter源文件?
- python-3.x - 将迭代值存储在多维列表中
- python - 网页抓取网页抓取带有 url 的 pdf 文档,该 url 在网站上使用 Python 更改
- jquery - 我可以将 jQuery 事件存储在变量中吗?