`

openssl

 
阅读更多
Server configuration
Make sure you've got those available (RHEL5),
rpm -q \
openssl \
openssl-devel \
openldap-servers

Make the self-signed key,
cd /etc/openldap/
openssl req -newkey rsa:1024 -x509 -nodes -out server.pem -keyout server.pem -days 365
grep ^ldap /etc/passwd
chown ldap:ldap server.pem
chmod 440 server.pem

Enable SSL/TLS,
cd /etc/openldap/
vi slapd.conf
add,
TLSCipherSuite HIGH:MEDIUM:+SSLv2
TLSCACertificateFile /etc/openldap/server.pem
TLSCertificateFile /etc/openldap/server.pem
TLSCertificateKeyFile /etc/openldap/server.pem
TLSVerifyClient never
Note. for TLSVerifyClient, we're using 'never' (the default) instead of 'demand'. The server doesn't ask the client for a certificate.


Client configuration
Make sure you've got those available (RHEL5),
rpm -q \
openldap-clients \
nss_ldap

Send server side's /etc/openldap/server.pem to /etc/openldap/cacerts/server.pem on the client and make the required OpenSSL hash file,
cd /etc/openldap/cacerts/
ln -s server.pem `openssl x509 -hash -noout -in server.pem`.0

Backup and clean-up the default system authentication configurations,
cd /etc/
mv nsswitch.conf nsswitch.conf.dist
sed '/^#/d; /^$/d;' nsswitch.conf.dist > nsswitch.conf.dist.clean
cp nsswitch.conf.dist.clean nsswitch.conf
ls -l nsswitch.conf*

cd /etc/
mv ldap.conf ldap.conf.dist
sed '/^#/d; /^$/d;' ldap.conf.dist > ldap.conf.dist.clean
cp ldap.conf.dist.clean ldap.conf
ls -l ldap.conf*

cd /etc/openldap/
mv ldap.conf ldap.conf.dist
sed '/^#/d; /^$/d;' ldap.conf.dist > ldap.conf.dist.clean
cp ldap.conf.dist.clean ldap.conf
ls -l ldap.conf*

Configure system authentication (RHEL5),
authconfig-tui
like,
use ldap
use ldap authentication
local authorization is sufficient
(next)
use tls
server: ldap://ldapsrv/
base db: dc=lusers,dc=example,dc=net

Ready to go,
ldapsearch -x -ZZ
getent passwd
Note. -Z issues StartTLS, -ZZ requires the operation to be successful


Client troubbleshooting
See if the ldap server is available without ssl/tls and look for your base dn,
ldapsearch -x -H "ldap://ldapsrv/" -b '' -s base '(objectclass=*)' namingContexts
ldapsearch -x -H "ldap://ldapsrv/" -b "dc=lusers,dc=example,dc=net"
configure your ldap client so you don't have to specify host and base dn again,
cd /etc/openldap/
vi ldap.conf
like,
BASE dc=lusers,dc=example,dc=net
URI ldap://ldapsrv/
check again,
ldapsearch -x -s base '(objectclass=*)' namingContexts
ldapsearch -x

Now configure your ldap client to use ssl/tls,
cd /etc/openldap/
vi ldap.conf
add,
TLS_CACERTDIR /etc/openldap/cacerts
Note. openssl hash should be there (see above)
Note. you could also force the .pem file with TLS_CACERT (doesn't require the hash) instead of TLS_CACERTDIR but then we would have to find a relative trick for /etc/ldap.conf
分享到:
评论

相关推荐

    openssl和openssl-devel离线rpm安装包.zip_OPENSSL 库_openssl_openssl-deve

    `openssl-devel` 是OpenSSL的开发库,包含了头文件和静态链接库,用于编译和链接到OpenSSL功能的应用程序。开发人员在编写需要使用OpenSSL的软件时,需要安装这个包,以便在编译时可以正确地引用OpenSSL的函数和结构...

    OpenSSL-for-iPhone-master.zip_OpenSSL-for-iPhone_openssl_openssl

    OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,同时也包含各种加密算法、证书处理和其他安全功能。在iOS开发中,如果你的应用需要进行安全的网络通信,如HTTPS,或者需要对数据进行加密解密...

    openssl-1.0.2u + openssl-1.0.2k

    标题中的"openssl-1.0.2u + openssl-1.0.2k"指的是OpenSSL库的两个不同版本,1.0.2u和1.0.2k。OpenSSL是一个开源项目,提供安全套接层(SSL)和传输层安全(TLS)协议的实现,用于加密通信,确保网络数据传输的安全...

    openssl-1.0.0.tar.gz~~openssl-3.3.1.tar.gz.zip

    不同版本的OpenSSL压缩包: openssl-1.0.0.tar.gz openssl-1.0.1.tar.gz openssl-1.0.2.tar.gz openssl-1.1.0.tar.gz openssl-1.1.1.tar.gz openssl-3.0.14.tar.gz openssl-3.1.6.tar.gz openssl-3.2.2.tar.gz ...

    openssl-0.9.8k_WIN32_openssl-0.9.8k_WIN32_OpenSSL-Win32_openssl_

    这个压缩包“openssl-0.9.8k_WIN32_openssl-0.9.8k_WIN32_OpenSSL-Win32_openssl_”显然包含了适用于 Windows 32位系统的 OpenSSL 版本0.9.8k。这个版本可能已经过时,因为最新的稳定版本通常会提供更多的安全修复和...

    openssl-win32工具 win32OpenSSL

    用openSSL工具生成密钥使用说明: 安装后进入OpenSSL工具,输入如下命令: • Linux用户(以Ubuntu为例): $ openssl 进入OpenSSL程序 OpenSSL> genrsa -out rsa_private_key.pem 1024 生成私钥 OpenSSL> pkcs8 -...

    Openssl.rar_C++_VC6_openssl vc6_openssl 静态库

    基于VC6的openssl库, (1) lib\libeay32.lib及lib\ssleay32.lib是已经编译好的VC6可用的静态库, 只要把这两个文件拷到VC6的lib目录中即可。 (2) include\openssl是openssl相关的头文件, 只要把openssl这个文件夹...

    centosopenssl-1.1.1u+openssl-1.1.1vopenssl1.1.1u+openssl1.1.1v

    centos7 最新版本的openssl rpm安装包 openssl-1.1.1u-1.el7.x86_64.rpm openssl-debuginfo-1.1.1u-1.el7.x86_64.rpm openssl-devel-1.1.1u-1.el7.x86_64.rpm openssl-1.1.1v-1.el7.x86_64.rpm openssl-debuginfo-...

    openssl win x64

    **OpenSSL 在 Windows x64 平台上的编译与应用** OpenSSL 是一个开源的加密库,包含了大量的加密算法,如对称加密、非对称加密、哈希函数等,广泛应用于网络通信的安全保障,如 SSL/TLS 协议。在 Windows x64 环境...

    OpenSSL3.2动态库

    OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,同时也包含各种加密算法、证书工具和其他相关功能。OpenSSL 3.2 是该库的一个新版本,它提供了最新的安全更新、性能改进以及对现有特性的优化...

    openssl-OpenSSL_1_1_1d.tar.gz

    "openssl-OpenSSL_1_1_1d.tar.gz" 是一个包含 OpenSSL 1.1.1d 版本的压缩文件,它遵循了通常的命名规范,其中 "openssl" 表示这是一个与 OpenSSL 相关的软件,"OpenSSL_1_1_1d" 指的是 OpenSSL 的特定版本号,即 ...

    安装openssl和openssl-develd 的依赖包

    这里我们关注的是“openssl”和“openssl-devel”这两个关键组件,它们是实现安全套接字层(SSL)和传输层安全(TLS)协议的基础。SSL/TLS协议用于加密网络通信,确保数据在传输过程中不被窃取或篡改。 **openssl**...

    openssl已编译,3.0.3

    OpenSSL 是一个强大的安全套接层 (SSL) 和传输层安全 (TLS) 库,用于加密通信,确保网络数据传输的安全性。它包含了各种加密算法、常用的密钥和证书操作,以及SSL/TLS协议实现。标题提到的是 "openssl已编译,3.0.3...

    Hmailserver配置openSSL生成密钥公钥Win64OpenSSL+DKIM

    Hmailserver配置openSSL生成密钥公钥Win64OpenSSL+DKIM,文件内容有Win64OpenSSL_Light-1_1_1w,GenDKIM.bat,GenDKIMtxt.exe,makeHMScert.bat,先安装Win64OpenSSL_Light-1_1_1w,然后进入安装目录的bin目录下,将...

    openssl-windows64

    OpenSSL 是一个强大的安全套接层 (SSL) 和 Transport Layer Security (TLS) 库,用于在互联网上实现安全通信。这个“openssl-windows64”压缩包显然是为64位Windows操作系统设计的OpenSSL版本,主要用途是进行数据...

    OpenSSL学习资料(比较齐全的OpenssL相关资料汇总)

    OpenSSL 是一个强大的安全套接层(SSL/TLS)库,同时也包含各种加密算法、证书操作和其他相关工具。这个压缩包文件提供了丰富的OpenSSL学习资料,涵盖了从基础概念到实践应用的不同方面。以下是对这些知识点的详细...

    已经编译的openssl,openssl-0.9.8q.zip版本

    **OpenSSL 概述** OpenSSL 是一个强大的安全套接字层密码库,包含各种主要的密码算法、常用的密钥和证书封装管理功能以及 SSL 协议,并提供丰富的应用程序供测试或其他目的使用。这个库被广泛应用于网络服务器,...

    OpenSSL3.0.0静态编译

    OpenSSL 3.0.0 是该库的一个重要版本,引入了多项改进和新特性。在Windows环境下,使用Microsoft Visual Studio 2019 (msvc2019) 进行OpenSSL的静态编译,可以确保编译出的库文件与目标应用程序紧密集成,减少运行时...

    openssl1.1.0.rar

    OpenSSL 是一个强大的安全套接层 (SSL) 和 Transport Layer Security (TLS) 库,它包含各种加密算法、常用的密钥和证书管理功能,以及 SSL/TLS 协议的实现。OpenSSL 1.1.0 版本是该项目的一个重要里程碑,引入了许多...

    openssl编程帮助文档

    ### OpenSSL编程帮助文档知识点梳理 #### 第一章:基础知识 **1.1 对称算法** - **概念**:对称算法是一种加密技术,在该技术中,加密和解密使用相同的密钥。 - **常见对称算法**:包括DES、3DES、AES、RC4等。 -...

Global site tag (gtag.js) - Google Analytics