function Set-RemoteDesktop
{
  while($InNumber -ne 6)
  {
  Write-Host " ##########################################################" -ForegroundColor Green
  Write-Host " # 1、自定义远程桌面端口;                                #"
  Write-Host " # 2、开启远程桌面;                                      #"
  Write-Host " # 3、开启防火墙远程桌面出入端口;                        #"
  Write-Host " # 4、恢复系统默认的远程桌面端口;                        #"
  Write-Host " # 5、禁用远程桌面;                                      #"
  Write-Host " # 6、退出菜单;                                          #"
  Write-Host " # ########################################################" -ForegroundColor Green
  $InNumber = Read-Host "输入编号进行操作"

switch ($InNumber)
      {
          1 {
              $PortNumber = Read-Host "请输入修改远程桌面端口号"
              Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber' -Value $PortNumber
              $PortResult = Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber'
              if($PortResult.PortNumber -eq $PortNumber)
                  {
                    Write-Host "已经成功修改端口为$PortNumber" -ForegroundColor Green
                  }
                  else
                  {
                    Write-Error "端口修改失败,请重试...."
                  }
          }
          2 {
              Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server' -Name 'fDenyTSConnections' -Value 0
              Write-Host 正在重启 Remote Desktop Services ... -ForegroundColor DarkYellow
              Set-Service TermService -StartupType Automatic -Status Running -PassThru             
          }
          3 {
              $Check = New-NetFirewallRule -DisplayName "Allow RDP" -Direction Inbound -Protocol TCP -LocalPort $PortNumber -Action Allow
              if($Check.PrimaryStatus -eq 'OK')
                {
                    Write-Host "成功设置防火墙策略" -ForegroundColor Green
                }
                else
                {
                    Write-Error "防火墙策略设置失败,请重试..."
                }

}
          4 {
              Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber' -Value 3389             
              $PortResult = Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber'
              if($PortResult.PortNumber -eq 3389)
                  {
                    Write-Host "已经成功恢复系统默认设置" -ForegroundColor Green
                  }
                  else
                  {
                    Write-Error "恢复失败,请重试...."
                  }
     
          }
          5 {
           
              Write-Host 正在停止 Remote Desktop Services ... -ForegroundColor DarkYellow
              Set-Service TermService -StartupType Disabled -Status Stopped -PassThru
              Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server' -Name 'fDenyTSConnections' -Value 1
          }
          6 {}
          Default { Write-Error "请输入1-5编号"}
      }
    Start-Sleep 2
    Invoke-Command {cls}
    }
}

Powershell 开启远程桌面的更多相关文章

  1. Windows批处理:配置防火墙规则、开启远程桌面

    一.简介 公司主机加入域后,防火墙未进行设置,规则不统一,不少主机ping不通.另打算开启远程桌面,方便远程管理网内每台主机.曾在DC上测试过域组策略内的Windows防火墙设置,无论是新增规则还是直 ...

  2. Win7系统怎么开启远程桌面?Win7远程桌面怎么用(转)

    远程桌面服务开启之后,可以方便的远程管理服务器或计算机.为生活和工作带来不少便利呢,很多小伙伴还不知道怎么开启win7远程桌面吧(下面咗嚛以内网远程桌面为例)   工具/原料 Win7 Win7远程桌 ...

  3. win7开启远程桌面

    1.启用windows防火墙 计算机管理----->服务----->Windows Firewall(双击进入,启动类型改为自动,点击应用,点击启动)2.启动gpedit.msc打开“本地 ...

  4. Windows 2008开启远程桌面连接

    具体请看下面的截图. 最重要的就是要打开远程允许远程桌面的默认端口 3389 的入站规则,我第一次弄,这一端口没打开,折腾了很久!!! 第一.首先打开“服务器管理器”—“配置”—“高级安全Window ...

  5. win10不能被远程解决方案(开启远程桌面,防火墙仍不能被远程解决方案)

    开启远程桌面,防火墙仍不能被远程解决方案 1.“Win+R”→“gpedit.msc” 2.依次展开“计算机配置”→“管理模版”→“系统”→“凭据分配”→找到“允许分配保存的凭据用于仅NTLM服务器身 ...

  6. 树莓派-Ubuntu Mate开启远程桌面xrdp服务

    树莓派3B+安装Ubuntu Mate后,开启远程桌面xrdp服务可以使用KRDC或mstsc远程登录访问,感觉比vnc要快一些: $ sudo apt install xrdp 安装后重启xrdp服 ...

  7. windows 2012 r2如何开启远程桌面

    windows 2012 r2如何开启远程桌面 编写人:左丘文 2019-7-6 Windows 2012安装完成后需要开启远程桌面才可以远程连接,网上搜索了一下,有以下几个解决办法,虽说最后还是自己 ...

  8. 如何开启远程桌面连接功能?windows的远程桌面连接功能使用步骤

    由于远程桌面的诞生,为电脑工作者提供了极大的便利.首先,推荐1款比较适合服务器管理的远程桌面: 可以管理1000+服务器/vps的远程桌面:IIS7远程桌面管理 开启远程桌面功能步骤: 1.右键点击电 ...

  9. Esxi安装Kali2并开启远程桌面

    Kali安装 登录Vmware Esxi页面,选择"创建/注册虚拟机",步骤和创建其它Linux主机类似(Esxi的安装和介绍可以参考上一篇文章) 不同的地方是,客户机操作系统版本 ...

随机推荐

  1. C#动态规划查找两个字符串最大子串

     //动态规划查找两个字符串最大子串         public static string lcs(string word1, string word2)         {            ...

  2. javascript学习笔记之array.sort

    arrayName.sort()方法: 功能是实现排序(按ascii编码或按数字大小),可无参或有参使用,无参时默认升序排列.有参时可实现升序或降序排列,参数必须是具有返回值的方法,当方法表达式大于0 ...

  3. 数据结构之列表-javascript实现

    学习数据结构的记录 列表是一种数据项构成的有限序列,即按照一定的线性顺序,排列而成的数据项的集合,在这种数据结构上进行的基本操作包括对元素的的查找,插入,和删除 列表的两种主要表现是数组和链表,栈和队 ...

  4. __clone()方法和传址区别

    示例: <?php class Computer{ public $name = '联想'; public function _run(){ return '运行中'; } } $comp1 = ...

  5. UWP学习记录9-设计和UI之控件和模式6

    UWP学习记录9-设计和UI之控件和模式6 1.图形和墨迹 InkCanvas是接收和显示墨迹笔划的控件,是新增的比较复杂的控件,这里先不深入. 而形状(Shape)则是可以显示的各种保留模式图形对象 ...

  6. MySQL深度巡检

    1. IO层面检查   (1)IO检查   查看%util是否接近100%定位是哪个磁盘IO压力大 #iostat -x 1 10 (2)iotop定位负载来源进程 查看哪个PID占用IO最高 #io ...

  7. android_studio上传svn的时候那些不提交

    buid文件夹不需要提交

  8. 如何使用IconFont字体图标代替网页图片?

    一.IconFont的优点 1.轻量性 可以减少http请求,可以配合html5离线存储做性能优化,有利于后期维护. 2.灵活性 可以自由变换IconFont大小(不失真),可以修改IconFont颜 ...

  9. web 前端- 表格字段(文件大小)单位格式化算法

                     if (value === 0) return '0 B';   var k = 1024, // or 1000   sizes = ['B', 'KB', 'MB ...

  10. Centos:Another app is currently holding the yum lock; waiting for it to exit...

    Another app is currently holding the yum lock; waiting for it to exit... 另一个应用程序是:PackageKit 内存: 27 ...