服务端搭建Openldap,并创建post
用户,我们现在进行Centos7.6
设置post
用户进行登陆。
部署前环境确认:
- 操作系统:Centos7.6
- 安装前环境操作:
1、关闭防火墙以及selinux,并重启生效。
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config && systemctl disable firewalld && reboot
2、安装ntp时间服务器,进行时间校对(可选)
yum -y install ntp
流程:
一、安装相关的包,
二、设置openldap的服务端。
三、切换用户。
四、遇到问题以及解决方法。
一、安装相关的包。
1、在开启ldap认证前客户端提示缺少ldap.so.2
文件,需要安装ldap.so.2安装如下工具
yum install nss-pam-ldapd
二、设置openldap的服务端,使用空格键选择如下两个选项,并‘Next’。
$ authconfig-tui

填写openldp服务端的基本信息,并点击'OK'

查看用
post
用户。
[root@localhost.localdomain /home]$ getent passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
nscd:x:28:28:NSCD Daemon:/:/sbin/nologin
nslcd:x:65:55:LDAP Client User:/:/sbin/nologin
post:*:10000:10000:post:/home/post:/bin/bash
三、切换post
用户,提示切换用户成功,提示用户的家目录没有进行创建。
[root@localhost.localdomain /home]$
[root@localhost.localdomain /home]$ sudo su - post
Last login: Thu May 9 18:58:54 CST 2019 from 10.18.224.186 on pts/3
su: warning: cannot change directory to /home/post: No such file or directory
[post@localhost.localdomain /home]$
远程ssh输入密码,没有切换过去。
四、遇到问题以及解决方法。
1、客户端配置好openldpa认证后,getent passwd能看到用户post
,进行ssh或者切换到此用户下Could not chdir to home directory/home/ldaptest: No such file or directory
第一种方法通过autofs+NFS部署实现,另一种方法通过增加模块实现(推荐)
我们这里选择添加pam模块(pam_mkhomedir.so)进行演示,在/etc/pam.d/sshd
配置文件中添加如下信息:
$ vim /etc/pam.d/sshd
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
2、远程输入密码,但是没有切换过去。
解决方法:在客户端机器上,切换到登录用户,在切换到root下,输入密码。远程就可以切换过去。
3、设置openldap认证后,要特定的用户(post)使用特定的openldap上的 用户的方法:
centos实现:
linux下关闭root登录(可选):
PermitRootLogin no
给用户提权 :
visudo
添加post
用户如下:
post ALL=(ALL) ALL
只允许特定用户或者特定组登录: /etc/nslcd.conf, 编辑 nnslcd.conf文件,添加如下信息,按实际的gidNumber以及uidNumber填写。
filter passwd (gidNumber=10000)
filter passwd (uidNumber=10000)
网友评论