欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Windows Server Version 1709 管理之入门篇 运维 

程序员文章站 2022-05-29 23:23:45
...
摘要: 相信有部分同学们会有这样的体验,在公有云上购买了Windows Server Version 1709数据中心版的虚拟机,通过远程连接进去之后,里面全是黑乎乎的一个命令行,其它啥也没有。这,一脸懵懂啊。
 
相信有部分同学们会有这样的体验,在公有云上购买了Windows Server Version 1709数据中心版的虚拟机,通过远程连接进去之后,里面全是黑乎乎的一个命令行,其它啥也没有。是不是中毒了?系统坏了???这,一脸懵懂啊。
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
首先,请不要惊慌,系统是正常的。
 
什么是 Windows Server, version 1709?
 
Windows Server, version 1709 运行在服务器核心(Server Core)模式下。这意味着没有图形用户界面。为啥要这样做?根据微软的说法:它可以提供强大的优势,如硬件要求较低、攻击面更小并且减小了更新需求(减小了更新需求,这一点我无法认同,其他的还可以接受)。而且在这一版本里,微软没有提供图形界面到 Server Core的转换。可能是在Windows Server 2012/R2里,图形界面到Server Core的转换经常会出错,在2016里就简单粗暴一点,一旦安装,禁止转换。到了1709,直接就没有图形界面了。
 
Server Core和普通的带GUI图形界面的Windows Server 的主要区别如下:
  • 资源管理器没有了。我们熟悉的Windows Explorer,无法出现在Server Core里。
  • 所有依赖MMC的控制台界面没有了。也就是说运行*.msc将不会工作。例如:我们无法通过运行devmgmt.msc打开设备管理器了。
  • 除了区域和语言及时间,其他的控制面板选项也没有了。
  • 比较"著名"的IE也没有了。
 
Windows 管理工具简介
 
可能是为了像Linux看齐吧,Windows Server Version 1709更像Linux风格。很多习惯了Windows操作界面的人(用Windows 不用图形界面,生活将毫无意义:), 对Server core的使用无从下手。本节会提供几个Windwows 管理大杀器:PowerShell和 Project Honolulu等并对此作简单介绍。
 
PowerShell
 
幸亏有了PowerShell, 让 Windows 从传统的DOS命令行和批处理中解放了生产力。PowerShell 之父 Jeffrey Snover,在加入微软之前是搞Linux的。所以,我们可以在PowerShell里随处看到Linux Shell的影子如ls, wget, curl 等。但PowerShell绝对不是shell的简单升级。PowerShell 依赖.NET Framework实现了强大的面向对象的脚本。随着.NET FrameWork的开源和跨平台,PowerShell Core在Linux上也已经正式推出。
 
微软命名从来都是很低调的,但PowerShell命名直接就带了一个Power,可见此功能的强大。Jeffrey 在发明了PowerShell这后,直接就晋升为微软的Distinguished Engineer并且主导了Windows Server 2012的架构设计(跑远了,回来)。
 
在Windows Server Version 1709里打开PowerShell很简单,直接在命令行里输入 PowerShell(大小写不敏感)就可以打开PowerShell进行操作了。
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
PowerShell还可以像SSH那样远程管理Windows 机器。以下示例在工作组的环境下如何配置PowerShell远程,假定被管理的机器IP是 172.16.158.183。
 
  • 在被管理的机器上,运行以下PowerShell命令:
Enable-PSRemoting -Force Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
  • 如果安全组有限制, 请开放对此机器入方向的5985(HTTP)和5986(HTTPS)端口。
  • 在客户端机器上(需要远程连接被管理的机器上),运行以下命令以接受被管理的机器是受信任的。如果想管理任何机器,替换 172.16.158.183 为 *。
 
Set-Item WSMan:localhost\client\trustedhosts -value 172.16.158.183 -Force
 
否则执行下一步Enter-PsSession可能报以下错误:
Enter-PSSession : 连接到远程服务器 172.16.158.183 失败,并显示以下错误消息: WinRM 客户端无法处理该请求。如果身份验证方案与 Kerberos 不同,或者客户端计算机未加入到域中, 则必须使用
HTTPS 传输或者必须将目标计算机添加到 TrustedHosts 配置设置。 使用 winrm.cmd 配置 TrustedHosts。请注意,TrustedHosts 列表中的计算机可能未经过身份验证。 通过运行以下命令可获得有关此内容的更多信息: winrm help config。 有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。
 
所在位置 行:1 字符: 1
Enter-PSSession '172.16.158.183' -Credential:'administrator'
 
CategoryInfo : InvalidArgument: (172.16.158.183:String) [Enter-PSSession],PSRemotingTransportException FullyQualifiedErrorId : CreateRemoteRunspaceFailed
 
  • 这样,在客户端机器上通过以下PowerShell命令就可以远程"SSH"到被管理的机器上了。(该输入密码还是要输入密码)
 
Enter-PsSession –ComputerName 172.16.158.183
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
Microsoft Project Honolulu
 
微软在1709发布时同时也宣布了一个叫火奴鲁鲁的项目。火奴鲁鲁是美国夏威夷州首府和港口城市。华人称之为檀香山(又跑远了)。火奴鲁鲁项目是一个基于浏览器的图形管理工具。他是在Server Core里替代Server Manager 和MMC的管理工具。火奴鲁鲁可以从以下网站下载:
火奴鲁鲁管理配置方法:
  1. 在被管理的Server 1709机器上,运行以下PowerShell命令:
