Windows系统常用端口详解

Windows系统常用端口详解

7,9,13,17,19

这是几个简单的TCP/IP服务,在windows中被Simple TCP/IP Services管理。

7 : Echo 服务:将接收到的数据原样返回。

9 : Discard 服务:会丢弃所有接收到的数据,并且不返回任何数据。

13 : Daytime 服务:返回系统的时间。

17 : Quote of the Day 服务:每日一句。

19 : Character Generator 服务: 会发送一个字符序列,每个字符由一个字节表示。

java测试代码

点击展开/折叠代码块

public class SocketTest {

/**

* echo服务会将接收到的数据原样返回。

*/

@Test

@SneakyThrows

public void echoTest() {

String host = "localhost";

try (var s = new Socket(host, 7)) { // Echo 使用端口 7

s.setSoTimeout(5000);

try (OutputStream out = s.getOutputStream(); InputStream in = s.getInputStream()) {

String message = "Hello, Echo!";

out.write(message.getBytes(StandardCharsets.UTF_8));

out.flush();

byte[] buffer = new byte[1024];

int bytesRead = in.read(buffer);

String response = new String(buffer, 0, bytesRead, StandardCharsets.UTF_8);

System.out.println("Received: " + response);

}

}

}

/**

* Discard 服务会丢弃所有接收到的数据,并且不返回任何数据。为了验证这个服务,可以发送一些数据并观察没有响应。

*/

@Test

@SneakyThrows

public void discardTest() {

String host = "localhost";

try (var s = new Socket(host, 9)) { // Discard 使用端口 9

s.setSoTimeout(5000);

System.out.println("connect localhost Discard 9 port : " + s.isConnected());

try (OutputStream out = s.getOutputStream()) {

out.write("Test data".getBytes(StandardCharsets.UTF_8));

out.flush();

}

System.out.println("Data sent, no response expected.");

}

}

/**

* 获取daytime协议服务器的时间

*/

@Test

@SneakyThrows

public void socketTest() {

// String host = "time-a.nist.gov";

String host = "localhost";

try (var s = new Socket(host, 13)) {

s.setSoTimeout(5000);

try (var in = new Scanner(s.getInputStream(), StandardCharsets.UTF_8)) {

while (in.hasNextLine()) {

String line = in.nextLine();

System.out.println(line);

}

}

}

}

/**

* quote of the day,返回一句名言

*/

@Test

@SneakyThrows

public void quoteTest() {

String host = "localhost";

try (var s = new Socket(host, 17)) { // Quote of the Day 使用端口 17

s.setSoTimeout(5000);

try (var in = new Scanner(s.getInputStream(), StandardCharsets.UTF_8)) {

while (in.hasNextLine()) {

String line = in.nextLine();

System.out.println(line);

}

}

}

}

/**

* Character Generator 服务会发送一个字符序列,每个字符由一个字节表示。

*/

@Test

@SneakyThrows

public void characterGeneratorTest() {

String host = "localhost";

try (var s = new Socket(host, 19)) { // Character Generator 使用端口 19

s.setSoTimeout(5000);

try (var in = new Scanner(s.getInputStream(), StandardCharsets.UTF_8)) {

for (int i = 0; i < 10 && in.hasNextLine(); i++) {

String line = in.nextLine();

System.out.println(line);

}

}

}

}

}

53

53 端口是 DNS(域名系统)使用的标准端口,支持 UDP 和 TCP 协议。DNS 是将网站域名(如 example.com)转换为 IP 地址(如 93.184.216.34)的服务。UDP 用于普通查询,TCP 用于区域传输(zone transfer)等较大数据交互。

如果设备对外开放了 53 端口,可能意味着它正在运行一个 DNS 服务器。应当避免无意中对外暴露 DNS 服务,防止被滥用进行 DNS 放大攻击。

135

135端口主要用于Microsoft的远程过程调用(RPC)服务。RPCSS(Remote Procedure Call Subsystem) 服务是 COM 和 DCOM 服务器的服务控制管理器。它执行 COM 和 DCOM 服务器的对象激活请求、对象导出程序解析和分布式垃圾回收。如果此服务被停用或禁用,则使用 COM 或 DCOM 的程序将无法正常工作。强烈建议你运行 RPCSS 服务。

139

139 端口是用于 NetBIOS Session Service(网络基本输入输出系统会话服务)的端口,基于 TCP 协议。它是早期 Windows 局域网文件和打印共享服务(SMB over NetBIOS)的组成部分。

如果此端口对外开放,攻击者可能会尝试进行信息枚举、密码爆破甚至远程代码执行等攻击。出于安全考虑,在现代网络中应避免暴露 139 端口,尤其是在公共或互联网环境下。

445

445 端口 是现代 Windows 网络共享和远程文件访问使用的主要端口,服务于 SMB(Server Message Block)协议的直接 TCP 通信(即 SMB over TCP)。它允许计算机之间进行文件共享、打印服务和远程管理等操作。

许多严重漏洞(如 WannaCry 勒索病毒)都曾利用该端口攻击。除非你确实需要它(如内网共享),强烈建议关闭对外 445 端口,或在防火墙中加以限制。

3389

3389端口是Windows 的远程桌面连接(Remote Desktop Protocol,RDP)使用的默认端口。远程桌面允许你使用远程桌面客户端(适用于Windows、Android、iOs和 macOs)从远程设备连接到这台电脑并加以控制。这样,你就可以通过其他设备工作,如同直接在这台电脑上工作一样。

5357端口

5357端口通常用于Microsoft Windows的WS-Discovery(Web Services Dynamic Discovery)。这是一个用于网络设备自动发现的协议,特别是在局域网内使用。这意味着某些Windows设备可能会在这个端口上进行广播,以便发现和识别同一网络中的其他设备。

要关闭端口5357上的WS-Discovery服务,可以通过禁用相关服务来实现。以下是步骤:

通过服务管理器禁用 WS-Discovery 服务

打开服务管理器:

按 Windows + R,输入 services.msc,然后按回车。

找到并禁用服务:

在服务列表中找到名为 Function Discovery Resource Publication 和 SSDP Discovery 的服务。

对每个服务右键单击,选择“属性”。

将“启动类型”设置为“禁用”。

如果服务正在运行,点击“停止”。

相关推荐

365bet体育在线世界杯 闪银审核要多久,审核容易通过吗?
365bet足球外围 新化县必玩十大景区,新化县有哪些景点推荐、旅游十大必去景区
365bet足球外围 开个洗车店要多少钱,普通洗车一个月挣多少