我有一个 Azure 文件共享,并希望在我的 Azure VM 中使用它 - 在使用 cmdkey 在 VM 上保留凭据并使用网络使用挂载之后。这是通过在 Windows Server 2012 R2 上的本地 Powershell 会话中运行这些命令来测试的。
但我需要将此步骤添加到 Azure 部署脚本中。Azure Powershell 脚本从我的笔记本电脑运行,连接到 Azure 订阅并使用大量变量从头开始构建 VM。
想出使用 Invoke-Command 将变量从 Azure Powershell 脚本传递到新创建的 VM 上的远程 Powershell 会话。
$Session = New-PSSession -ConnectionUri $Uri -Credential $DomainCredential
$ScriptBlockContent = {
Param ($Arg1,$Arg2,$Arg3)
cmdkey /add:$Arg1 /user:$Arg2 /pass:$Arg3}
Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key)
Run Code Online (Sandbox Code Playgroud)
和错误:
PS C:\> Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key)
CMDKEY: Credentials cannot be saved from this logon session.
Run Code Online (Sandbox Code Playgroud)
替换成cmdkey …
注意:我今天早上问了这个关于 EC2 盒子的问题,但只得到了启动和停止实例的工具的链接,所以我会改写...
我有几个 Linux 机器为我的一个项目执行夜间处理工作。有时,我需要进入,进行一些代码更改,配置一些东西,移动文件等。
我用于这些操作的工具集非常稀少(SSH 进入盒子,在 VIM 中编辑文件,我需要 WGET 远程文件),我怀疑有更好的方法来做到这一点。我很想知道我职位上的其他人在做什么。
您是否使用某种形式的窗口系统和远程桌面等价于访问该框,还是全部是命令行?管理远程 Windows 设备是微不足道的,因为您可以简单地远程进入桌面并通过网络传输文件。在 Linux 世界中是否有类似的东西?
您是否直接在机器上进行配置文件更改/脚本调整?或者您是否在本地机器上设置了一些东西来远程编辑这些文件?或者您只是远程编辑它们然后在每次保存时传输它们?
您如何在服务器和本地环境之间来回移动文件?FTP?通过 VPN 某种映射驱动器?
我真的需要一些最佳实践来管理这些盒子。任何消除一些痛苦的建议将是最受欢迎的!
标题几乎说明了一切。
我正在使用具有集成 IPMI 支持的超微板。当我远程连接时,我可以控制鼠标和键盘,但视频是全黑的(没有显示错误)。
板载视频已关闭(跳线设置),我正在使用安装了 PCI-E 的卡的视频输出。远程 K V M 是否仅适用于板载视频?
我试图允许超过默认值的 2 个并发远程连接到运行 Windows Server 2003 的服务器。
背景:
我去了“开始”=>“管理工具”=>“终端服务配置”
我在连接树中打开了“RDP-tcp”的“属性”并选择了“网络适配器”选项卡:
这是许可问题吗?如果没有,我如何允许超过 2 个远程会话?
remote-access windows-server-2003 remote-desktop windows-terminal-services
我有几台带有 IBM BMC(基板管理控制器)的服务器。我想在不重新启动服务器的情况下重新启动 BMC。这可能吗?如何?
注意:其中之一,Web 界面关闭;所以我需要通过物理重新启动 BMC(不知道如何做到这一点 - 即使服务器上的电源按钮不应该回收 BMC,我相信)或通过 UDP 或 SNMP 接口(再次,也不知道该怎么做)
如何从 Windows 计算机编写其他 Windows 计算机上的远程命令脚本?
例如,在 *nix-*nix 网络上,我可以做ssh wu@otherbox foo,只要密钥设置正确,foo运行并且 ssh 客户端返回返回代码。
是否有任何替代 Clusterssh、pssh 等的方法来通过一个界面管理多个基于 ssh 的服务器?
Clusterssh 的一个弱点是我的服务器使用基于密钥的身份验证,使用 passhprase 登录,而无法使用私钥登录服务器。
是否有任何可用的替代方法支持使用私钥进行身份验证?
我目前正在尝试在 2 个不受信任的域之间启用 Windows 远程管理(特别是 Powershell 远程处理),但没有成功。
我的设置的简要说明:
这些域之间不存在信任。
我正在尝试从我的工作站(加入 domain1)使用以下命令创建 Powershell 远程连接:
参数 (
[参数(强制=$True)]
$服务器
)
$username = "域\用户"
$password = read-host "输入 $username 的密码" -AsSecureString
$credential = 新对象 System.Management.Automation.PSCredential($username, $password)
$session = New-PSSession "$server" -Authentication CredSSP -Credential $credential -UseSSL -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck)
Enter-PSSession $session
这会导致以下错误消息:
New-PSSession : [computername.domain2.com] 连接到远程服务器 computername.domain2.com 失败并显示以下错误消息:WinRM 客户端
无法处理请求。计算机策略不允许将用户凭据委派给目标计算机,因为该计算机不受信任。目标的身份
如果您使用以下命令将 WSMAN 服务配置为使用有效证书,则可以验证计算机: winrm set winrm/config/service '@{CertificateThumbprint=""}' 或
您可以在事件查看器中检查指定无法创建以下 SPN 的事件:WSMAN/。如果您发现此事件,您可以使用手动创建 SPN
setspn.exe 。如果 SPN 存在,但 CredSSP … 我的问题是找到一种通过 SSH 连接到 IP 地址每天都在变化的 Linux 服务器(Ubuntu 18.04)的方法。
我有一个客户,我偶尔会帮助他处理管理任务。当他们需要帮助时,我需要通过 ssh 进入机器,但他们没有静态 IP,因此服务器的公共 IP 不断变化。我创建了一个小脚本来报告Linux机器的IP地址,发现它每天中午左右变化一次。
我能够设置 SSH,它可以在本地和远程工作......直到 IP 地址发生变化。一旦发生这种情况,即使使用新的 IP 地址,我也无法再进行远程连接。
更新
需要明确的是,我的问题不是找到新的 IP 地址。我已经有一个脚本可以做到这一点。问题是服务器在 IP 更改后停止响应,即使我尝试使用新 IP 地址进行连接。
如果我在目标机器上重新启动 SSH 服务,我又可以远程访问了。但我不明白为什么我必须这样做。我想知道根本原因,希望找到更好的解决方案。
大多数人似乎认为只要我们知道新 IP,SSH 就应该可以工作,那么这是 18.04 独有的吗?我最近为客户端安装了这个服务器,所以所有的配置设置仍然是默认的。(不知道怎么改。)
我将在远程位置部署一台 Linux 机器作为一种公共终端。我希望能够通过 SSH 远程访问它进行维护,但我不想在我需要访问这台机器的极少数情况下保持远程防火墙上的端口打开。我已经考虑过一个简单的脚本来创建一个到外部机器的反向 SSH 隧道,但是我不想让用户在需要访问它时必须做任何事情。有任何想法吗?
更新:我决定按照我最初的脚本计划来创建反向 ssh 隧道。虽然其他建议的解决方案(例如端口敲门)更符合我真正想做的事情,但在这种情况下,除了引导用户完成配置之外,我没有任何权限来配置路由器。不寒而栗
remote-access ×10
linux ×3
ssh ×3
powershell ×2
cluster ×1
hardware ×1
ibm ×1
ipmi ×1
supermicro ×1
windows ×1
winrm ×1