目录
前言
最近一段时间公司让我来搭建“零信任”网络,最开始也是一脸懵逼。因为国内对这方面的文档实在是少得可怜,但是对这个概念的说明文档倒是不少,所以我就不多说相关的概念了(能搜索到这个帖子的大佬,相信也对零信任的概念已经有所了解)我就主要讲讲我的实现方法和所使用到的组件以及对此的心得体会吧!也希望大家可以一起讨论,指出其中的不足,共同进步!
心酸历程:从最开始的SPA(无法连接)到fwknop(领导说没有网页配置,只有一个敲门。不够丰满)再到最后的pritunl-zero(有后台配置页面,功能也比较多,但是门槛较高、配置繁琐)。
话不多说,开始正文
搭建Pritunl-zero需要的环境,以及其中的组件。
1.pritunl-zero服务端(我使用的是阿里云服务器。ip: 135
)
2.pritunl-zero客户端(我使用的是内网服务器。ip:205
)
3.pritunl-zero堡垒机(使用的AWS服务器。公网ip:177。内网ip:84
)
我的应用场景:公司内网ip通过服务端ssh连接到堡垒机,以及堡垒机所在的内网服务器集群。(使内网服务器通过pritunl-zero服务器ssh连接到亚马逊服务器上的内网ip)
ps:这些组件可以自行搭配。只要满足以下条件即可。(重中之重)
1、需要有自己的域名,如果是国内的服务器则需要通过备案(如果有现成的就不说了。没有的话域名在阿里云上几块钱就买到了,没有备案又想自己搭建的就在阿里云上买一个外网服务器这样就可以跳过备案使用https了)
2、服务端需要有固定的公网ipv4。
3、堡垒机也需要有外网ipv4或ipv6。
开始搭建
过程比较繁琐,希望大家耐心看完。有不懂的或者出错的留言区讨论。
一、在135
服务器搭建mongoDB数据库
1 配置yum源 安装指定的mongodb-org
sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo << EOF
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF
sudo yum -y install mongodb-org
sudo systemctl start mongod
sudo systemctl enable mongod
2 在mongoDB中创建admin用户
sudo mongo
use admin;
db.createUser(
{
user: "admin",
pwd: "123456",
roles: [
"userAdminAnyDatabase",
"dbAdminAnyDatabase",
"readWriteAnyDatabase"
]
}
);
3 更改MongoDB配置文件
vim /etc/mongod.conf
#这里贴出我的配置
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
processManagement:
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
net:
port: 27017
bindIp: 0.0.0.0
security:
authorization: enabled
4 创建pritunl用户
sudo mongo --host 127.0.0.1 -u admin --authenticationDatabase admin
use admin;
db.createUser({
user: "pritunl",
pwd: "123456",
roles: [{role: "dbOwner", db: "pritunl"}]
}