linux程序网络验证,【redhat5.5】linux的LDAP认证服务器的配置及客户端pam网络验证实例...
【1】 LDAP简介
LDAP(Lightweight Directory Access Protocol) 代表轻量级目录访问协议
LDAP 是一种非关系型数据库
LDAP 可扩展性和灵活性良好 安装和配置简单
【2】 几个重要的概念
dn : 一条记录的位置
dc : 一条记录的所属区域
ou : 一条记录的所属组织
cn/uid: 一条记录的名字/ID
【3】 LDAP数据添充原理
把一个庞大的学生档案放到LDAP里 具体步骤:
1】 建立一个"dc=ourschool,dc=org“的树根" 通过编辑"slapd.conf"来实现
2】 建立18个系分别是
dnu=computer,dc=ourschool,dc=org
dnu=film,dc=ourschool,dc=org
...
3】 在每个系建立专业 如
dnu=Linux,ou=computer,dc=ourschool,dc=org
...
4】 加学生
dn:cn=xiaoming,ou=linux,ou=computer,dc=ourschool,dc=org
5】 学生的详细信息
dn:cn=xiaoming,ou=linux,ou=computer,dc=ourschool,dc=org
objectClass: organizationalPerson
cn:xiaoming
cn:小明
sn:小明
description:a good boy
(以上是一条记录的信息,如果把他保存成LDIF文件,可以导入到LDAP数据库中)
【4】 搭建LDAP认证服务器
1】 安装服务器软件
yum -y install openldap openldap-servers
2】 编译服务器端配置文件(acl 与ldap配合,实现访问控制)
vim /etc/openldap/slapd.conf
access to *
by * read
by * auth
access to *
by self write
database bdb
suffix "dc=example,dc=com"
rootdn "cn=admin,dc=example,dc=com"
rootpw 123456
# Mode 700 recommended. (默认LDAP存放数据的目录 权限:700)
directory /var/lib/ldap
3】利用脚本创建OU,并初始化LDAPS
a】 vim /usr/usr/share/openldap/migration/migrate_common.ph
71:$DEFAULT_MAIL_DOMAIN = "example.com";
74:$DEFAULT_BASE = "dc=example,dc=com";
b】 /usr/share/openldap/migration/migrate_base.pl > /tmp/example.ldif
c】 删掉 example.ldif 中多余的选项 (空行不能省略)
cat /tmp/example.ldif
dn: dc=example,dc=com
dc: example
objectClass: top
objectClass: domain
dn: ou=People,dc=example,dc=com
ou: People
objectClass: top
objectClass: organizationalUnit
dn: ou=Group,dc=example,dc=com
ou: Group
objectClass: top
objectClass: organizationalUnit
d】创建并初始化
slapadd -vl /tmp/example.ldif
生成信息:
bdb_db_open: Warning - No DB_CONFIG file found in directory
/var/lib/ldap: (2)
Expect poor performance for suffix dc=uplooking,dc=com.
added: "dc=example,dc=com" (00000001)
added: "ou=People,dc=example,dc=com" (00000002)
added: "ou=Group,dc=example,dc=com" (00000003)
e】 解决上步警告
cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
4】 启动LDAP服务
a】 chown -R ldap /var/lib/ldap
若不改权限 启动失败
b】 service ldap start
或
/etc/init.d/ldap start
c】 netstat -tunlp | grep :389
验证 服务监听389端口
5】 安装图形管理程序 phpldapadmin
a】yum -y install httpd php php-ldap
b】 service httpd restart
c】 tar zxvf phpldapadmin-1.2.0.4.tgz -C /var/www/html/
d】 cd /var/www/html/phpldapadmin-1.2.0.4
e】 vim config/config.php.example config/config.php
f】 firefox http://localhost/phpldapadmin-1.2.0.4.tgz
g】 输入用户名 密码登录 cn=admin,dc=example,dc=com
123456
6】 以上为LDAP服务器的通用配置
【5】 实现具体功能,用户的非本地验证登录
1】服务器端利用脚本创建用户文件,并用phpldapadmin导入
a】for i in {1..50};do useradd user$i ; echo user$i | passwd --stdin user$i;done
b】 grep ^user /etc/passwd > /tmp/user
grep ^user /etc/group > /tmp/group
c】 /usr/share/openldap/migration/migrate_passwd.pl /tmp/user > /tmp/user.ldif
/usr/share/openldap/migration/migrate_group.pl /tmp/group > /tmp/group.ldif
d】 for i in { 1..50 }; do userdel user$i ;done
e】 导入/tmp/user.ldif 和 /tmp/group.ldif
2】服务器端(192.168.1.221)利用nfs共享用户家目录
a】 vim /etc/exports
/home *(rw,sync)
b】 service nfs restart
3】客户端配置网络验证
a】 authconfig-tui
选上使用ldap和使用ldap验证 配置ldap服务器
b】 grep ldap /etc/pam.d/system-auth
auth sufficient pam_ldap.so use_first_pass
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
password sufficient pam_ldap.so use_authtok
session optional pam_ldap.so
以上是 system-auth文件多出来的内容
tail -n 3 /etc/openldap/ldap.conf
URI ldap://192.168.1.221/
BASE dc=example,dc=com
TLS_CACERTDIR /etc/openldap/cacerts
以上是openldap客户端配置文件 新增内容
c】 rpm -q openldap-clients
查看是否安装openldap客户端 若未安装,请安装
d】 配置触发挂载家目录
vim /etc/auto.master
/home /etc/auto.home
vim /etc/auto.home
* -rw 192.168.1.221:/home/&
e】 service autofs restart
f】 测试成功
【6】 开启网络验证后,客户端登录时,优先使用本地/etc/passwd /etc/shadow文件验证,还是优先使用ldap
grep ldap /etc/nsswitch.conf -n
36:passwd: ldap files
37:shadow: ldap files
38:group: ldap files 由 36 37 38 三行的ldap与files顺序决定
linux程序网络验证,【redhat5.5】linux的LDAP认证服务器的配置及客户端pam网络验证实例...相关推荐
- 在linux挂载网络驱动器,利用centos 6.6 搭建iscsi服务器并在centos挂载iscsi网络驱动器...
################################################################## 搭建iscsi服务器: 参考自:http://www.linuxi ...
- win10上运行linux程序吗,Win10可以运行 Linux 的图形界面程序了
Win10可以运行 Linux 的图形界面程序了 2016年04月13日 16:39作者:cnBeta编辑:李佳辉 分享 正如大家所知道的,大多数 Linux 上的命令行二进制程序现在可以原生地运行在 ...
- 服务器虚拟机配置串口连接到网络,vmware虚拟机配置串口
Vmware提供了4种串行端口类型我们可以通过串口来进行一些研发和Vmware自动化的部署工作.VMware串行端口类型 1.使用主机上的物理串行端口 2.输出到文件 3.连接到命名管道 4.通过网络 ...
- linux程序防逆向,一个简单LINUX程序的逆向
开始之前的准备: 反汇编:IDA 十六进制编辑器: Hexworkshop LINUX环境: KALI LINUX 调试: EDB (KALI自带的) 用16进制打开看看,前面有个明显的ELF标志 然 ...
- linux把硬盘当内存,把内存当硬盘使,让你的linux程序运转如飞(在linux下用firefox在线写csdn的blog再也不卡了)...
先说一下核心的命令: mount -t tmpfs -o size=1024m tmpfs /mnt/ram 这个命令开了一块1G内存来当目录用.不过放心,如果里面没文件,是不会占用内存的,用多少占多 ...
- linux程序作为桌面壁纸,在Linux系统下安装壁纸程序Wonderwall,附主要功能介绍
Wonderwall是一款酷炫的壁纸程序,可用在Linux系统的Unity和GNOME桌面环境中,我们可以通过在终端中使用snap来安装Wonderwall.Wonderwall的界面非常简单明了,使 ...
- 写入usb设备 linux 程序,模拟物理USB设备Linux
最好的方法是使用Linux Gadget驱动程序和硬件,使您成为一个USB设备.小工具驱动程序允许计算机"假装"为任何类型的设备.然后,您的受测系统有一个USB OTG电缆连接到小 ...
- linux 程序更新使用U盘,linux下如何使用U盘?
昨天花了整整一天才把linux搞定,今天兴致勃勃地要把U盘上的文件拷贝过去.因为听同事说可以像在windows下那样直接双击使用U盘,于是照做了,哪曾想等了半天愣是没反应,最后还是提示错误,看来情报有 ...
- linux程序崩溃时调用链,Linux 获取并分析程序崩溃时的调用堆栈
下面是一个小例子,说明了程序出现段错误时,如何打印程序的堆栈信息. #include #include #include #include static void WidebrightSegvHand ...
最新文章
- 转:查看系统是64位还是32位
- Opencv学习笔记(六)SURF学习笔记
- java map 查找_在Java TreeMap中查找元素位置
- mysql mongodb qps_极高的QPS - DynamoDB与MongoDB相比其他noSQL?
- 基于句子嵌入的无监督文本摘要(附代码实现)
- mysql知识测试_MySQL基础知识测试
- Windows7无损分区
- linux杂七杂八整理
- php界面框架luy_LazyPHP
- flashback query闪回数据
- 跨进程API Hook
- k3系统 中间层服务器,金蝶k3中间层服务器如何设置
- solidity教程(一)搭建僵尸工厂
- Altium Designer 20的安装教程
- 软件测试 (5) 数据库语句
- 项目#npm install #cnpm install #yarn安装包报错
- P3435 [POI2006]OKR-Periods of Words [Kmp, next数组]
- apache默认端口号是多少
- PLSQL 14.0.6 下载使用教程
- 英语6级词汇量【原创】