《操作系统》实验指导书/实验六:系统防火墙管理 实验六:系统防火墙管理 实验目的 1、理解 iptables的工作原理; 2、掌握 iptables防火墙的安装与配置; 3、掌握 iptables防火墙的基本操作方法,能够熟练使用防火墙。 实验学时 2学时 三、实验类型 验证性 四、实验需求 1、硬件 每人配备计算机1台,不低于双核CPU、8G内存、500GB硬盘 2、软件 Windows操作系统,安装 Virtualbox虚拟化软件,安装Puy管理终端软件,安装Nmap 工具软件 3、网络 计算机使用固定IP地址接入局域网,并支持对互联网的访问,虚拟主机可通过NAT方 式访问互联网。 4、工具 无 五、实验任务 1、完成 iptables防火墙的安装与配置; 2、完成 iptables防火墙规则的管理,满足实验的场景要求 六、实验内容及步骤 1、 iptables的安装与管理 (1)防火墙检测 ①关闭 CentOS的 firewal防火墙,并取消开机自动启动,其操作命令如下。 #f systemctl stop firewall systemctl disable firewall ②一般情况下, iptables已经包含在Liu系统中,可以通过命令来检测系统是否已经 信息管理与信息系统教研室/阮晓龙/13938213680/第1页
《操作系统》实验指导书 / 实验六:系统防火墙管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 第1页 实验六:系统防火墙管理 一、实验目的 1、理解 iptables 的工作原理; 2、掌握 iptables 防火墙的安装与配置; 3、掌握 iptables 防火墙的基本操作方法,能够熟练使用防火墙。 二、实验学时 2 学时 三、实验类型 验证性 四、实验需求 1、硬件 每人配备计算机 1 台,不低于双核 CPU、8G 内存、500GB 硬盘。 2、软件 Windows操作系统,安装VirtualBox虚拟化软件,安装Putty管理终端软件,安装Nmap 工具软件。 3、网络 计算机使用固定 IP 地址接入局域网,并支持对互联网的访问,虚拟主机可通过 NAT 方 式访问互联网。 4、工具 无。 五、实验任务 1、完成 iptables 防火墙的安装与配置; 2、完成 iptables 防火墙规则的管理,满足实验的场景要求。 六、实验内容及步骤 1、iptables 的安装与管理 (1)防火墙检测 ①关闭 CentOS 的 firewall 防火墙,并取消开机自动启动,其操作命令如下。 # systemctl stop firewalld # systemctl disable firewalld ②一般情况下,iptables 已经包含在 Linux 系统中,可以通过命令来检测系统是否已经
《操作系统》实验指导书/实验六:系统防火墙管理 安装 iptables,其操作命令如下,检测结果如图6-1所示则表示系统已经安装 iptables防火 #f iptables --version [root@localhost - ]t iptables --version iptables v1.4. 21 图6-1检测 iptables是否安装 ③检查是否安装 iptables-services,其操作命令如下。 若出现如图6-2所示的结果则说明 iptables服务未安装,若出现如图6-3所示的结果则 说明 iptables服务已安装 [root@localhost -]# service iptables status Redirecting to /bin/systemctl status iptables.service Unit iptables. service could not be found [rootelocalhost ]t systemctl status iptables 图6-2 iptables service未安装 aote⊥ localhost systemctl enable iptable d symlink from /etc/systemd/system/basic target wants/iptables. service to :/lib/systemd/system/iptables servi iptables. service - IPv4 firewall with iptables Loaded: loaded (/usr/lib/systemd/ system/iptables servi set: disabled) 图6-3 iptables service已安装 (2)安装 iptables软件 安装 iptables以及 iptables services服务软件,其操作命令如下。 #f yum install -y iptables um tables-services (3) iptables服务配置 进行 iptables服务管理,其操作命令如下。 ##开启 iptables服务 systemctl start iptables ##设置开机自动启动 #t systemctl enable iptable ##关闭 iptables服务 t systemctl stop iptables ##重启 iptables服务 systemctl restart iptables ##取消开机自动启动 #t systemctl disable iptables ●考核点6-1:查看 iptables防火墙的配置信息,并填写到实验报告册。 信息管理与信息系统教研室/阮晓龙/13938213680/第2页
《操作系统》实验指导书 / 实验六:系统防火墙管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 第2页 安装 iptables,其操作命令如下,检测结果如图 6-1 所示则表示系统已经安装 iptables 防火 墙。 # iptables --version ③检查是否安装 iptables-services,其操作命令如下。 # systemctl status iptables 若出现如图 6-2 所示的结果则说明 iptables 服务未安装,若出现如图 6-3 所示的结果则 说明 iptables 服务已安装。 (2)安装 iptables 软件 安装 iptables 以及 iptables services 服务软件,其操作命令如下。 # yum install -y iptables # yum install –y iptables-services (3)iptables 服务配置 进行 iptables 服务管理,其操作命令如下。 ##开启 iptables 服务 # systemctl start iptables ##设置开机自动启动 # systemctl enable iptables ##关闭 iptables 服务 # systemctl stop iptables ##重启 iptables 服务 # systemctl restart iptables ##取消开机自动启动 # systemctl disable iptables ⚫ 考核点 6-1:查看 iptables 防火墙的配置信息,并填写到实验报告册。 图 6-1 检测 iptables 是否安装 图 6-2 iptables service 未安装 图 6-3 iptables service 已安装
《操作系统》实验指导书/实验六:系统防火墙管理 2、 iptables的基本配置 (1)规则的查看 使用以下命令进行防火墙规则查看 考核点6-2:将系统防火墙默认规则信息填写到实验报告册 (2)规则的添加 ①端口配置 ●开启需要的端口,如配置TCP协议的22端口允许进出系统,其配置命令如下 #t iptables-A INPUT -p tcp --dport 22j ACCEPT #f iptables-A OUTPUT -p tcp--sport 22 -j ACCEPT ●关闭不安全的端口,如配置不允许通过TCP协议的445端口进出系统,其配置命令 如下所示 iptables-A INPUT -p tcp --dport 445 - j DROP iptables -A OUTPUT -p top--sport 445j DROP ●配置服务端口,如配置允许通过HTIP访问系统的80端口,其配置命令如下 #iptables-aInPut-Ptcp--dporthttp-jDrop ②IP地址配置 ●拒绝某单一IP地址,如拒绝某一单独IP地址访问系统,且系统拒绝访问该IP地址 其配置命令如下 #f iptables-A INPUT -S XXX. XXX.XXX. XXX j DROP #f iptables-A OUTPUT -d xxx.xXX.xXX. xXX-j DROP ●拒绝某IP地址段,如拒绝某P地址段中任一地址访问系统,且系统拒绝访问该IP 地址段中任一IP地址,其配置命令如下 #f iptables-A INPUT -S XXX. xXX.xXX. xXX/xx j DROP iptables -A OUTPUT -d xXx. xXX.XXX.xxx/xx -j DROP ③IP地址与端口结合 ●拒绝某IP地址访问某端口,如拒绝某一单独IP地址访问系统的22端口(TCP协 议),其配置命令如下 #f iptables-A INPUT -S xXX. xxx. xXX. XXx-p tcp--dport 22 -j DROP ●允许某段PP地址访问系统的服务端口,如允许某段P地址访问系统的HITP服务端 口,其配置命令如下。 #fiptables-aInPut-sXxx.xxX.xxx.xXx/Xx-ptcp--dporthttpjAcc EPT ④网络协议配置 配置拒绝lMP协议通过,如配置拒绝网络中通过PNG方式发现系统IP地址,其配 置命令如下 #f iptables-A INPUT -p icmp -j DROP ⑤网卡接口配置 信息管理与信息系统教研室/阮晓龙/13938213680/第3页
《操作系统》实验指导书 / 实验六:系统防火墙管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 第3页 2、iptables 的基本配置 (1)规则的查看 使用以下命令进行防火墙规则查看。 # iptables -n -L ⚫ 考核点 6-2:将系统防火墙默认规则信息填写到实验报告册。 (2)规则的添加 ①端口配置 ●开启需要的端口,如配置 TCP 协议的 22 端口允许进出系统,其配置命令如下。 # iptables -A INPUT -p tcp --dport 22 -j ACCEPT # iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT ●关闭不安全的端口,如配置不允许通过 TCP 协议的 445 端口进出系统,其配置命令 如下所示。 # iptables -A INPUT -p tcp --dport 445 -j DROP # iptables -A OUTPUT -p tcp --sport 445 -j DROP ●配置服务端口,如配置允许通过 HTTP 访问系统的 80 端口,其配置命令如下。 # iptables -A INPUT -p tcp --dport http -j DROP ②IP 地址配置 ●拒绝某单一IP地址,如拒绝某一单独IP地址访问系统,且系统拒绝访问该IP地址, 其配置命令如下。 # iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP # iptables -A OUTPUT -d xxx.xxx.xxx.xxx -j DROP ●拒绝某 IP 地址段,如拒绝某 IP 地址段中任一地址访问系统,且系统拒绝访问该 IP 地址段中任一 IP 地址,其配置命令如下。 # iptables -A INPUT -s xxx.xxx.xxx.xxx/xx -j DROP # iptables -A OUTPUT -d xxx.xxx.xxx.xxx/xx -j DROP ③IP 地址与端口结合 ●拒绝某 IP 地址访问某端口,如拒绝某一单独 IP 地址访问系统的 22 端口(TCP 协 议),其配置命令如下。 # iptables -A INPUT -s xxx.xxx.xxx.xxx -p tcp --dport 22 -j DROP ●允许某段 IP 地址访问系统的服务端口,如允许某段 IP 地址访问系统的 HTTP 服务端 口,其配置命令如下。 # iptables -A INPUT -s xxx.xxx.xxx.xxx/xx -p tcp --dport http -j ACC EPT ④网络协议配置 配置拒绝 ICMP 协议通过,如配置拒绝网络中通过 PING 方式发现系统 IP 地址,其配 置命令如下。 # iptables -A INPUT -p icmp -j DROP ⑤网卡接口配置
《操作系统》实验指导书/实验六:系统防火墙管理 iptables防火墙可单独为某个网卡接口设定不同的策略规则,如不允许任何主机通过防 火墙本机的eth0网卡访问系统的80端口,其配置命令如下 #f iptables -A INPUT -i etho -p tcp --dport 80 j DROP ⑥MAC地址配置 ●拒绝某MAC地址主机的所有通信请求访问,其配置命令如下 #f iptables -A INPUT -m mac--mac-source XX: XX: XX: XX: XX: XX j DR ●拒绝网络中某一固定P地址且固定MAC地址的主机访问系统任意端口,其配置命 令如下 #f iptables-A INPUT -S XXX. XXX. XXX. xXX/x-m mac --mac-source XX: X XX× X XXXX: XX -J DROP ●允许网络中某一固定P地址且固定MAC地址的主机访问系统的22号端口,其配置 命令如下 #f iptables-A INPUT-p tcp --dport 22 -S XXX.XXX.XXX. xXX/x-m mac ac-source XXXX: XX: XX: XX XX J ACCEP 考核点6-3:根据上述场景规则,完成配置后将防火墙规则信息填写到实验报告册 (3)规则的测试 ①软件获取。获取端口扫描工具 Zenmap软件可通过本课程网站 (htp/ linux xg. hactcm. edu. cn)下载获得,也可通过 Zenmap官方网站 (htts/ nmap. org/ zenmap)下载获得,如图6-4所示。本实验所使用的 Zenmap软件为mmap 7.60-setupexe cH轴) UHHL S YOUR UPERSYSIBNmal Reports os Detection Props RenEws In the Movies oation of Nmap command lines. Scan results can be 图64 Zenmap官网 ②软件安装。点击下载的EXE执行安装文件,可根据安装过程提示进行默认选择安装 ③软件使用。打开工具,展示如图6-2所示工具界面。在“配置”下拉框中选择“ Regular an”(使用规则扫描),在“命令”输入框输入“nmap-p1-1024-T4-A-v172.16.24.127” 命令规则,点击【扫描】按钮,工具将自动扫描IP地址为“172.16.124.127”的主机,其1- 1024端口的状态情况 信息管理与信息系统教研室/阮晓龙/13938213680/第4页
《操作系统》实验指导书 / 实验六:系统防火墙管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 第4页 iptables 防火墙可单独为某个网卡接口设定不同的策略规则,如不允许任何主机通过防 火墙本机的 eth0 网卡访问系统的 80 端口,其配置命令如下。 # iptables -A INPUT -i eth0 -p tcp --dport 80 -j DROP ⑥MAC 地址配置 ●拒绝某 MAC 地址主机的所有通信请求访问,其配置命令如下。 # iptables -A INPUT -m mac --mac-source XX:XX:XX:XX:XX:XX -j DR OP ●拒绝网络中某一固定 IP 地址且固定 MAC 地址的主机访问系统任意端口,其配置命 令如下。 # iptables -A INPUT -s xxx.xxx.xxx.xxx/x -m mac --mac-source XX:X X:XX:XX:XX:XX -j DROP ●允许网络中某一固定 IP 地址且固定 MAC 地址的主机访问系统的 22 号端口,其配置 命令如下。 # iptables -A INPUT -p tcp --dport 22 -s xxx.xxx.xxx.xxx/x -m mac - -mac-source XX:XX:XX:XX:XX:XX -j ACCEPT ⚫ 考核点 6-3:根据上述场景规则,完成配置后将防火墙规则信息填写到实验报告册。 (3)规则的测试 ① 软 件 获 取 。 获 取 端 口 扫 描 工 具 Zenmap 软 件 可 通 过 本 课 程 网 站 ( http://linux.xg.hactcm.edu.cn ) 下 载 获 得 , 也 可 通 过 Zenmap 官 方 网 站 (https://nmap.org/zenmap)下载获得,如图 6-4 所示。本实验所使用的 Zenmap 软件为 nmap- 7.60-setup.exe。 ②软件安装。点击下载的 EXE 执行安装文件,可根据安装过程提示进行默认选择安装。 ③软件使用。打开工具,展示如图 6-2 所示工具界面。在“配置”下拉框中选择“Regular scan”(使用规则扫描),在“命令”输入框输入“nmap –p 1-1024 -T4 –A -v 172.16.124.127” 命令规则,点击【扫描】按钮,工具将自动扫描 IP 地址为“172.16.124.127”的主机,其 1- 1024 端口的状态情况。 图 6-4 Zenmap 官网
《操作系统》实验指导书/实验六:系统防火墙管理 ④信息查看。在“Nmap输出”选项卡中可查看扫描的过程,如图6-2所示,通过该工 具可测试防火墙规则配置是否正确且生效 14+104417214141x HB2(如1: 图6-5扫描结果 考核点6-4:将测试主机端口状态结果截图填写到实验报告册。 3、 iptables的应用 请根据下面的要求,完成防火墙的配置 ①允许来自于IPA地址的报文,通过UDP方式,访问系统的4486端口 ②丢弃来至IPB地址的使用TCP方式,访问系统20和21端口的报文 ③允许IP地址属于xxx. <XX XXX.xXX/x段的主机、由指定eth0网口,通过SSH远程连 接本机 ④允许P地址为C的主机通过422端口进行SSH远程连接本机 ⑤将来自PD地址的主机使用TCP协议,访问21端口的数据包信息记录到 messages 日志中。 ⑥当超过100个用户同时访问系统的80端口时,限制每分钟最大连接数为25个,防 止系统遭受DOS攻击 考核点6-5:根据上述步骤与要求,将操作命令与结果填写到实验报告册。 七、实验扩展 1、防火墙 (1)防火墙一共有几种?分别是什么,主要作用是什么? (2) iptables防火墙是工作在计算机网络的哪一层上的? 2、 iptables防火墙规则 (1) iptables防火墙规则除了可以通过配置端口、P地址,还能通过配置哪些选项来 信息管理与信息系统教研室/阮晓龙/13938213680/第5页
《操作系统》实验指导书 / 实验六:系统防火墙管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 第5页 ④信息查看。在“Nmap 输出”选项卡中可查看扫描的过程,如图 6-2 所示,通过该工 具可测试防火墙规则配置是否正确且生效。 ⚫ 考核点 6-4:将测试主机端口状态结果截图填写到实验报告册。 3、iptables 的应用 请根据下面的要求,完成防火墙的配置。 ①允许来自于 IP A 地址的报文,通过 UDP 方式,访问系统的 4486 端口。 ②丢弃来至 IP B 地址的使用 TCP 方式,访问系统 20 和 21 端口的报文。 ③允许 IP 地址属于 xxx.xxx.xxx.xxx/x 段的主机、由指定 eth0 网口,通过 SSH 远程连 接本机。 ④允许 IP 地址为 C 的主机通过 422 端口进行 SSH 远程连接本机。 ⑤将来自 IP D 地址的主机使用 TCP 协议,访问 21 端口的数据包信息记录到 messages 日志中。 ⑥当超过 100 个用户同时访问系统的 80 端口时,限制每分钟最大连接数为 25 个,防 止系统遭受 DOS 攻击。 ⚫ 考核点 6-5:根据上述步骤与要求,将操作命令与结果填写到实验报告册。 七、实验扩展 1、防火墙 (1)防火墙一共有几种?分别是什么,主要作用是什么? (2)iptables 防火墙是工作在计算机网络的哪一层上的? 2、iptables 防火墙规则 (1)iptables 防火墙规则除了可以通过配置端口、IP 地址,还能通过配置哪些选项来 图 6-5 扫描结果