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. js 与 jq 的节点添加删除实例

    JavaScript实例:XML DOM节点的添加 <!DOCTYPE html> <html> <head> <meta charset="utf ...

  2. python之路:Day02 --- Python基础2

    本节内容 1.列表操作 2.元组操作 3.字符串操作 4.字典操作 5.集合操作 6.文件操作 7.字符编码与转换 一.列表操作 定义列表 names = ['Ming',"Hua" ...

  3. thinkphp 3.2.3 session 丟失問題

    之前做的几个 站session在跨页时也不会丢失(都在同一台服务器,所以我排除了服务器配置问题),这次居然很奇怪的发生的,在火狐上有,在ie, 谷哥上没有session,看了很多网上的贴子 其中有一个 ...

  4. IO(1)

    java的IO主要在java.io包下,包括字节流和字符流. 1 File File类可以对文件和目录进行操作,就是不能访问文件本身,其常用方法包括: 1)String getName(),返回fil ...

  5. Linux学习笔记(12)-进程间通信|匿名管道

    Linux的进程间通信有几种方式,包括,管道,信号,信号灯,共享内存,消息队列和套接字等-- 现在一个个的开始学习! ----------------------------------------- ...

  6. 服务升级中的zookeeper

    服务升级中zookeeper可以管理服务中的配置以及作为leader选举以及分布式事务等, 在这次主要用于配置管理,关于配置管理主要设计如下,通过zookeeper管理配置项,通过 管理界面来管理数据 ...

  7. 切图时图片的选择:JPG、PNG、GIF的区别

    目前网站图片的采用一共有流行三种,分别是JPG.PNG.GIF,然而很多人并不知道三者在选择的时候究竟应该选谁.虽然都可以存储图片,但是如果要发布到网上,就必须考虑速度.大小和失真程度的问题.如果你运 ...

  8. 【Python装饰者】在函数测试的作用

    [引言] 我们经常需要多函数进行耗时测试,测试方法有许多,这里介绍装饰者的方法,提高耗时测试代码的可复用性,在其他方面的应用也是如此. [设计原则] 类应该对扩展开放,对修改关闭. [代码] (1)定 ...

  9. C++-数据库【1】-C++连接MSSQL数据库

    测试环境—— 系统:Win7 64bit 编译器:VC++ 2015 数据库:MSSQL 2008 R2 #include <Windows.h> #include <stdio.h ...

  10. Spring 使用 SLF4J代替 Commons Logging 写日志 异常

    项目的日志更换成slf4j和logback后,发现项目无法启动.错误提示 Caused by: java.lang.NoClassDefFoundError: Lorg/apache/commons/ ...