VPN解决了什么问题? 其实就是让外网的用户访问到内网,需要对外网的用户进行认证,然后分配一个内部的ip地址,就可以访问内网了。
VPN网关: vpn服务器(硬件防火墙)
openvpn 可以实现vpn功能
ssh 服务: 远程控制linux系统的服务
sudo
iptables —>tcp wrappers
tcp wrappers 是一个端口过滤机制,可以理解为一个防火墙软件。
会对进出系统的数据包进行过滤
4、TCP_Wrappers访问策略
相关控制文件:/etc/hosts.allow(允许文件)、 /etc/hosts.deny(拒绝文件)
/etc/hosts.allow(允许文件) 白名单
/etc/hosts.deny(拒绝文件) 黑名单
访问策略的检查顺序:
1.先看hosts.allow里是否有允许的策略,如果有直接放行,如果没有,再去检查hosts.deny
2.如果hosts.deny里有拒绝的策略,直接拒绝,如果没有,则放行
[root@localhost ~]# vim /etc/hosts.allow
sshd:61.63.65.67,192.168.2.*
[root@localhost ~]# vim /etc/hosts.deny
sshd:ALL
====
iptables -A INPUT -s 192.168.5.99 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -P INPUT DROP
====
什么是dmz区?
隔离区域(非军事化区域)—》就是集成存放服务器的区域
堡垒机实验的步骤:
准备机器环境:
1.给防火墙服务器和web服务器、堡垒机配置好ip地址和设置好主机名,内网使用hostonly网卡类型,防火墙的外网卡使用桥接类型
注意: 你们自己规划的IP地址和网关一定要配置好,dns域名解析服务器可以配置8.8.8.8(谷歌的)
网卡配置方面要自己让路由器有两个网卡,外网卡设置桥接,内网的客户机的网卡都设置为仅主机模式
[root@feng ~]# hostnamectl set-hostname jumpserver
[root@feng ~]# su
[root@jumpserver ~]#
[root@web ~]# hostnamectl set-hostname web-server
[root@web ~]# su
[root@web-server ~]#
##本图片仅供参考
步骤:
1.在内网的web服务器上配置tcp wrappers策略,只允许jumpserver 能ssh过来,其他的机器都不可以
[root@web-server ~]# cat /etc/hosts.deny
sshd:ALL
[root@web-server ~]# cat /etc/hosts.allow
sshd:192.168.5.99,192.168.5.1
[root@web-server ~]#
2.确保堡垒机上的ssh服务是正常运行的
[root@jumpserver ~]# service sshd restart
Redirecting to /bin/systemctl restart sshd.service
#ssh进程是否启动
[root@web-server ~]# ps -aux|egrep sshd
root 982 0.0 0.2 113004 4360 ? Ss 07:26 0:00 /usr/sbin/sshd -D
root 2180 0.0 0.3 161772 6124 ? Ss 16:18 0:00 sshd: root@pts/2
root 2619 0.0 0.3 161772 6120 ? Ss 22:21 0:00 sshd: root@pts/0
root 2834 0.0 0.3 161772 6124 ? Ss 22:36 0:00 sshd: root@pts/1
root 2927 0.0 0.0 112828 980 pts/1 S+ 22:45 0:00 grep -E --color=auto sshd
#查看端口号
[root@web-server ~]# netstat -anuplt|grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 982/sshd
tcp 0 0 192.168.142.2:22 192.168.142.1:63009 ESTABLISHED 2180/sshd: root@pts
tcp 0 36 192.168.142.2:22 192.168.142.1:50308 ESTABLISHED 2834/sshd: root@pts
tcp 0 0 192.168.142.2:22 192.168.142.1:57540 ESTABLISHED 2619/sshd: root@pts
tcp6 0 0 :::22 ::😗 LISTEN 982/sshd
修改主配置文件,将端口号修改为6677,并且禁用root用户登录
[root@jumpserver ~]# cd /etc/ssh/
[root@jumpserver ssh]# vim sshd_config
PermitRootLogin no
Port 6677
[root@jumpserver ssh]# service sshd restart
Redirecting to /bin/systemctl restart sshd.service
[root@jumpserver ssh]#
新建一个普通用户,用于登录堡垒机
[root@jumpserver ssh]# useradd wangyalin
[root@jumpserver ssh]# echo 123456|passwd wangyalin --stdin
更改用户 wangyalin的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@jumpserver ssh]#
#root登录不了的效果
[wangyalin@jumpserver ~]$ service sshd restart
Redirecting to /bin/systemctl restart sshd.service
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to manage system services or units.
Authenticating as: root
Password:
==== AUTHENTICATION COMPLETE ===
清空tcp wrappers里的配置,停止firewalld的服务
[root@jumpserver ssh]# vim /etc/hosts.allow
[root@jumpserver ssh]# vim /etc/hosts.deny
[root@jumpserver ssh]# service firewalld stop
Redirecting to /bin/systemctl stop firewalld.service
[root@jumpserver ssh]#
3.在防火墙服务器上启用snat和dnat功能
[root@router nat]# cat snat_dnat.sh
#!/bin/bash
#关闭firewalld服务,关闭linux自带的防火墙服务
service firewalld stop
#开启路由功能 1表示开启路由功能 0 表示禁用路由功能
##暂时开启路由功能
echo 1 >/proc/sys/net/ipv4/ip_forward
#SNAT策略
#清除原来iptables 相关表里的规则
iptables -F
iptables -t nat -F
#添加snat策略
#iptables -t nat -A POSTROUTING -s 192.168.5.0/24 -o ens36 -j SNAT --to-source 192.168.1.146
iptables -t nat -A POSTROUTING -s 192.168.5.0/24 -o ens36 -j MASQUERADE
#添加DNAT策略,发布的是web服务器
iptables -t nat -A PREROUTING -d 192.168.1.146 -p tcp --dport 80 -i ens36 -j DNAT --to-destination 192.168.5.2
#发布mysql服务器
iptables -t nat -A PREROUTING -d 192.168.1.146 -p tcp --dport 3306 -i ens36 -j DNAT --to-destination 192.168.5.3
#redis服务器
iptables -t nat -A PREROUTING -d 192.168.1.146 -p tcp --dport 6379 -i ens36 -j DNAT --to-destination 192.168.5.4
#添加DNAT策略,发布的是web服务器
iptables -t nat -A PREROUTING -d 192.168.1.146 -p tcp --dport 8080 -i ens36 -j DNAT --to-destination 192.168.5.5:80
#dns服务器
iptables -t nat -A PREROUTING -d 192.168.1.146 -p udp --dport 53 -i ens36 -j DNAT --to-destination 192.168.5.8
#发布堡垒机
iptables -t nat -A PREROUTING -d 192.168.1.146 -p tcp --dport 2288 -i ens36 -j DNAT --to-destination 192.168.5.99:6677
[root@router nat]#
[root@router nat]# bash snat_dnat.sh 执行脚本
Redirecting to /bin/systemctl stop firewalld.service
[root@router nat]# iptables -t nat -L -n 查看效果
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp – 0.0.0.0/0 192.168.1.146 tcp dpt:80 to:192.168.5.2
DNAT tcp – 0.0.0.0/0 192.168.1.146 tcp dpt:3306 to:192.168.5.3
DNAT tcp – 0.0.0.0/0 192.168.1.146 tcp dpt:6379 to:192.168.5.4
DNAT tcp – 0.0.0.0/0 192.168.1.146 tcp dpt:8080 to:192.168.5.5:80
DNAT udp – 0.0.0.0/0 192.168.1.146 udp dpt:53 to:192.168.5.8
DNAT tcp – 0.0.0.0/0 192.168.1.146 tcp dpt:2288 to:192.168.5.99:6677
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
3)]
[外链图片转存中…(img-GRrdLDQg-1715543383693)]
[外链图片转存中…(img-remu5iCg-1715543383694)]
[外链图片转存中…(img-r6FGmAef-1715543383694)]
[外链图片转存中…(img-H8RaKc4n-1715543383694)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!