Enable-PSRemoting -Force Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
 
  1. 如果安全组有限制, 请开放对此机器入方向的5985(HTTP)和5986(HTTPS)端口。
  2. (第3步和第4步只需要做一步就可以了。)下载并安装火奴鲁鲁工具并安装在被管理的Server 1709机器上。
  • 首先介绍在Server 1709机器上安装。笔者使用了以下PowerShell命令在被管理的机器上下载了这个msi工具
 
wget -Uri http://download.microsoft.com/download/E/8/A/E8A26016-25A4-49EE-8200-E4BCBF292C4A/HonoluluTechnicalPreview1802.msi -UseBasicParsing -OutFile c:\HonoluluTechnicalPreview1802.msi
 
  • 下载完后用以下命令行执行安装。命令是立即返回的
msiexec /i c:\HonoluluTechnicalPreview1802.msi /qn /L*v log.txt SME_PORT=443 SSL_CERTIFICATE_OPTION=generate
 
  • 要验证是否安装成功,可以使用PowerShell命令 cat log.txt查看安装结果。如果有以下字样,表明安装成功。
MSI (s) (14:44) [09:48:37:885]: Product: Project 'Honolulu'(技术预览版) -- Installation completed successfully. 
MSI (s) (14:44) [09:48:37:885]: Windows Installer 已安装产品。产品名称: Project 'Honolulu'(技术预览版)。产品版本: 1.1.10326.0。产品语言: 1033。制造商: Microsoft Corporation。安装成功或错误状态: 0。
  1. (第3步和第4步只需要做一步就可以了。)此工具也可以安装在任何一个作为PowerShell远程的客户端机器上。
  • 可以用浏览器下载并安装.
  • 安装完成后,可以打开 https://localhost/ 然后添加我们需要管理的Server 1709的机器的地址。
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
  1. 安装完成后,可以通过任何可以访问到安装了火奴鲁鲁的机器的浏览器打开。很意外的,居然不支持IE浏览器。必须要Microsoft Edge或者Chrome。
 
Sconfig
 
这个工具在Server Core诞生的那一天就有。不过现在被隐藏了。在命令行中入sconfig就能出现此命令。能满足基本需要,功能不是很强大。
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
远程Server Manager
 
这个是目前主要的管理形式,不过只读功能较多,可以操作的配置很少。暗地里已经被Project Honolulu取代,因此本文不做描述。
 
管理 Windows Server, version 1709的常见操作FAQ
 
如何拷贝文件到Server 1709?
 
这里假定要复制的文件在客户端机器上。通过PowerShell远程和通过Project Honolulu的方法都在客户端机器和Server 1709的被管理机器已经按上面的方法进行了配置。
通过远程RDP
  1. 在客户端机器上,右击文件并选择复制。
  2. 远程mstsc 到Server 1709上。
  3. 在远程机器上打开notepad.依次 文件 -> 打开。在打开对话框里,选择一个盘的路径,右击粘贴。文件就复制过来了。这是我最喜欢的一种方法。
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
通过PowerShell远程
 
在客户端机器上运行以下PowerShell命令即可:
 
$session = New-PSSession -ComputerName 172.16.158.183 Copy-Item -ToSession $session -Path C:\1.txt -Destination c:\2.txt
C:1.txt是客户端机器的文件位置。C:2.txt是要拷贝到目标机器上的位置。
 
通过Project Honolulu
 
依次点击被管理的机器-> 文件 -> 上传。
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
如何从内部关闭或者重启Server 1709虚拟机?
 
通过远程RDP
  1. 远程RDP到Server 1709上。
  2. 在命令行里输入sconfig,然后根据需要选择13 -重启,14-关机并回车就可以了。
  3. 或者输入以下命令行/PowerShell直接重启或者关机:
shutdown -r -t 00 ::命令行 在0秒后重启 shutdown -s -t 00 ::命令行 在0秒后关机 Stop-Computer -Force # Powershell 立即关机 Restart-Computer -Force # Powershell 立即重启
 
通过PowerShell远程
 
在客户端机器上运行以下PowerShell命令即可:
Enter-PsSession –ComputerName 172.16.158.183 Restart-Computer -Force #重启 Stop-Computer -Force #关机
 
通过Project Honolulu
 
依次点击被管理的机器-> 概述。
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
如何安装IIS服务?
 
通过远程RDP
  1. 远程RDP到Server 1709上。
  2. 在命令行里输入PowerShell, 然后再执行以下PowerShell命令:
Import-Module ServerManager Add-WindowsFeature Web-Server, Web-CGI, Web-Mgmt-Console
 
通过PowerShell远程
 
在客户端机器上运行以下PowerShell命令即可:
Enter-PsSession –ComputerName 172.16.158.183 Import-Module ServerManager Add-WindowsFeature Web-Server, Web-CGI, Web-Mgmt-Console
 
通过Project Honolulu
 
依次点击被管理的机器-> 角色和功能 -> 选择 Web服务器 并确定需要的功能。
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
不小心在RDP会话中关闭了命令行窗口怎么办?
 
如果在远程会话中不小心关闭了命令行窗口,可以通过远程桌面发送 Ctrl + Alt + Del组合键,在出现的界面选择 任务管理器 回车后出现任务管理器,依次点 文件 -> 新建任务,输入cmd就可以了。
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
阅读更多干货好文,请关注扫描以下二维码: 
Windows Server Version 1709 管理之入门篇
            
    
    
        运维 
 
相关标签: 运维