ubuntu 14.04/14.10 iptables 防火墙设置

1. 一键批处理设置

呆狐狸.凨
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin:~/bin
export PATH
# Check if user is root
if [ $UID != 0 ]; then echo "Error: You must be root to run the install script, please use root to install lanmps";exit;fi

iptables-save >> _.iptables.up.rules #保存防火墙设置,以便没保存时使用
iptables -L -n 2>&1 | tee -a "_.iptables.log"
iptables -F        #清除预设表filter中的所有规则链的规则
iptables -X        #清除预设表filter中使用者自定链中的规则
iptables -Z        #计数器清零

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

#双向
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允许本机
iptables -A INPUT -i lo -j ACCEPT
#FTP
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#www 80
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

#13306 映射转发到  mysql数据库 3306
iptables -A PREROUTING -p tcp --dport 13306 -j REDIRECT --to-ports 3306 -t nat
#3306 mysql数据库
#iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#memache
#iptables -A INPUT -p tcp --dport 11211 -j ACCEPT

#对于OUTPUT规则,因为预设的是ACCEPT,所以要添加DROP规则,减少不安全的端口链接。
iptables -A OUTPUT -p tcp --sport 31337 -j DROP
iptables -A OUTPUT -p tcp --dport 31337 -j DROP

#丢弃坏的TCP包
iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
#处理IP碎片数量,防止攻击,允许每秒100个
#iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT

#设置ICMP包过滤,允许每秒1个包,限制触发条件是10个包
#iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

#防止外部的ping和SYN洪水攻击
iptables -A INPUT -p tcp --syn -m limit --limit 100/s --limit-burst 100 -j  ACCEPT
#ping洪水攻击,限制每秒的ping包不超过10个
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s –limit-burst 10 -j ACCEPT
#防止各种端口扫描,将SYN及ACK SYN限制为每秒钟不超过200个
iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 20/sec --limit-burst 200 -j ACCEPT

#最后规则拒绝所有不符合以上所有的
iptables -A INPUT -j DROP

if [ -z "`grep "iptables-save" /etc/network/interfaces`" ]
then
	echo "#以下有防火墙需要的可以使用  
pre-up iptables-restore < /etc/iptables.up.rules #启动时应用防火墙  
post-down iptables-save > /etc/iptables.up.rules #关闭时保存防火墙设置,以便下次启动时使用  " >> /etc/network/interfaces
    
else
     echo "iptables-save find "
fi

clear
echo "iptables ok ";
echo ""

iptables -L -n
cat /etc/network/interfaces


把上面的保存为 ( 如果还有其他端口规则请一起在上面配置,执行时清空规则):
lanmps_iptables.sh

上传到服务器然后设置权限,并执行

chmod 777 lanmps_iptables.sh 
./lanmps_iptables.sh
那么  防火墙就设置完成了

2. ubuntu iptables 防火墙 启动

modprobe ip_tables

3. ubuntu iptables 防火墙 关闭

ubuntu 并没有关闭命令,所以要通过变通方法解决防火墙

iptables -F
iptables -X  
iptables -Z  
iptables -P INPUT ACCEPT  
iptables -P OUTPUT ACCEPT  
iptables -P FORWARD ACCEPT  
modprobe -r ip_tables  
依次执行以上命令即可关闭iptables,否则在执行modproble -r ip_tables时将会提示  FATAL: Module ip_tables is in use.

4. Iptables的保存和调用

防止每次开机或重启后都需要去调用一次,把它设置自动执行

第一步 更改网卡配置文件

sudo vi /etc/network/interfaces 
第二部 在最后增加配置

#以下有防火墙需要的可以使用  
pre-up iptables-restore < /etc/iptables.up.rules #启动时应用防火墙  
post-down iptables-save > /etc/iptables.up.rules #关闭时保存防火墙设置,以便下次启动时使用  
如果不明白的看  http://blog.csdn.net/fenglailea/article/details/12191607#t1

感谢:http://hongwei.im/iptables-setting-for-ubuntu-1304





### 如何在 Ubuntu 14.04 或 16.04 上安装 WSL WSL 是 Windows 提供的一个子系统,允许用户在其上运行 Linux 工具和应用程序。对于希望在 Windows 环境下使用 Linux 的开发者来说,这是一个非常有用的工具。 #### 启用 WSL 功能 要在 Windows 中启用 WSL 子系统功能,首先需要通过 PowerShell 执行以下命令来启动并配置该选项: ```powershell dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart ``` 此命令会激活必要的组件以支持 Linux 子系统的操作环境[^2]。 #### 安装适用于特定版本的 WSL 发行版 一旦启用了 WSL 支持,则可以继续设置具体的发行版。如果目标是基于 Ubuntu 14.04 或更高版本的操作系统,可以通过 Microsoft Store 下载官方发布的镜像包或者手动利用 `lxrun` 命令完成初始化过程: 对于较新版本如 Windows 10 创新者更新 (Version 1703),推荐采用如下方式重新部署最新的可用映射图像至个人电脑之中[^1]: ```cmd lxrun /install /y ``` 上述脚本将会自动获取最新默认提供的 GNU/Linux 配置档案,并将其关联到当前用户的家目录结构之下;与此同时也会创建初始管理员账户以及密码设定流程提示给终端使用者自行定义相关内容项。 另外值得注意的是,在某些情况下可能还需要额外调整 BIOS 设置确保虚拟化技术已被开启以便获得最佳性能表现效果。 #### 更新与维护已有的 WSL 实例 随着时间推移,可能会有安全补丁或者其他改进型升级推出针对不同基础平台之间的互操作性优化处理措施等方面考虑因素存在时,定期执行下面这样的常规保持同步动作就显得尤为重要了: ```bash sudo apt update && sudo apt full-upgrade -y ``` 以上指令序列可以帮助我们轻松实现在线检索所有待定项目列表的同时也完成了实际物理存储介质上的替换工作从而达到预期目的即始终处于最前沿状态下的开发测试环境中去实践探索更多可能性领域范围内的各种尝试机会! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风.foxwho

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值