Ubuntu--修改ssh端口号的方法(有示例)

原文网址:Ubuntu--修改ssh端口号的方法(有示例)_IT利刃出鞘的博客-CSDN博客

简介

说明

本文介绍Ubuntu修改ssh端口号的方法(有示例)。

要达成的目标

ssh添加一个端口:3333,关闭原来的22端口。

1.修改端口

修改配置文件/etc/ssh/sshd_config

sudo vi /etc/ssh/sshd_config

在配置文件最后添加如下2行:

Port 22
Port 3333

这里22 端口暂时没删除是自己留后路,万一等下新端口不能连接但默认端口又关闭了就麻烦了。

2.重启SSH服务

sudo service ssh restart

3.测试新端口

如果登陆 SSH 时提示:no route to host,应该是防火墙没做好对应端口的配置,设置下防火墙就 好了。

4.关闭22端口

 修改配置文件:/etc/ssh/sshd_config,在配置文件将22端口关闭

# Port 22
Port 3333

5.重启SSH服务

sudo service ssh restart

### 设置31400至31409端口范围的转发 为了实现从Ubuntu系统的特定端口范围(如31400到31409)的数据包转发,需执行一系列配置操作来确保IP转发功能被激活,并通过iptables命令设定相应的规则。 #### 启用IP转发 首先,需要确认内核参数`net.ipv4.ip_forward`已设为1以允许数据包转发: ```bash sudo sysctl -w net.ipv4.ip_forward=1 ``` 此指令临时修改了当前会话中的IPv4转发状态;若希望永久生效,则应编辑文件`/etc/sysctl.conf`并加入或更改如下行[^1]: ```plaintext net.ipv4.ip_forward = 1 ``` 保存后运行`sysctl -p`使新设置立即应用。 #### 使用Iptables创建端口转发规则 对于指定范围内多个连续端口的同时映射,可采用循环脚本简化流程。下面是一个简单的Bash脚本来完成这一任务: ```bash #!/bin/bash for ((i=31400; i<=31409; i++)) do sudo iptables -t nat -A PREROUTING -p tcp --dport $i -j DNAT --to-destination 50.50.1.95:$i sudo iptables -t nat -A POSTROUTING -p tcp -d 50.50.1.95 --dport $i -j MASQUERADE done ``` 上述脚本遍历给定区间内的每一个端口号$i$,依次向iptables添加两条记录:一条负责预路由阶段的目标地址转换(DNAT),另一条则处理POSTROUTING链上的源地址伪装(MASQUERADE)。 请注意,在实际部署前应当替换示例中的目标服务器IP(`50.50.1.95`)以及任何其他必要的细节信息匹配具体环境需求。 此外,考虑到SSH端口转发特性,如果希望通过SSH隧道方式达成相同效果而不改变防火墙策略的话,可以考虑使用OpenSSH客户端提供的 `-L` 参数构建本地端口转发连接[^2]。不过这种方法适用于单个端口的情况,批量处理多端口可能不如直接调整iptables高效便捷。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT利刃出鞘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值