修改远程桌面服务(Remote Desktop Service)的端口号,有几点原因:

  1. 默认是 3389 端口,也是经常被端口嗅探器扫描的一个端口。更换端口号,一定程度上可以带来更好的安全性。
  2. 如果一个路由器后,有多台电脑希望可以被远程访问,那么可以通过 a) 定制不同的端口号 b) 路由器上设置不同端口的 port forwarding 两个简单的步骤,完成这个需求。

运行下面这个简单的脚本,如「python modify_remote_desktop_port.py 6789」就可以将 RDP 的端口号修改为 6789(如果没有提供第二个参数,则默认是修改为 5589)。

# -*- coding: utf-8 -*-
# filename: modify_remote_desktop_port.py import winreg def ModifyRDPort(port=5589):
keyString = 'HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber'
ksList = keyString.split('\\')[1:-1] portKey = winreg.ConnectRegistry(None, winreg.HKEY_LOCAL_MACHINE)
for i in ksList:
portKey = winreg.OpenKey(portKey, i, access=winreg.KEY_ALL_ACCESS) # @keyItemValue is a (value, type) tuple.
keyItemValue = winreg.QueryValueEx(portKey, 'PortNumber')
assert(keyItemValue[1] == winreg.REG_DWORD) winreg.SetValueEx(portKey, 'PortNumber', None, winreg.REG_DWORD, port)
winreg.CloseKey(portKey) if __name__ == '__main__':
import sys
if len(sys.argv) == 1: # 'python module_name.py'
ModifyRDPort()
else:
try:
port = int(sys.argv[1])
ModifyRDPort(port)
except ValueError:
print('Usage: python modify_remote_desktop_port.py $port_name_integer')

「2013-9-14」Change Remote Desktop Port的更多相关文章

  1. [转帖]「知乎知识库」— 5G

    「知乎知识库」— 5G 甜草莓 https://zhuanlan.zhihu.com/p/55998832 ​ 通信 话题的优秀回答者 已关注 881 人赞同了该文章 谢 知识库 邀请~本文章是几个答 ...

  2. 「查缺补漏」巩固你的Redis知识体系

    Windows Redis 安装 链接: https://pan.baidu.com/s/1MJnzX_qRuNXJI09euzkPGA 提取码: 2c6w 复制这段内容后打开百度网盘手机App,操作 ...

  3. Appium常用操作之「Toast提示信息获取」

    坚持原创输出,点击蓝字关注我吧 作者:清菡 博客:Oschina.云+社区.知乎等各大平台都有. 目录 一.什么是 Toast 二.获取 Toast 提示信息的前提 1.针对这种元素,有的时候我们需要 ...

  4. Microsoft Remote Desktop 通过 .rdp 文件登录

    最近在淘宝上买了「市场洞察」子账号,说是子账号,其实是需要登录到他们的 Windows 服务器上才能用的.并且子账号也是 5-6 个人共用的,且不说远程服务器很老又有延迟,经常是我想添加一个监控店铺或 ...

  5. Remote Desktop File Format

    转自:http://engrmosaic.uncc.edu/mosaic-anywhere/remote-desktop-file-format The new Terminal Services c ...

  6. (copy) How to remote desktop a Fedora 19 from a Windows 7

    source: http://forums.fedoraforum.org/showthread.php?t=293665 Try xrdp or freerdpInstall xrdp or fre ...

  7. remote desktop connect btw Mac, Windows, Linux(Ubuntu) Mac,Windows,Linux之间的远程桌面连接

    目录 I. 预备 II. Mac连接Windows III. Windows连接Mac IV. Windows连接Ubuntu V. Mac连接Ubuntu VI. Ubuntu连接Mac VII, ...

  8. Objective-C 实用关键字详解1「面试、工作」看我就 🐒 了 ^_^.

    在写项目 或 阅读别人的代码(一些优秀的源码)中,总能发现一些常见的关键字,随着编程经验的积累大部分还是知道是什么意思 的. 相信很多开发者跟我当初一样,只是基本的常用关键字定义属性会使用,但在关键字 ...

  9. 「面向打野编程」iOS多线程:CGD

    「面向打野编程」iOS多线程:CGD 前言 参考网络其他文章而写,渣水平,抛砖引玉. 虽然Concurrent意思为并发,但由于队列的实际效果,以下称为并行队列. 当前iPhone的CPU核心数远小于 ...

随机推荐

  1. 通过案例对 spark streaming 透彻理解三板斧之二:spark streaming运行机制

    本期内容: 1. Spark Streaming架构 2. Spark Streaming运行机制 Spark大数据分析框架的核心部件: spark Core.spark  Streaming流计算. ...

  2. mongoDB 使用手册

      1.基本操作db.AddUser(username,password) 添加用户db.auth(usrename,password) 设置数据库连接验证db.cloneDataBase(fromh ...

  3. MAT内存问题分析定位

    MAT内存问题分析定位 1.下载安装MemoryAnalyzer工具. 2.使用DDMS将对应线程的内存日志导出来后,使用hprof-conv工具进行转换,用MAT打开转换后的hprof文件.

  4. malloc()参数为0的情况

    问题来自于<程序员面试宝典(第三版)>第12.2节问题9(这里不评价<程序员面试宝典>,就题论题): 下面的代码片段输出是什么?为什么? char *ptr; ))==NULL ...

  5. ubuntu 挂载windows共享目录的方法

    建立windows共享目录 右击要共享的文件夹-->属性-->高级共享-->添加用户-->添加完全控制权限 假设建立的共享地址为\\192.168.1.100\Linux 获取 ...

  6. WCF学习第一天

    WCF 设计目标 : 1:生产效率 : 统一了现有的各种分布式技术                          基于属性(Attribute)的开发                       ...

  7. 济南学习D2T1__折纸带

    他[问题描述]一张长度为n的纸带,我们可以从左至右编号为0 −n(纸带最左端标号为0) .现在有m次操作,每次将纸带沿着某个位置进行折叠,问所有操作之后纸带的长度是多少.[输入格式]第一行两个数字n, ...

  8. iOS 设置 文字和 图片的位置

    1.我最开始实现这个采用的方法:重新自定义一个view,然后有两个属性label和imageView,然后设置位置布局,再添加单击手势,用代理回传点击方法. 2.第二种方法:自定义一个Button继承 ...

  9. Spinal Tap Case

    function spinalCase(str) { // "It's such a fine line between stupid, and clever." // --Dav ...

  10. Java中字符串比较时==和equals的区别

    ==是比较两个字符串引用的地址是否相同,即是否指向同一个对象,而equals方法则比较字符串的内容是否相同. 例如String a = "abc"; String b = &quo ...