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.104
Anywhere    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 rule
Could not delete non-existent rule (v6) 

我们还有一招。上面已经提到过,可以序列数字来代替你想删除的规则。让我们试试。

sudo ufw status numbered

然后我们删除正在使用的第一条规则。按 “ y ” 就会永久的删除这条规则。

sudo ufw delete 1
 
Deleting :
Allow from 192.168.0.104 to any port 22 proto tcp
Proceed with operation (y|n)? y

从这些用法中你就可以发现它们的不同。 方法2 在删除前需要 用户确认 ,而 方法1 不需要。

重置所有规则

sudo ufw reset
 
Resetting 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 端口的更多相关文章

  1. docker入门实战笔记

    1.什么是docker: docker翻译为搬运工,在这里应该可以理解为搬运应用的工具,也就是云.先了解其运用场景之后更容易对他形成深刻理解. Docker提供了一种可移植的配置标准化机制,允许你一致 ...

  2. Docker容器基础认知

    ## 一. [docker](http://www.itxdm.me/archives/tag/docker/)概念 [Docker](http://www.itxdm.me/wp-content/p ...

  3. 只允许指定IP访问指定端口 ufw

    那天工作需要在服务器上指定ip才可以访问指定端口,配置命令如下: (服务器是ubuntu 14.04系统) apt-get install ufw ufw enable ufw default den ...

  4. ubuntu的ufw如何开放特定端口?

    ubuntu的ufw如何开放特定端口? 1.安装 sudo apt-get install ufw 2.开启 sudo ufw enable 默认关闭外部访问 sudo ufw default den ...

  5. 16.04 下 ufw 防火墙的的开启、禁用、开放端口、关闭端口

    16.04 下的 ufw 防火墙相关操作使用ufw命令.通过ufw --help可以查看所有相关命令. 打开防火墙 sudo ufw enable 重启防火墙 sudo ufw reload 打开指定 ...

  6. Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息

    Ubuntu附带了一个相对iptables简单很多的防火墙 配置工具:ufw ufw防火墙 即uncomplicated firewall,不复杂的防火墙,繁琐部分的设置还是需要去到iptables ...

  7. Ubuntu防火墙 UFW 设置

    Ubuntu防火墙 UFW 设置 1.安装 sudo apt-get install ufw 2.启用 sudo ufw enable sudo ufw default deny 运行以上两条命令后, ...

  8. linux 防火墙打开端口/屏蔽IP等

    开启/禁用 sudo ufw allow|deny [service] 打开或关闭某个端口,例如: sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口 ...

  9. Ubuntu的防火墙UFW

    这是个简单的防火墙,可以直接在命令行启停,也可安装提图形端gufw *安装 sudo apt-get install ufw gufw *常用命令 sudo ufw enable //启动 ufw d ...

随机推荐

  1. wordpress可以自定义获取相关文章的代码

    将下面的代码插入functions.php中 获取相关文章的策略: 手动指定 > 标签 >分类 > 随机 //相关文章 function add_related_posts($con ...

  2. 二十四 java 多线程一些知识点

    1:blocked线程和waiting的线程的区别? 如何唤醒? java线程中含有waiting与blocked两种状态: 线程的 blocked状态往往是无法进入同步方法/代码块来完成的(BLOC ...

  3. F2812 DSP程序运行在片内RAM和FLASH的区别

    F2812 DSP程序运行在片内RAM和片内FLASH的区别 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:F2812是带有内部Flash的DSP,与 ...

  4. PPM / PGM / PBM 图像文件格式

    PPM / PGM / PBM 图像文件格式 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:在进行图像压缩后传输,然后解压缩显示的过程中,通常会用到P ...

  5. 最新 创梦天地java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.创梦天地等10家互联网公司的校招Offer,因为某些自身原因最终选择了创梦天地.6.7月主要是做系统复习.项目复盘.Leet ...

  6. redis的主从复制和哨兵模式

    Redis主从复制是什么? 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 Redis主从复制 ...

  7. pytest使用总结笔记

    简介 pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高.并且pytest兼容unittest的用例,支 ...

  8. leetCode:reverseInteger 反向整数 【JAVA实现】

    反向整数 给定一个 32 位有符号整数,将整数中的数字进行反转,如果超出整数的最大或者最小范围返回0 更多文章查看个人博客 个人博客地址:反向整数 方法一 利用StringBuilder的revers ...

  9. [转帖]Linux命令pmap

    Linux命令pmap https://www.cnblogs.com/lnlvinso/p/5272771.html jmap可以查看Java程序的堆内存使用情况,pmap可以查看Linux上运行的 ...

  10. [DEBUG] ubuntu mysql root@localhost改了密码还是进不去ERROR 1698 (28000)

    之前用skip-grant-tables的方法免密进入Mysql,修改了root的密码, 当时重启服务后是可以用密码进入Mysql的.结果昨天突然又进不去了:) 所以更换方法,特此记录. ====== ...