经过编写防火墙规则,能够拒绝对服务器的某些访问请求。 Ubuntu Server 使用一个叫 Uncomplicated FireWall(ufw)的防火墙管理工具,它其实是一个 iptable 的管理工具。iptable 根据系统管理员编写的一系列规则筛选网络数据包。对于初学者来讲,iptable 可能比较复杂,因此 UFW 将其进行了简化。使用 UFW 能够帮助您加强服务器;可是若是您真的对服务器安全感兴趣,学习如何为 iptable 编写规则使您能够更好地调整服务器的安全级别。shell
要使用ufw 必须安装它。可使用命令 sudo apt-get install ufw进行安装。 下面介绍utf的常见用法ubuntu
1. 启用/禁止/从新加载防火墙安全
ufw [--dry-run] enable | disable | reload
命令[--试运行]启用|禁用|从新加载服务器
ubuntu会记住防火墙的状态,重启后会自动启用或禁止. 网络
2. 默认 容许/阻止/拒绝 入站或出站的数据包 ssh
ufw [--dry-run] default allow|deny|reject [in|out on INTERFACE] [proto protocol] [from ADDRESS [port PORT]] [to ADDRESS [port PORT]]tcp
命令[--试运行]默认 容许|阻止|拒绝 [进|出 基于“什么网络设备”] [协议 “协议”] [来源 “地址” [端口 “端口”]] [目标 “地址” [端口 “端口”]]工具
注:reject让访问者知道数据被拒绝(回馈拒绝信息)。deny则直接丢弃访问数据,访问者不知道是访问被拒绝仍是不存在该主机。学习
举例:spa
sudo ufw allow 65000 #容许外部IP访问本机65000端口 sudo ufw deny 65000 #阻止外部IP访问本机65000端口 sudo ufw alow 65000/tcp #容许外部IP经过tcp协议访问本机65000端口 sudo ufw deny http # 阻止全部http通讯 sudo ufw allow proto tcp from 192.168.1.30 to 192.168.1.5 port 65000 # 容许IP为192.168.1.30的机器经过TCP协议访问IP为192.128.1.5的机器的65000端口 sudo ufw default allow/deny/reject # 除非有例外, 不然 容许/阻止/拒绝全部外部对本机的访问,但本机访问外部正常
3. 检查当前 UFW 运行的规则
ufw [--dry-run] status [verbose|numbered]
4. 插入或删除某个规则
sudo ufw delete 1 # 删除sudo ufw status列出的第1条规则 sudo ufw delete allow http # 删除容许外部IP访问http服务的规则 sudo ufw insert 1 allow ssh # 在第1条规则前插入一条新都规则
5. 复位
ufw [--dry-run] reset
命令[--试运行]复位
6. 开启或关闭日志,定义日志级别
ufw [--dry-run] logging on | off | LEVEL
命令[--试运行]日志 开启|关闭|“级别”
7 查看防火墙的状态
sudo ufw status
通常用户,只需以下设置:
sudo apt-get install ufw
sudo ufw enable
sudo default deny
以上三条命令已经足够安全了,若是你须要开放某些服务,再使用sudo ufw allow开启。