sky 发表于 2015-12-31 08:35:19

ubuntu-ldap-client+SSL/TLS

一、基本环境Jumpserver :Master1   192.168.20.128   Mysql 主   FQDN:Master1.jumpserver.org    Centos6.5 x86Master2   192.168.20.129   Mysql 从   FQDN:Master2.jumpserver.org    Centos6.5 x86注:Master1和Master2 相关配置在 http://bbs.jumpserver.org/read/111.htmlClient:Ubuntu:192.168.20.132    Client双主   FQDN:Ubuntu.jumpserver.orgubuntu15.0464位Ubuntu:
图片:20151125175152.jpg




二、安装


2.1 安装所需的软件包
apt-get install libpam-ldap libnss-ldap sudo-ldapnscd

2.2配置LDAP
   2.2.1输入的URI为LDAP服务器。
图片:1.jpg



    2.2.1输入你的搜索基础的DN。使用您作为基础的用户数据库相同的DN。
图片:2.png



    2.2.3 您只能使用LDAPv3的,所以选择此屏幕上的默认。
图片:3.png



    2.2.4 有没有必要为本地root拥有完全权限在你的LDAP服务器,所以没有在这里回答。
图片:4.png



    2.2.5 如果您的LDAP服务器允许匿名绑定,你可以回答“不”也在这里...
图片:5.png



注:可通过dpkg-reconfigure ldap-auth-config重新配置

三、服务器端证书通过scp至客户端:

mkdir -p /etc/openldap/cacerts/
cd /etc/openldap/cacerts/   
scp 192.168.20.128:/etc/openldap/cacerts/cacert.pem /etc/openldap/cacerts/cacert.pem

注:如果你的Jumpserver的OpenLDAP 没有使用 SSL/TLS 加密数据通信 ,也就是使用389端口,请忽略这一步。

四、修改配置文件


root@Ubuntu:~# cat /etc/pam.d/common-auth | grep -v ^# | grep -v ^$
auth pam_unix.so nullok_secure
auth pam_ldap.so use_first_pass
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_ecryptfs.so unwrap
auth    sufficient      pam_ldap.so
auth    required       pam_unix.so nullok_secure use_first_pass

common-auth 追加后,登录要求输入LDAP Password ,想取消LDAP Password 就不追加。
图片:@024`_A$F2R~OUBJN1_80@U.png




root@Ubuntu:~# cat /etc/pam.d/common-account| grep -v ^# | grep -v ^$
account pam_unix.so
account pam_ldap.so
account requisite pam_deny.so
account required pam_permit.so
account sufficient       pam_ldap.so
account required      pam_unix.so

root@Ubuntu:~#cat /etc/pam.d/common-password | grep -v ^# | grep -v ^$
password pam_unix.so obscure sha512
password pam_ldap.so use_authtok try_first_pass
password requisite pam_deny.so
password required pam_permit.so
password optional pam_ecryptfs.so
password      sufficient       pam_ldap.so
password      required         pam_unix.so nullok obscure min=4 max=8 md5


root@Ubuntu:~# cat /etc/pam.d/common-session | grep -v ^# | grep -v ^$
session pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session    optional pam_umask.so
ssion optional pam_systemd.so
session optional pam_ecryptfs.so unwrap
session    required         pam_unix.so
session    required         pam_mkhomedir.so skel=/etc/skel/ umask=0077
session   optional         pam_ldap.so

注:红色部分是追加的

root@Ubuntu:~# cat /etc/nsswitch.conf | grep -v ^# | grep -v ^$
passwd:         files ldap
group:          files ldap
shadow:         files ldap
hosts:          files dns
networks:       files
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
netgroup:       nis
sudoers: files ldap

root@Ubuntu:~# cat /etc/ldap/ldap.conf | grep -v ^# | grep -v ^$
BASE dc=jumpserver,dc=org
URI ldaps://Master1.jumpserver.org/ ldaps://Master2.jumpserver.org/
TIMELIMIT   2
TLS_CACERT /etc/openldap/cacerts/cacert.pem
Sudoers_base ou=Sudoers,dc=jumpserver,dc=org

注:客户端的sudo版本会影响 ldap配置文件的位置,通过sudo -V | grep ldap查看,最后显示
ldap.conf path: /etc/ldap/ldap.conf这个来决定
sudo内容(Sudoers_base ou=Sudoers,dc=jumpserver,dc=org ) 在哪个文件上配置的。

root@ubuntu:~# cat /etc/ldap.conf | grep -v ^# | grep -v ^$
base dc=jumpserver,dc=org
uri ldaps://Master1.jumpserver.org/ ldaps://Master2.jumpserver.org/
ssl on
TLS_CACERTDIR /etc/openldap/cacerts
ldap_version 3
pam_password md5
nss_initgroups_ignoreusers backup,bin,daemon,games,gnats,irc,landscape,list,lp,mail,man,messagebus,news,proxy,roo
t,sshd,sync,sys,syslog,systemd-bus-proxy,systemd-network,systemd-resolve,systemd-timesync,uucp,uuidd,www-

注:如果你的Jumpserver是使用389端口通信,请把uri ldaps://xxx全部改成uri ldap://xxxx,就是把s去掉。
#重启服务使配置生效
root@Ubuntu:~# /etc/init.d/nscd restart
[ ok ] Restarting nscd (via systemctl): nscd.service.

五、测试

5.1 测试是否已启用LDAP认证
root@Ubuntu:~# getent passwd xiaowang
xiaowang:x:5034:5034:xiaowang:/home/xiaowang:/bin/bash
root@Ubuntu:~# id xiaowang
uid=5034(xiaowang) gid=5034(xiaowang) groups=5034(xiaowang)

5.2测试用户登录跳板机再登录后端Client

图片:8CQXPE3H5.png


页: [1]
查看完整版本: ubuntu-ldap-client+SSL/TLS