【转】ufw 端口
1.扫描端口
用ubuntu自带的网络工具中的端口扫描不够强大,扫描结果可能不全,推荐用nmap,黑客常用的端口扫描利器!安装方法:sudo apt-get install nmap ,想扫描端口nmap后加上域名或者ip即可。下面扫描本地端口:nmap localhost
2.查看端口进程
命令:sudo lsof -i :port(port改为你要查询的端口);
命令:sudo netstat -nap|grep port(最后一行显示进程号)
3.启动|停止|重启端口
大体有三种方式
(1)像apache2 ,MySQL这样的端口,直接sudo service apache2 stop(|start|restart)即可
(2)有些端口无法用服务关闭,可以考虑sudo /etc/init.d/service start|stop|restart
(3)如果还无法关闭,再试试杀死进程:sudo kill PID,PID为端口服务进程号,上面已经介绍了查看进程号的命令。
开启端口 ubuntu使用
ubuntu中使用ufw 看是否安装和启用:
sudo dpkg --get-selections | grep ufw
sudo apt-get install ufw
你应该检查下 UFW 是否已经在运行
sudo ufw status
如果你发现状态是: inactive , 意思是没有被激活或不起作用。
启用:
sudo ufw enable
禁用:
sudo
ufw disable
在防火墙被激活后,你可以向里面添加你自己的规则。如果你想看看默认的规则,可以输入
sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
$
默认是不允许所有外部访问连接的。如果你想远程连接你的机器,就得开放相应的端口。例如,你想用 ssh 来连接,下面是添加的命令
sudo ufw allow ssh 或者看尼ssh配置的是哪个端口 直接 sudo ufw allow 22 (一般默认的是22,路径 看:http://blog.csdn.NET/wang794686714/article/details/39100157,最后部分)
sudo ufw status To Action From
-- ----------- ------
22 ALLOW Anywhere
22 ALLOW Anywhere (v6)
root@ubuntu:~# sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip To Action From
-- ------ ----
8080 ALLOW IN Anywhere
8080 (v6) ALLOW IN Anywhere (v6)
如果你有很多条规则,想快速的在每条规则上加个序号数字的话,请使用 numbered 参数。
sudo ufw status numbered
第一条规则的意思是所有通过22端口访问机器的 tcp 或 udp 数据包都是允许的。如果你希望仅允许 tcp 数据包访问应该怎么办?可以在服务端口后加个 tcp 参数。下面的示例及相应的输出。
sudo ufw allow ssh/tcp 或 ufw allow 22/tcp
添加拒绝规则也是同样的招数。我们假设你想拒绝 ftp 访问, 你只需输入
sudo ufw deny ftp
添加特定端口
有时候,我们会自定义一个端口而不是使用标准提供的。让我们试着把机器上 ssh 的 22 端口换成 2290 端口,然后允许从 2290 端口访问,我们像这样添加:
sudo ufw allow 2290
你也可以把端口范围添加进规则。如果我们想打开从 2290到2300 的端口以供 tcp 协议使用,命令如下示:
sudo ufw allow 2290:2300/tcp
样你想使用 udp 的话,如下操作。
sudo ufw allow 2290:2300/udp
请注意你得明确的指定是 ‘tcp’ 或 ‘udp’,否则会出现跟下面类似的错误信息。
ERROR: Must specify ‘tcp’ or ‘udp’ with multiple ports
添加特定 IP
前面我们添加的规则都是基于 服务程序 或 端口 的,UFW 也可以添加基于 IP 地址的规则。下面是命令样例。
sudo ufw allow from 192.168.0.104
你也可以使用子网掩码来扩宽范围。
sudo ufw allow form 192.168.0.0/24
你也可以使用子网掩码来扩宽范围。
sudo ufw allow form 192.168.0.0/24
To Action From-- ----------- ------Anywhere ALLOW 192.168.0.104Anywhere ALLOW 192.168.0.0/24如你所见, from 参数仅仅限制连接的来源,而目的(用 To 列表示)是所有地方
sudo ufw allow to any port 22
上面的命令会允许从任何地方以及任何协议都可以访问22端口。
组合参数
对于更具体的规则,你也可以把 IP 地址、协议和端口这些组合在一起用。我们想创建一条规则,限制仅仅来自于 192.168.0.104 的 IP ,而且只能使用 tcp 协议和通过 22端口 来访问本地资源。我们可以用如下所示的命令。
sudo ufw allow from 192.168.0.104 proto tcp to any port 22
创建拒绝规则的命令和允许的规则类似,仅需要把 allow 参数换成 deny 参数就可以。
删除规则
sudo ufw delete allow ftp
方法二:
sudo ufw delete allow ssh或者 sudo ufw delete allow 22/tcp会出现如下所示的一些错误:
Could not delete non-existent ruleCould not delete non-existent rule (v6) 我们还有一招。上面已经提到过,可以序列数字来代替你想删除的规则。让我们试试。
sudo ufw status numbered
然后我们删除正在使用的第一条规则。按 “ y ” 就会永久的删除这条规则。
sudo ufw delete 1Deleting :Allow from 192.168.0.104 to any port 22 proto tcpProceed with operation (y|n)? y从这些用法中你就可以发现它们的不同。 方法2 在删除前需要 用户确认 ,而 方法1 不需要。
重置所有规则
sudo ufw resetResetting all rules to installed defaults. Proceed with operation (y|n)? y如果你输入“ y ”, UFW 在重置你的 ufw 前会备份所有已经存在规则,然后重置。重置操作也会使你的防火墙处于不可用状态,如果你想使用得再一次启用它。
高级功能
正如我上面所说,UFW防火墙能够做到iptables可以做到的一切。这是通过一些规则文件来完成的,他们只不过是iptables-restore 所对应的文本文件而已。是否可以通过 ufw 命令微调 UFW 的与/或逻辑来增加 iptables 命令其实就是编辑几个文本文件的事。
/etc/default/ufw: 默认策略的主配置文件,支持 IPv6 和 内核模块。
/etc/ufw/before[6].rules: 通过 ufw 命令添加进规则之前里面存在的规则会首先计算。
/etc/ufw/after[6].rules: 通过 ufw 命令添加进规则之后里面存在的规则会进行计算。
/etc/ufw/sysctl.conf: 内核网络可调参数。
/etc/ufw/ufw.conf: 设置系统启动时 UFW 是否可用,和设置日志级别。
结论
UFW 作为 iptables 的前端应用,给用户提供了简单的接口界面。使用着不需要去记非常复杂的 iptables 语法。UFW 也使用了‘ 简单英语 ’作为它的参数。
像 Allow、deny、reset 就是他们当中的一部分。我相信有很多很多 iptables 前端应用,但 UFW 绝对是那些想要快速、简单的就建立自己的防火墙,而且还很安全的用户的最佳替代品之一。请输入 man ufw 查看 ufw 用户手册,来了解更多详情。
via: http://www.tecmint.com/how-to-install-and-configure-ufw-firewall/
译者:runningwater 校对:Caroline
【转】ufw 端口的更多相关文章
- docker入门实战笔记
1.什么是docker: docker翻译为搬运工,在这里应该可以理解为搬运应用的工具,也就是云.先了解其运用场景之后更容易对他形成深刻理解. Docker提供了一种可移植的配置标准化机制,允许你一致 ...
- Docker容器基础认知
## 一. [docker](http://www.itxdm.me/archives/tag/docker/)概念 [Docker](http://www.itxdm.me/wp-content/p ...
- 只允许指定IP访问指定端口 ufw
那天工作需要在服务器上指定ip才可以访问指定端口,配置命令如下: (服务器是ubuntu 14.04系统) apt-get install ufw ufw enable ufw default den ...
- ubuntu的ufw如何开放特定端口?
ubuntu的ufw如何开放特定端口? 1.安装 sudo apt-get install ufw 2.开启 sudo ufw enable 默认关闭外部访问 sudo ufw default den ...
- 16.04 下 ufw 防火墙的的开启、禁用、开放端口、关闭端口
16.04 下的 ufw 防火墙相关操作使用ufw命令.通过ufw --help可以查看所有相关命令. 打开防火墙 sudo ufw enable 重启防火墙 sudo ufw reload 打开指定 ...
- Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息
Ubuntu附带了一个相对iptables简单很多的防火墙 配置工具:ufw ufw防火墙 即uncomplicated firewall,不复杂的防火墙,繁琐部分的设置还是需要去到iptables ...
- Ubuntu防火墙 UFW 设置
Ubuntu防火墙 UFW 设置 1.安装 sudo apt-get install ufw 2.启用 sudo ufw enable sudo ufw default deny 运行以上两条命令后, ...
- linux 防火墙打开端口/屏蔽IP等
开启/禁用 sudo ufw allow|deny [service] 打开或关闭某个端口,例如: sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口 ...
- Ubuntu的防火墙UFW
这是个简单的防火墙,可以直接在命令行启停,也可安装提图形端gufw *安装 sudo apt-get install ufw gufw *常用命令 sudo ufw enable //启动 ufw d ...
随机推荐
- sql 索引【转】
T-SQL查询进阶--理解SQL Server中索引的概念,原理以及其他 简介 在SQL Server中,索引是一种增强式的存在,这意味着,即使没有索引,SQL Server仍然可以实现应有的功能 ...
- OpenGL学习笔记 之二 (色彩相关)
参考: http://www.cnblogs.com/FredCong/archive/2012/10/13/2722893.html 使用RGB #include <glut.h> #i ...
- CenOS 7 权限命令
修改拥有者chown chown 拥有者名称 文件名 修改组chgrpchgrp 组名 文件名 修改权限 chmodchmod 权限 文件名
- vue中添加less配置,用于计算div高度
需求:左边垂直的菜单栏高度设置为 100% - 导航栏的高度(3.6rem) 首先,从vue-cli脚手架里的安装的webpack模板中并没有less的依赖配置,得自己手动添加安装 安装命令::npm ...
- Lnamp的高级网站架构+动静分离+反向代理
Lnamp的架构 环境: 图上面是5台服务器 192.168.1.116 是nginx负载均衡+动静分离 192.168.1.117:linux+apache+php 192.168.1.118:li ...
- ELK优化难题解决
你头疼的ELK难题,本文几乎都解决了 一.ELK实用知识点总结 1.编码转换问题 这个问题,主要就是中文乱码. input中的codec=>plain转码: codec => plain ...
- poj1873(二进制枚举+求凸包周长)
题目链接:https://vjudge.net/problem/POJ-1873 题意:n个点(2<=n<=15),给出n个点的坐标(x,y).价值v.做篱笆时的长度l,求选择哪些点来做篱 ...
- C++中的swap(交换函数)
交换两个变量的值很简单. 比如 int a = 1; b = 2; 交换a b的值 这个很简单 很容易想到的是找个中间变量比如 int temp = a; a = b; b = temp; 不需要 ...
- docker 实践四:仓库管理
本篇我们来了解 docker 仓库的内容. 注:环境为 CentOS7,docker 19.03 仓库(Responsitory)是集中存放镜像的地方,又分公共仓库和私有仓库. 注:有时候容易把仓库与 ...
- asp.net core-5.控制台读取json文件
1,创建控制台应用程序,应用using Microsoft.Extensions.Configuration; 2,新建一个app.json文件 然后修改app.json的属性 3,生成项目,可以看到 ...