Ubuntu 开启 ufw 的问题

2023-07-04 21:08:21 +08:00
 monkeydev
我买了一台服务器,ssh 端口非 22 ,例如 12121

在 Ubuntu 上开启了 UFW 防火墙,并且 SSH 端口不是默认的 22 端口,导致无法通过 SSH 连接到 Ubuntu 系统

请问有什么方式自动判断 ssh 端口,然后添加端口到防火墙昵,再执行 sudo ufw enable
1461 次点击
所在节点    问与答
15 条回复
Salud
2023-07-04 21:13:50 +08:00
westoy
2023-07-04 21:21:17 +08:00
自己写个 systemctl 脚本, 尾行 sshd.service , 一启动就去读/etc/ssh/sshd_config 看绑定的是哪个端口, 然后去操作 ufw
infun
2023-07-04 21:26:44 +08:00
ufw 不是默认开启的
可以先查看/编辑 SSH 的端口
```bash
vim /etc/ssh/sshd_config
/etc/init.d/ssh restart
```
然后再设置 ufw
baobao1270
2023-07-04 21:44:42 +08:00
1. 查看 /etc/ssh/sshd_config 配置,找到当前配置的 SSH 端口,比如 12121
2. ufw allow 12121
3. ufw enable
monkeydev
2023-07-04 22:01:48 +08:00
@infun
感谢答复
我是希望在脚本执行的过程中,自动获取到 ssh 端口,然后自动添加,不需要自己去看
monkeydev
2023-07-04 22:02:06 +08:00
@baobao1270
就是不想自己查看昵
感谢
monkeydev
2023-07-04 22:02:49 +08:00
@Salud
这个脚本倒是没问题
就是想自动读取读取之后,然后自动添加昵
不想再手动执行啊
infun
2023-07-04 22:07:37 +08:00
#!/bin/bash

# 查询 SSH 端口
ssh_port=$(sudo grep -i 'Port' /etc/ssh/sshd_config | awk '{print $2}')

# 启用防火墙规则
sudo ufw allow $ssh_port

# 重启防火墙
sudo ufw reload
monkeydev
2023-07-04 22:20:51 +08:00
@infun
666
baobao1270
2023-07-04 22:34:49 +08:00
@monkeydev 感觉你在问一个 X-Y problem


对于 X-Y Problem 的意思如下:

1 )有人想解决问题 X
2 )他觉得 Y 可能是解决 X 问题的方法
3 )但是他不知道 Y 应该怎么做
4 )于是他去问别人 Y 应该怎么做?

简而言之,没有去问怎么解决问题 X ,而是去问解决方案 Y 应该怎么去实现和操作

所以你为什么「需要自动判断端口」
ysc3839
2023-07-04 23:40:47 +08:00
@Salud 个人建议换 firewalld ,网络管理器也建议顺便换成 NetworkManager 。
之前用 ufw 整点高级功能 (如端口转发) 发现不支持,缺少各种功能,然后在另一台 CentOS 的机子上弄过之后发现 firewalld 和 NetworkManager 都挺好用的,也不复杂,就直接换掉了。
cslive
2023-07-05 08:50:08 +08:00
ufw 不太好用,跟 podman 有冲突,死活不放行 podman 容器端口,我直接卸了,用厂商提供的安全组
monkeydev
2023-07-05 14:51:18 +08:00
@baobao1270
不是你说的意思

我写了一个脚本,这个脚本需要开启 ufw

但是开启 ufw 的话,会导致 ssh 断开

所以我想在我的脚本里面增加一个自动获取 ssh 端口,然后放行这个端口

这样我整个脚本就可以流畅运行了
psiKENT
2023-07-06 08:29:39 +08:00
你的 ssh 端口总是在变化吗?
monkeydev
2023-07-06 09:10:12 +08:00
@psiKENT
不变化
只是允许脚本的过程中,我希望实时获取,获取一次就可以
就是这个脚本我想写成一个
而不是想把获取 ssh 的单独再写一个,这个意思

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/954107

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX