【实验记录】在centOS上使用iptables编写规则实现本机可以访问虚拟机的ssh,不能访问http


前言

实验过程:首先开启centOS虚拟机的http服务和ssh服务,然后再编写iptables的规则,最后测试规则是否编写正确并成功运行。
涉及contOS搭建web服务器,scp命令的使用,以及iptables的规则编写。


一、centOS搭建web服务器

1.检查是否安装httpd

使用rpm命令进行查看

rpm -q httpd

在这里插入图片描述
显示已经安装有。

2.关闭防火墙设置

systemctl stop firewalld

3.开启httpd服务

systemctl enable httpd
systemctl start httpd
#查看httpd是否开启
systemctl status httpd

在这里插入图片描述

4.编写访问http的主页

在这里插入图片描述
在这里插入图片描述

5.主机测试访问

在这里插入图片描述
注意:访问之前先使本机和虚拟机进行ping连接测试,ping成功了代表可以顺利访问。本机和虚拟机的ping:仅主机模式,仅主机的那张网卡和虚拟机的IP配置在同一个网段中。

二、开启ssh服务

虚拟机一般默认开启了ssh服务,这里我采用了使用scp远程复制的命令进行测试访问虚拟机的ssh服务。因为scp基于ssh。

直接测试

在这里插入图片描述
在这里插入图片描述
可以看出成功访问ssh服务。

三、编写iptables规则

根据实验要求为可以访问ssh不能访问http,故使用iptables命令为:

iptables -t filter -A INPUT -s 192.x.x.1/32 -d 192.x.x.2 -p tcp --dport 22 -j ACCEPT

iptables -t filter -A INPUT -s 192.x.x.1/32 -d 192.x.x.2 -p tcp --dport 80 -j DROP

ps:-s后面接的是本机IP地址(也就是访问虚拟机服务的数据包的源地址),-d后面接的是目的地址(也就是虚拟机IP地址),端口号22表示ssh协议,80表示http协议。-j后面跟的是行为,ACCEPT表示接受,DROP表示丢弃。意思就是如果进来的数据包符合这条规则就做-j后相应的动作。
此处规则意思即为:数据包如果符合源地址是192.x.x.1,目的地址符合192.x.x.2,端口号是22就接受,如果端口号是80就丢弃。
在这里插入图片描述

四、编写规则后的测试情况

可以使用scp命令,但是不能访问http
在这里插入图片描述


结束语

浅浅记录,被大实验中的某一个实验点折磨了很久终于结束了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值