linux防火墙配置不如windows防火墙这么便捷,下边我用UbuntuServer为例,讲解一下Linux防火墙的配置方式:
Linux基本都是命令行操作,所以简单的命令原理还得啰嗦一下照料小白:
sudo命令:通常你登陆Linux都是用你装系统时侯的帐号登入(为了安全可能是非root帐号登入),这时侯假如你要做一些系统级的操作,就须要sudo命令作为你操作命令的前缀。
简单地说,例如我如今用的是fvce这个用户登入的,我就只能在linux根目录下的home目录下的fvce目录中活动(/home/fvce)。而好多系统级操作是对根目录下的文件夹操作(也就是home的下层),所以fvce就没有权限咯。
起初若果是超级管理员(root)身分的话,执行一个命令:ufwstatus就可以查询防火墙状态,如今因为没有权限,所以就须要临时穿上root(超级管理员)的马甲进行操作设置 linux 防火墙,命令格式就弄成了——
sudoufwstatus
挺好理解吧,这个命令输入完之后,系统会紧接着要求你输入超级管理员密码,密码验证完命令就执行了,如右图——
查询防火墙状态
里面的命令格式假如你理解了linux删除命令,那下边就是命令清单,你照猫画虎去执行命令就OK,另外叮咛一句:windows服务器通常用的是远程桌面进行操作,所以配置防火墙的时侯一定要提早把3389(远程桌面rdp合同的端口)设置为容许,以避免操作者被关到防火墙门外。
Linux的远程操作用的是命令行,通常是ssh合同,这个合同的默认端口是22,你配置防火墙时也要优先把这个端口设置为容许,以防把你锁到门外增添麻烦。
基础命令:
sudoufwenable启用防火墙
sudoufwdisable禁用防火墙
sudoufwstatus查询防火墙状态
sudoufwallow80容许80端口(所有合同)
sudoufwallow80/tcp容许tcp合同的80端口
sudoufwallowssh准许特定服务(诸如:ssh)
sudoufwdeny80严禁特定端口
sudoufwdenyssh严禁特定服务(诸如:ssh)
sudoufwdenyall严禁所有进出流量
sudoufwdelete规则序号删掉规则
sudoufwstatusverbose列举已启用的规则
sudoufwstatusnumbered列举已启用的规则及编号
命令实例:
//允许任何IP访问80
sudo ufw allow from any to any port 80/tcp
//仅允许内网IP访问80
sudo ufw allow from 192.168.1.0/24 to any port 80/tcp
假如要设置无限多IP作为作用域,可以先创建一个配置文件(比如:fwc.txt):
# HTTP traffic
allow from 192.168.0.1
allow from 192.168.0.0/24
allow from 10.0.0.0/8
allow from 172.16.0.0/12
allow from 203.0.113.0/24

allow from 2001:db8::/32
# HTTPS traffic
allow from 192.168.1.1
allow from 192.168.1.0/24
allow from 10.1.0.0/16
allow from 172.17.0.0/16
allow from 2001:db8:abcd::/48
之后通过命令把这个配置文件导出就行了
sudoufwallowfromfile/path/to/your/config/fwx.txt
作用域:这是一个很重要的概念,意思是某条防火墙规则,对什么范围起作用,比如——、ping命令或443端口的SMB共享服务,我只想面对192.168.1.0-192.168.1.255的范围开放,其他内网不开放本服务,这时侯就须要给443规则设置作用域。
也就是说:设置作用域比单纯开放端口的管理方法要精美的多,好多云厂商都免费提供了防火墙服务,容许你开放或关掉个别端口设置 linux 防火墙linux命令手册,但假如要精细设置作用域,那就得你在操作系统内的防火墙中设置了。
顺便提一句:windows的防火墙设置作用域更简单——
windows防火墙设置作用域的方式
防火墙配置是任何操作系统的核心工作之一,在目前信息安全形势下,安全防护的意义甚至小于项目本身,借此文给你们做个简单的备忘,欢迎收藏备查。