当前位置: 首页 > news >正文

模拟搭建私网访问外网、外网访问服务器服务的实践操作

目录

实验环境

实践要求

一、准备工作

1、准备四台虚拟机,分别标号

2、 防火墙额外添加两块网卡,自定义网络连接模式

3、 关闭虚拟机的图形管理工具

4、关闭防火墙

 5、分别配置四台虚拟机的IP地址,此处举一个例子(使用的临时分配地址)

 6、开启防火墙路由转发功能并验证

7、配置内网机和服务器的网关地址

8、 给服务器安装nginx服务

9、测试各个主机之间的连接情况

 二、内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关。

三、内部网络服务器s1通过DNAT发布服务到互联网。

四、互联网主机pc2能够访问DMZ区域的服务器,但是不能够进行ping和ssh连接。


实验环境

  • 内部PC1位于内网区域,地址段为: 192.168.1.0/24,pc1地址为:192.168.1.1/24,网关地址为:192.168.1.254/24

  • 服务器S1位于服务器区域,地址段为: 192.168.2.0/24,pc1地址为:192.168.2.1/24,网关地址为:192.168.2.254/24

  • PC2位于互联网区域,模拟外部互联网,地址段为:10.0.0.0/8,pc2地址为:10.0.0.1/8

  • Linux防火墙的三块网卡为别连接不同的网络区域,地址分别为 :ens33 192.168.1.254/24;ens34 10.0.0.100/8;ens35 192.168.2.254/24

 

实践要求

  • 内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关。

  • 内部网络服务器s1通过DNAT发布服务到互联网。

  • 互联网主机pc2能够访问DMZ区域的服务器,但是不能够进行ping和ssh连接。

一、准备工作

1、准备四台虚拟机,分别标号

2、 防火墙额外添加两块网卡,自定义网络连接模式

3、 关闭虚拟机的图形管理工具

systemctl stop NetworkManager

4、关闭防火墙

systemctl stop firewalld.service 

 5、分别配置四台虚拟机的IP地址,此处举一个例子(使用的临时分配地址)

ifconfig  ens160  192.168.1.1/24

 6、开启防火墙路由转发功能并验证

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

7、配置内网机和服务器的网关地址

route add -net 0/0 gw 192.168.1.254 dev ens160
route add -net 0/0 gw 192.168.2.254 dev ens160

8、 给服务器安装nginx服务

配置本地仓库源后安装nginx
yum -y install nginx
echo "hello!" > /usr/share/nginx/html/index.html

9、测试各个主机之间的连接情况

  • 测试内网机和防火墙的通联性
[root@localhost network-scripts]# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=0.453 ms
  • 测试服务器和防火墙的通联性
[root@localhost network-scripts]# ping 192.168.2.254
PING 192.168.2.254 (192.168.2.254) 56(84) bytes of data.
64 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=0.273 ms
64 bytes from 192.168.2.254: icmp_seq=2 ttl=64 time=0.266 ms
^X^C
  •  测试内网机和服务器的通联性
[root@nei ~]# ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=18.2 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=5.04 ms
^C
  • 外网机没有网关地址,所以和其他三台主机之间必然不通

二、内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关。

  •  在防火墙上书写规则
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ens256 -j MASQUERADE 
iptables -A INPUT  -s 192.168.1.1 -d 192.168.1.254 -p icmp --icmp-type 8 -j DROP
  • 验证
##内网机ping外网机
[root@nei ~]# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=63 time=36.6 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=63 time=4.72 ms
64 bytes from 10.0.0.1: icmp_seq=3 ttl=63 time=8.38 ms
^C
--- 10.0.0.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2010ms
rtt min/avg/max/mdev = 4.715/16.549/36.550/14.221 ms##内网机ping内部网关
[root@nei ~]# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
^C
--- 192.168.1.254 ping statistics ---
6 packets transmitted, 0 received, 100% packet loss, time 5117ms

三、内部网络服务器s1通过DNAT发布服务到互联网。

  •  在防火墙上书写规则
iptables -t nat -A POSTROUTING  -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1
  •  验证
##外网机访问服务器
[root@wai ~]# curl 10.0.0.100
hello!

四、互联网主机pc2能够访问DMZ区域的服务器,但是不能够进行ping和ssh连接。

  •  在防火墙上书写规则
iptables -A FORWARD  -p tcp -s 10.0.0.1 -d 192.168.2.1  --dport 22 -j DROP
iptables -A FORWARD  -i ens256 -o ens224 -d 192.168.2.0/24 -p icmp --icmp-type 8 -j DROP
  • 验证
##测试ssh远程连接服务器主机
[root@wai ~]# ssh root@10.0.0.100
ssh: connect to host 10.0.0.100 port 22: Connection timed out##测试ping服务器主机
[root@wai ~]# ping 10.0.0.100
PING 10.0.0.100 (10.0.0.100) 56(84) bytes of data.
^C
--- 10.0.0.100 ping statistics ---
21 packets transmitted, 0 received, 100% packet loss, time 20470ms
http://www.lqws.cn/news/120331.html

相关文章:

  • Orthanc:轻量级PACS服务器与DICOMweb支持的技术详解
  • Spring Framework 中 UriComponentsBuilder工具类
  • Educational Codeforces Round 179 (Rated for Div. 2)(A-E)
  • Python训练营打卡DAY44
  • DuckDB + Spring Boot + MyBatis 构建高性能本地数据分析引擎
  • 掌握 MotionLayout:交互动画开发
  • UniApp 全生命周期钩子详解
  • python版若依框架开发:python版若依部署
  • 【后端开发】goland分布式锁的几种实现方式(mysql,redis,etcd,zookeeper,mq,s3)
  • #Java篇:学习node后端之sql常用操作
  • 前端面试三之控制语句
  • Linux kill 暂停命令
  • vue3+elementplus表格表头加图标及文字提示
  • Starrocks中RoaringBitmap杂谈
  • Spring Boot MVC自动配置与Web应用开发详解
  • 低代码采购系统搭建:鲸采云+能源行业订单管理自动化案例
  • 国产三维CAD皇冠CAD在「金属压力容器制造」建模教程:蒸汽锅炉
  • setting up Activiti BPMN Workflow Engine with Spring Boot
  • 一起学Spring AI:核心概念
  • 沉金PCB电路板制造有哪些操作要点需要注意?
  • 中小制造企业转型:低成本国产工业软件替代方案实践
  • 力扣刷题Day 70:在排序数组中查找元素的第一个和最后一个位置(34)
  • 如何借助Hyper - V在Windows 10中构建安全软件测试环境
  • parquet :开源的列式存储文件格式
  • [蓝桥杯]密文搜索
  • ios版本的Tiktok二次安装不上,提示:Unable to Install “TikTok”
  • AI 时代下语音与视频伪造的网络安全危机
  • vue-16(Vuex 中的模块)
  • Python 中 Django 中间件:原理、方法与实战应用
  • stm32——UART和USART