在Linux系统中,权限管理直接关系到业务安全和系统稳定。当权限验证服务出现单点故障时,用户可能无法登录或执行关键操作。通过Keepalived与OpenLDAP组合,可以搭建一套高可用的权限管理方案,保证认证服务持续可用。

一、环境准备
准备两台Linux服务器作为LDAP主从节点,一台作为备用。系统建议使用CentOS或Ubuntu长期支持版本,关闭防火墙或放行389和636端口。
- 节点A:192.168.0.10,主LDAP
- 节点B:192.168.0.11,从LDAP
- 虚拟IP:192.168.0.100,由Keepalived管理
二、配置LDAP主从同步
安装OpenLDAP后,主节点开启同步模块,从节点配置拉取策略。以下为主节点同步配置片段:
# 主节点开启syncprov模块 cat <<EOF > /etc/ldap/slapd.d/syncprov.ldif dn: cn=module,cn=config objectClass: olcModuleList cn: module olcModuleLoad: syncprov EOF ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/slapd.d/syncprov.ldif
从节点配置
从节点通过olcSyncrepl指向主节点,实现数据复制:
cat <<EOF > /etc/ldap/slapd.d/replica.ldif
dn: olcDatabase={1}mdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcMdbConfig
olcSyncrepl: rid=001 provider=ldap://192.168.0.10 binddn="cn=admin,dc=test,dc=com" bindmethod=simple credentials=密码 searchbase="dc=test,dc=com" type=refreshAndPersist retry="5 5 300 5"
EOF
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ldap/slapd.d/replica.ldif
三、使用Keepalived管理虚拟IP
在两台节点安装Keepalived,主节点配置为高优先级,从节点为备用。当主节点宕机,虚拟IP自动漂移到从节点。
# /etc/keepalived/keepalived.conf 主节点示例
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.0.100
}
}
四、客户端接入方式
业务服务器将LDAP地址指向虚拟IP 192.168.0.100,使用<input>类工具或nsswitch配置即可。这样无论哪台LDAP节点存活,权限验证都不中断。
| 配置项 | 说明 |
|---|---|
| base dc | 目录树根,如dc=test,dc=com |
| uri | ldap://192.168.0.100 |
| ssl | 建议启用ldaps保证传输安全 |
五、小结
通过上述方式,Linux权限管理具备了高可用能力。核心在于LDAP同步与Keepalived漂移的配合,日常做好节点健康检查即可。