搭建OpenVPN结合OpenLDAP验证复习进程.docx
- 文档编号:26733135
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:12
- 大小:20.89KB
搭建OpenVPN结合OpenLDAP验证复习进程.docx
《搭建OpenVPN结合OpenLDAP验证复习进程.docx》由会员分享,可在线阅读,更多相关《搭建OpenVPN结合OpenLDAP验证复习进程.docx(12页珍藏版)》请在冰豆网上搜索。
搭建OpenVPN结合OpenLDAP验证复习进程
搭建OpenVPN结合OpenLDAP验证
搭建OpenVPN结合OpenLDAP验证
一、安装OpenVPN
1.1、安装前准备
#关闭selinux
setenforce0
sed-i'/^SELINUX=/c\SELINUX=disabled'/etc/selinux/config
#安装openssl和lzo,lzo用于压缩通讯数据加快传输速度
yum-yinstallopensslopenssl-devel
um-yinstalllzo
#安装epel源
rpm-ivh
sed-i's/^mirrorlist=https/mirrorlist=http/'/etc/yum.repos.d/epel.repo
1.2、安装及配置OpenVPN和easy-rsa
#安装openvpn和easy-rsa
yum-yinstallopenvpneasy-rsa
#修改vars文件
cd/usr/share/easy-rsa/2.0/
#vivars
#修改注册信息,比如公司地址、公司名称、部门名称等。
exportKEY_COUNTRY="CN"
exportKEY_PROVINCE="Beijing"
exportKEY_CITY="Beijing"
exportKEY_ORG="ENTSTUDY"
exportKEY_EMAIL="me@"
exportKEY_OU="ENTSTUDY"
#初始化环境变量
sourcevars
#清除keys目录下所有与证书相关的文件
#下面步骤生成的证书和密钥都在/usr/share/easy-rsa/2.0/keys目录里
./clean-all
#生成根证书ca.crt和根密钥ca.key(一路按回车即可)
./build-ca
#为服务端生成证书和密钥(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key-serverserver
#每一个登陆的VPN客户端需要有一个证书,每个证书在同一时刻只能供一个客户端连接,下面建立2份
#为客户端生成证书和密钥(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-keyclient1
./build-keyclient2
#创建迪菲·赫尔曼密钥,会生成dh2048.pem文件(生成过程比较慢,在此期间不要去中断它)
./build-dh
#生成ta.key文件(防DDos攻击、UDP淹没等恶意攻击)
openvpn--genkey--secretkeys/ta.key
1.3、创建服务器端配置文件
#在openvpn的配置目录下新建一个keys目录
mkdir/etc/openvpn/keys
#将需要用到的openvpn证书和密钥复制一份到刚创建好的keys目录中
cp/usr/share/easy-rsa/2.0/keys/{ca.crt,server.{crt,key},dh2048.pem,ta.key}/etc/openvpn/keys/
#复制一份服务器端配置文件模板server.conf到/etc/openvpn/
cp/usr/share/doc/openvpn-2.3.2/sample/sample-config-files/server.conf/etc/openvpn/
#查看server.conf里的配置参数
grep'^[^#;]'/etc/openvpn/server.conf
#编辑server.conf
vim/etc/openvpn/server.conf
port1194
#改成tcp,默认使用udp,如果使用HTTPProxy,必须使用tcp协议
prototcp
devtun
#路径前面加keys,全路径为/etc/openvpn/keys/ca.crt
cakeys/ca.crt
certkeys/server.crt
keykeys/server.key#Thisfileshouldbekeptsecret
dhkeys/dh2048.pem
#默认虚拟局域网网段,不要和实际的局域网冲突即可
server10.8.0.0255.255.255.0
ifconfig-pool-persistipp.txt
#10.0.0.0/8是我这台VPN服务器所在的内网的网段,读者应该根据自身实际情况进行修改
push"route10.0.0.0255.0.0.0"
#可以让客户端之间相互访问直接通过openvpn程序转发,根据需要设置
client-to-client
#如果客户端都使用相同的证书和密钥连接VPN,一定要打开这个选项,否则每个证书只允许一个人连接VPN
duplicate-cn
keepalive10120
tls-authkeys/ta.key0#Thisfileissecret
comp-lzo
persist-key
persist-tun
#OpenVPN的状态日志,默认为/etc/openvpn/openvpn-status.log
statusopenvpn-status.log
#OpenVPN的运行日志,默认为/etc/openvpn/openvpn.log
log-appendopenvpn.log
#改成verb5可以多查看一些调试信息
verb5
完整配置文件示例如下:
local192.168.0.19
port1194
protoudp
devtun
cakeys/ca.crt
certkeys/server.crt
keykeys/server.key#Thisfileshouldbekeptsecret
dhkeys/dh2048.pem
server10.10.10.0255.255.255.0
ifconfig-pool-persistipp.txt
push"route192.168.0.0255.255.255.0"
push"redirect-gatewaydef1"
push"dhcp-optionDNS8.8.8.8"
client-to-client
keepalive10120
tls-authkeys/ta.key0#Thisfileissecret
cipherAES-128-CBC#AES
comp-lzo
persist-key
persist-tun
statusopenvpn-status.log
logopenvpn.log
verb3
plugin/usr/lib64/openvpn/plugin/lib/openvpn-auth-ldap.so/etc/openvpn/auth/ldap.conf#使用openvpn-auth-ldap插件连接ldap验证密码
client-cert-not-required#客户端不要求证书
username-as-common-name
1.4、配置内核和防火墙,启动服务
#开启路由转发功能
sed-i'/net.ipv4.ip_forward/s/0/1/'/etc/sysctl.conf
sysctl-p
#配置防火墙,别忘记保存
iptables-IINPUT-ptcp--dport1194-mcomment--comment"openvpn"-jACCEPT
iptables-tnat-APOSTROUTING-s10.8.0.0/24-jMASQUERADE
注意:
如果防火墙里面有如下两句请注释掉,否者客户端连接后无法上网。
#-AINPUT-jREJECT--reject-withicmp-host-prohibited
#-AFORWARD-jREJECT--reject-withicmp-host-prohibited
serviceiptablessave
#启动openvpn并设置为开机启动
serviceopenvpnstart
chkconfigopenvpnon
二、安装openldap
yuminstall-yopenldapopenldap-serversopenldap-clients
安装以后进行配置
cp/usr/share/openldap-servers/slapd.conf.obsolete/etc/openldap/slapd.conf
cp/usr/share/openldap-servers/DB_CONFIG.example/var/lib/ldap/DB_CONFIG
mv/etc/openldap/slapd.d{,.bak}
然后通过vi修改slapd.conf,步骤如下:
1.设置目录树的后缀
找到语句:
suffix"dc=entstudy,dc=com"
将其改为:
suffix"dc=entstudy,dc=com"
2.该语句设置LDAP管理员的DN
找到语句:
rootdn"cn=manager,dc=entstudy,dc=com"
将其改为:
rootdn"cn=admin,dc=entstudy,dc=com"
3.设置LDAP管理员的口令
通过]#ldappasswd命令生成加密密码,并记录下加密后的密码
[root@localhost~]#slappasswd
Newpassword:
#输入密码123456
Re-enternewpassword:
#重新输入123456
{SSHA}b1JQdC0KSh7mz0Y3zhfxFR96fT3BVBnm#加密后的密码,复制这串字符
找到语句:
rootpwsecret
将其改为:
rootpw{SSHA}b1JQdC0KSh7mz0Y3zhfxFR96fT3BVBnm
口令也可以用明文
配置文件修改之后分下权限
chownldap.ldap/etc/openldap/*
chownldap.ldap/var/lib/ldap/*
然后开启服务
serviceslapdstart
三、安装配置migrationtools
#yum-yinstallmigrationtools
进入migrationtool配置目录
#cd/usr/share/migrationtools/
首先编辑migrate_common.ph修改如下两项
#vimigrate_common.ph
...
#DefaultDNSdomain
$DEFAULT_MAIL_DOMAIN="";
#Defaultbase
$DEFAULT_BASE="dc=entstudy,dc=com";
.......
添加测试用户
#useraddtest01
#passwdtest01
下面利用pl脚本将/etc/passwd和/etc/shadow生成LDAP能读懂的文件格式,保存在/tmp/下
#./migrate_base.pl>/tmp/example.ldif
#./migrate_passwd.pl/etc/passwd>>example.ldif
#./migrate_group.pl/etc/group>>example.ldif
过程若无报错,则已经将默认用户包括test01导入LDAP。
导入数据
/usr/bin/ldapadd-x-W-D"cn=Manager,dc=example,dc=com"-f/tmp/example.ldif
提示输入密码既是admin的密码
重启slapd完成配置
#serviceslapdrestart
四、安装openvpn-auth-ldap
1、安装openvpn-auth-ldap
#yuminstallopenvpn-auth-ldap
2、配置文件
修改配置文件:
/etc/openvpn/auth/ldap.conf
使用yum安装的,会在/usr/share/doc/openvpn-auth-ldap-2.0.3存在相应文件,如果是自行安装的,在/usr/local/etc/auth-ldap.conf。
实例:
(根据实际情况修改)
[root@localhost~]#egrep-v'^#|^$|^\s*#'/etc/openvpn/auth/ldap.conf
URLldap:
//192.168.0.18
BindDNcn=admin,dc=vpn,dc=entstudy,dc=com
Password123456
Timeout15
BaseDN"ou=People,dc=entstudy,dc=com"
SearchFilter"(uid=%u)"
RequireGroupfalse
BaseDN"ou=Groups,dc=entstudy,dc=com"
SearchFilter"(|(cn=developers)(cn=artists))"
MemberAttributeuniqueMember
修改完后,重启openvpn,openldap服务。
四、客户端设置
在Windows客户端使用帐号test01测试是否可以正常登录openvpn。
1、安装Installer(64-bit),WindowsXP_openvpn-install-2.3.7-I001-x86_64客户端软件,
2、编辑客户端配置文件
client
devtun
protoudp
remote192.168.0.19
resolv-retryinfinite
nobind
persist-key
persist-tun
cipherAES-128-CBC
caca.crt
#certtest01.crt
#keytest01.key
ns-cert-typeserver
tls-authta.key1
auth-user-pass
comp-lzo
verb3
3、下载服务端证书,ca.crtta.key放到openvpn客户端配置文件目录下,打开客户端连接,输入ldap账户test01和密码,能正常连接即可。
五、安装phpldapadmin
1、安装环境
yuminstallhttpdphpphp-bcmathphp-gdphp-mbstringphp-xmlphp-ldap
2、安装phpldapadmin
yum-yinstallphpldapadmin#要有epel源
3、修改http配置文件
yum安装的,config.d下面有phpldapadmin.conf,改下httpd.conf中的servername就可以。
注意:
如果是下载的phpldapadmin包接下的话需要修改httpd.conf配置文件,最文件最后新增
vi/etc/httpd/conf/httpd.conf
ServerName
Alias/phpldapadmin/usr/share/phpldapadmin/htdocs
Alias/ldapadmin/usr/share/phpldapadmin/htdocs
OrderDeny,Allow
Denyfromall
Allowfrom127.0.0.1192.168.1.0/24#允许访问的ip或网段
Allowfrom:
:
1
4、修改phpldapadmin配置文件
#vi/etc/phpldapadmin/config.php
#line397:
uncomment,line398:
makeitcomment
#397行去掉注释,398行注释掉
$servers->setValue('login','attr','dn');
//$servers->setValue('login','attr','uid');
5、测试登录
通过浏览器访问,登录用户名:
cn=admin,dc=entstudy,dc=com密码:
123456
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 搭建 OpenVPN 结合 OpenLDAP 验证 复习 进程
![提示](https://static.bdocx.com/images/bang_tan.gif)