如何用powershell管理多台win服务器
前两天群里有人问:如何管理100台win服务器。这是很现实的问题。我们以100win2003为例。
ip + 端口 + 用户名 + 密码 的安全连接,成熟的。貌似只有vpn和ssl吧。 而ssl是轻量的,比vpn适合承载远程管理命令。
你让这100台psremoting,都买vpn网关硬件装上,又或者搞100个软vpn网关,这就不现实了。 同样,有了vpn,psremoting又基本不需要了。 ps-remouting也没实现vpn啊。
顾我认为powershell远程管理运维人员,目前强烈需要的是win版的sshd,和scp(sftp)软件。 而我目前发现了类似的软件,分享给大家!
http://www.freesshd.com/
首先它是个第三方免费win sshd服务器。其次你登录后的命令行,可以定义成powershell,和cmd。别的软件只能是cmd。 有了这个,你就可以安全地,远程运行powershell命令,当然dos命令也行。
http://www.powershellserver.com/download/
随便输入名字和邮箱即可下载。
第三方免费win sshd服务器。一个连接免费。多个连接收费。商业软件,是可靠的。
http://www.sftpnetdrive.com/download-thanks
图形界面的,有免费版。映射sftp用户磁盘目录(支持win,linux)成为盘符,
https://filezilla-project.org/
FileZilla Client 是图形界面的。免费的ftp客户端,也支持sftp上传文件,下载文件,同步文件等。
著名的putty
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
这里主要用pscp.exe psftp.exe 这两个软件,是命令行界面的。在sshd和客户机之间复制文件,上传下载脚本。
SSH Secure Shell Client 3.2.9
http://www.onlinedown.net/soft/20089.htm
在(win或linux的)sshd服务器上运行命令。内含ssh2.exe scp2.exe sftp2.exe ssh2.exe
user@host ls -l;cat /etc/fstab
关于文件同步
手动映射盘符,然后用图形软件同步,或者用robocopy同步。 对于巨大文件的,文件内容差异同步。没什么好办法。应该用rsync,或者http + zsync。
免费+开源powershell的ssh命令行模块。
http://www.powershelladmin.com/wiki/SSH_from_PowerShell_using_the_SSH.NET_library
导入模块用: Import-Module SSH-Sessions
建立连接用: New-SshSession -computername ip地址 -port 端口 -username 用户名 -password 密码
删除连接用: Remove-SshSession -computername ip地址
进入连接用: (注意:linux命令行中无法运行cd命令,没有tab补全) Enter-SshSession -ComputerName ip地址
离开连接用: exit
获取linux命令结果用: $SshSessions.'ip地址'.RunCommand("命令内容").Result
例子:
Import-Module ssh-sessions
New-SshSession -computername ip地址 -port 端口 -username 用户名 -password 密码
[string]$linux命令行 = "cat /etc/fstab"
$返回结果 = $SshSessions.'ip地址'.RunCommand($linux命令行).Result
write-host $返回结果
【powershell的远程管理比sshd的坏在哪?】
经过试用,我觉得ps-remoting的远程管理做的并不好。简直是反人类!
1为了安全,把配置过程搞的太麻烦。太细。几乎没人能配置成功!
2要求域,主机名绑定证书。这不太现实。
3 认证方式太多,但几乎没有好用的。失败中的失败。
3.1 用户名和密码以明文形式发送到服务器=失败。
3.2 ntlm,我认为这个只适合于域用户,并且在局域网中=失败。
3.3 Digest搞不懂。
3.4 Kerberos不支持ip地址,只支持域名=失败。
3.5 CredSSP要求域名=失败。
3.6 ssl要求绑定域名,或者ip=失败。
比如我要管理20台win机子,就要20个不同的证书。 还要把证书分别绑定在,服务端的powershell上。 客户端还要导入20个证书。 这比【支持多个连接】的远程桌面软件麻烦许多!
4 无法实现文件传输,或者很麻烦。或者说需要额外的http,ftp文件上传下载功能。不如scp,sftp。
原文链接:https://www.qiquanji.com/post/7206.html
本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。
微信扫码关注
更新实时通知