Linux?
yum install openldap openldap-servers openldap-clients
olcRootPW: {SSHA}3pVTGxVxrS7tFJXrp+sAA6EdSgO8y1NE
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
/etc/init.d/slapd start
vi /etc/sysconfig/ldap # Options of slapd (see man slapd) SLAPD_OPTIONS="-l local4 -s 512"
dn: dc=unix-power,dc=net objectclass: dcObject objectclass: organization o: VIRTUAL CORPORATION dc: unix-power dn: cn=Manager,dc=unix-power,dc=net objectclass: organizationalRole cn: Manager
ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f init.ldif
dn: ou=Users,dc=unix-power,dc=net objectclass: organizationalUnit ou: Users dn: ou=Groups,dc=unix-power,dc=net objectclass: organizationalUnit ou: Groups dn: ou=Computers,dc=unix-power,dc=net objectclass: organizationalUnit ou: Computers # ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f add.ldif Enter LDAP Password: adding new entry "ou=Users,dc=unix-power,dc=net" adding new entry "ou=Groups,dc=unix-power,dc=net" adding new entry "ou=Computers,dc=unix-power,dc=net
dn: cn=develop,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: develop gidNumber: 1000 dn: cn=sales,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: sales gidNumber: 1001 dn: cn=market,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: market gidNumber: 1002 # ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f groupadd.ldif Enter LDAP Password: adding new entry "cn=develop,ou=Groups,dc=unix-power,dc=net" adding new entry "cn=sales,ou=Groups,dc=unix-power,dc=net" adding new entry "cn=market,ou=Groups,dc=unix-power,dc=net"
dn: uid=takeda,ou=Users,dc=unix-power,dc=net objectclass: posixAccount objectclass: inetOrgPerson sn: takeda cn: kazuma displayName: Takeda Kazuma uid: takeda uidNumber: 1000 gidNumber: 1000 homeDirectory: /home/takeda loginShell: /bin/bash userPassword: {CRYPT}B5fKzlwfatuy2 mail: takeda@unix-power.net dn: uid=suzuki,ou=Users,dc=unix-power,dc=net objectclass: posixAccount objectclass: inetOrgPerson sn: suzuki cn: hajime displayName: Suzuki Hajime uid: suzuki uidNumber: 1001 gidNumber: 1000 homeDirectory: /home/suzuki loginShell: /bin/bash userPassword: {CRYPT}B5fKzlwfatuy2 mail: suzuki@unix-power.net dn: uid=tanaka,ou=Users,dc=unix-power,dc=net objectclass: posixAccount objectclass: inetOrgPerson sn: tanaka cn: takuya displayName: Tanaka Takuya uid: tanaka uidNumber: 1002 gidNumber: 1000 homeDirectory: /home/tanaka loginShell: /bin/bash userPassword: {CRYPT}B5fKzlwfatuy2 mail: tanaka@unix-power.net # ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f useradd.ldif Enter LDAP Password: adding new entry "uid=takeda,ou=Users,dc=unix-power,dc=net" adding new entry "uid=suzuki,ou=Users,dc=unix-power,dc=net" adding new entry "uid=tanaka,ou=Users,dc=unix-power,dc=net"
yum -y install openssl
cd /etc/pki/CA/
touch index.txt
echo 01 > serial
openssl genrsa -out ca.key 4096
openssl req -new -x509 -days 365 -key ca.key -out ca.cert.pem
cd private/
openssl genrsa -out ldap.domain.jp.key 4096
req -new -key ldap.domain.jp.key -out ldap.domain.jp.csr
cd ..
ca -keyfile ca.key -cert ca.cert.pem -in private/ldap.domain.jp.csr -out private/ldap.domain.jp.crt -extensions v3_ca
cat index.txt
V 220407123403Z 01 unknown /C=IN/ST=Karnataka/O=GoLinuxCloud/OU=Database/CN=server.example.com/emailAddress=admin@golinuxcloud.com
openssl verify -CAfile ca.cert.pem private/ldap.domain.jp.crt
openssl x509 -noout -text -in private/ldap.domain.jp.crt | grep -A 1 "Subject Alternative Name"
cp -v private/ldap.domain.jp.crt private/ldap.domain.jp.key /etc/openldap/certs/
cp -v ca.cert.pem /etc/openldap/cacerts/
slapcat -b "cn=config" | egrep "olcTLSCertificateFile|olcTLSCertificateKeyFile"
olcTLSCertificateFile: "OpenLDAP Server" olcTLSCertificateKeyFile: /etc/openldap/certs/password
dn: cn=config changetype: modify replace: olcTLSCertificateFile olcTLSCertificateFile: /etc/openldap/certs/ldap.domain.jp.crt - replace: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: /etc/openldap/certs/ldap.domain.jp.key
chown -R ldap:ldap /etc/openldap/certs chown -R ldap:ldap /etc/openldap/cacerts
ldapmodify -Y EXTERNAL -H ldapi:// -f tls.ldif
dn: cn=config changetype: modify add: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/openldap/cacerts/ca.cert.pem
ldapmodify -Y EXTERNAL -H ldapi:// -f tls-1.ldif
slapcat -b "cn=config" | egrep "olcTLSCertificateFile|olcTLSCertificateKeyFile|olcTLSCACertificateFile"
SLAPD_LDAPS=no
SLAPD_LDAPS=yes
TLS_CACERTDIR /etc/openldap/certs TLS_CACERT /etc/openldap/cacerts/ca.cert.pem TLS_REQCERT allow
service slapd restart
dnf -y install openldap-clients sssd sssd-ldap oddjob-mkhomedir openssl-perl
mkdir /etc/openldap/cacerts
scp /etc/openldap/cacerts/ca.cert.pem ldap-client:/etc/openldap/cacerts/ca.cert.pem
[sssd] config_file_version = 2 services = nss, pam,autofs domains = default [nss] homedir_substring = /home [pam] [domain/default] id_provider = ldap autofs_provider = ldap auth_provider = ldap chpass_provider = ldap ldap_uri = ldaps://ldap.domain.jp:636 ldap_chpass_uri = ldaps://ldap.domain.jp:636 ldap_search_base = dc=domain,dc=jp ldap_id_use_start_tls = False ldap_tls_cacertdir = /etc/openldap/certs cache_credentials = True ldap_tls_reqcert = never entry_cache_timeout = 600 ldap_network_timeout = 3 ldap_connection_expire_timeout = 60
chmod 600 /etc/sssd/sssd.conf chown root:root /etc/sssd/sssd.conf
BASE dc=domain,dc=jp URI ldap://10.0.2.20 TLS_CACERT /etc/openldap/cacerts/ca.cert.pem TLS_CACERTDIR /etc/openldap/cacerts TLS_REQCERT never
openssl rehash /etc/openldap/cacerts
authselect select sssd with-mkhomedir --force
systemctl enable sssd.service --now
systemctl enable oddjobd.service --now
id testUser
ssh testUser@clientComputer
SLAPD_URLS="ldapi:/// ldap:/// ldaps:///"
ユーザー情報 認証 │ [ ] キャッシュ情報 [ ] MD5 パスワードを使用 │ [*] LDAP を使用 [*] シャドウパスワードを使用 │ [ ] NIS を使用 [*] LDAP 認証を使用 │ [ ] IPAv2 の使用 [ ] Kerberos 5 を使用 │ [ ] Winbind を使用 [ ] 指紋読み取りを使用 │ [ ] Winbind 認証を使用 │ [*] ローカル認証は十分です
#auth sufficient pam_sss.so use_first_pass auth sufficient pam_ldap.so use_first_pass #account [default=bad success=ok user_unknown=ignore] pam_sss.so account [default=bad success=ok user_unknown=ignore] pam_ldap.so #password sufficient pam_sss.so use_authtok password sufficient pam_ldap.so use_authtok #session optional pam_sss.so session optional pam_ldap.so
#auth sufficient pam_sss.so use_first_pass auth sufficient pam_ldap.so use_first_pass #account [default=bad success=ok user_unknown=ignore] pam_sss.so account [default=bad success=ok user_unknown=ignore] pam_ldap.so #password sufficient pam_sss.so use_authtok password sufficient pam_ldap.so use_authtok #session optional pam_sss.so session optional pam_ldap.so
#passwd: files sss passwd: files ldap #shadow: files sss shadow: files ldap #group: files sss group: files ldap #services: files sss services: files ldap #netgroup: files sss netgroup: files ldap #automount: files sss automount: files ldap
session required pam_mkhomedir.so skel=/etc/skel/ umask=0007
sudo service nslcd restart
getent passwd
sudo apt-get install libpam-ldap libnss-ldap nss-updatedb libnss-db
sudo apt install libnss-ldapd libpam-ldapd ldap-utils
sudo dpkg-reconfigure ldap-auth-config
<はい>
ldap://123.456.789.012/
dc=tar3,dc=net
3
<はい>
<いいえ>
cn=Manager,dc=tar3,dc=net
[LDAP root account password]
<了解>
exop
# Create home directory automatically. session required pam_mkhomedir.so skel=/etc/skel/ umask=0007
passwd: files ldap group: files ldap shadow: files ldap netgroup: ldap
getent passwd
sudo visudo
systemctl restart nscd
sudo vi /etc/pam.d/common-auth
auth [success=1 default=ignore] pam_ldap.so use_first_pass
auth [success=1 default=ignore] pam_ldap.so try_first_pass
sudo vi /usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc