电脑pptp端口怎么开

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了电脑pptp端口怎么开相关的知识,希望对你有一定的参考价值。

想改变pptp 的端口,google了一下才发现似乎没有任何无痛的方法,每个方法都有点不足。
1、服务器端使用pptpd,网上找到3种方法:添加iptables规则、修改/etc/services 文件和修改pptpd源代码。
1-1、添加iptables规则
这个方法很简单,就是在数据包进入网关时就修改其源端口为vpn的默认端口1723,实现端口重定向:
iptables -t nat -A PREROUTING -p tcp --dport 31723 -j REDIRECT --to-ports 1723

这样做的缺点是,占用了两个端口,而且还需要其他iptables规则来防止外网直接访问1723端口才能达到隐藏的目的。
1-2、修改 /etc/services 文件
/etc/services/ 文件里定义了标准网络服务所对应的端口。虽然不是强制使用,但pptpd就是使用其中定义的端口来提供服务的。搜索pptp,可以找到:
...
hks-lm 1722/tcp
hks-lm 1722/udp
pptp 1723/tcp
pptp 1723/udp
csbphonemaster 1724/tcp
csbphonemaster 1724/udp
...

将pptp开头的两行后面的1723改成想使用的端口。如果pptpd服务已经启动了的话,就重新启动一下,就可以使用新端口了。如果对于不能重启pptpd服务的情况,这种方法就没有第一种方法好,但相对下面的方法也算很简捷了。
1-3、修改pptpd源代码
下载了pptpd的源代码,grep了一下,发现在 pptpdefs.h 文件里有如下定义:
...
/* PPTP ctrl message port */
#define PPTP_PORT 1723
...

尝试修改了,再编译安装后,运行发现不起作用,但是无论是原来的端口还是修改后的端口都没法使用。也不知道是哪里出错,暂时没找到原因。不过有了上两种方法,这个方法能否成功也无所谓了。
2、客户端使用pptpclient,参考上面服务器的修改方法
2-1、添加iptables规则
这个方法不太适合这种情况,因为是要对发出去的包的端口号进行修改,则当包回来的时候也要将其端口改回来,其实就相当于建立了一个管道了,比较麻烦。而且要对包进行标记和跟踪,需要很多步骤。
2-2、修改 /etc/services 文件
这个方法对客户端无效,也许客户端根本就不会读取 /etc/services 。
2-3、修改pptpclient源代码
从pptpclient官网下载了源代码,grep之后,找到pptp端口的定义是在 pptp_msg.h文件中:
...
/* PPTP magic numbers: ----------------------------------------- */
#define PPTP_MAGIC 0x1A2B3C4D /* Magic cookie for PPTP datagrams */
#define PPTP_PORT 1723 /* PPTP TCP port number */
#define PPTP_PROTO 47 /* PPTP IP protocol number */
/* Control Connection Message Types: --------------------------- */
...

修改其中 PPTP_PORT 的值后make,运行发现有效,可以顺利连接到已经修改过的pptp vpn的端口上。
发现pptpclient的结构比较简单,如果想嵌入到其他的软件里也比较方便,只需要了解一下其中主要函数的调用即可。
参考技术A 直接用VPN

怎么查看自己计算机的端口

参考技术A 分类: 电脑/网络
问题描述:

怎么查看自己计算机的端口

解析:

1. Windows本身自带的stat命令

关于stat命令,我们先来看看windows帮助文件中的介绍:

Netstat

显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。

stat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]

参数

-a

显示所有连接和侦听端口。服务器连接通常不显示。

-e

显示以太网统计。该参数可以与 -s 选项结合使用。

-n

以数字格式显示地址和端口号(而不是尝试查找名称)。

-s

显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。

-p 选项可以用来指定默认的子集。

-p protocol

显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。

-r

显示路由表的内容。

interval

重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,stat 将打印一次当前的配置信息。

好了,看完这些帮助文件,我们应该明白stat命令的使用方法了。现在就让我们现学现用,用这个命令看一下自己的机器开放的端口。进入到命令行下,使用stat命令的a和n两个参数:

C:\>stat -an

Active Connections

Proto Local Address Foreign Address State

TCP 0.0.0.0:80 0.0.0.0:0 LISTENING

TCP 0.0.0.0:21 0.0.0.0:0 LISTENING

TCP 0.0.0.0:7626 0.0.0.0:0 LISTENING

UDP 0.0.0.0:445 0.0.0.0:0

UDP 0.0.0.0:1046 0.0.0.0:0

UDP 0.0.0.0:1047 0.0.0.0:0

解释一下,Active Connections是指当前本机活动连接,Proto是指连接使用的协议名称,Local Address是本地计算机的 IP 地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的 IP 地址和端口号,State则是表明TCP 连接的状态,你可以看到后面三行的监听端口是UDP协议的,所以没有State表示的状态。看!我的机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河!急忙断开网络,用杀毒软件查杀病毒是正确的做法。

以上是关于电脑pptp端口怎么开的主要内容,如果未能解决你的问题,请参考以下文章

怎么查看电脑的端口号

怎么查看远程电脑开的远程桌面端口(3389)?

怎么查看电脑端口?

荣耀7i usb调试开了怎么还连不上电脑

如何在AWS上搭建PPTP VPN

Caddy端口正常网页打不开