LDAP

Install OpenLDAP on Ubuntu 20.04 without domain name in hostname

2021年10月30日

Overview

Ubuntu 20.04 に OpenLDAP をインストールする場合に hostname に domain name が設定されていない場合の動作を確認する。

Environment

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.3 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
$
$ hostname
ldap <---- no domain name
$

Install OpenLDAP

$ sudo apt -y install slapd ldap-utils
[sudo] password for hyamazak:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libodbc1
Suggested packages:
  libsasl2-modules-gssapi-mit | libsasl2-modules-gssapi-heimdal libmyodbc odbc-postgresql tdsodbc
  unixodbc-bin
The following NEW packages will be installed:
  ldap-utils libodbc1 slapd
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,708 kB of archives.
After this operation, 17.7 MB of additional disk space will be used.
Get:1 http://ftp.riken.jp/Linux/ubuntu focal/main amd64 libodbc1 amd64 2.3.6-0.1build1 [189 kB]
Get:2 http://ftp.riken.jp/Linux/ubuntu focal-updates/main amd64 slapd amd64 2.4.49+dfsg-2ubuntu1.8 [1,397 kB]
Get:3 http://ftp.riken.jp/Linux/ubuntu focal-updates/main amd64 ldap-utils amd64 2.4.49+dfsg-2ubuntu1.8 [122 kB]
Fetched 1,708 kB in 1s (3,185 kB/s)
Preconfiguring packages ...
Selecting previously unselected package libodbc1:amd64.
(Reading database ... 71533 files and directories currently installed.)
Preparing to unpack .../libodbc1_2.3.6-0.1build1_amd64.deb ...
Unpacking libodbc1:amd64 (2.3.6-0.1build1) ...
Selecting previously unselected package slapd.
Preparing to unpack .../slapd_2.4.49+dfsg-2ubuntu1.8_amd64.deb ...
Unpacking slapd (2.4.49+dfsg-2ubuntu1.8) ...
Selecting previously unselected package ldap-utils.
Preparing to unpack .../ldap-utils_2.4.49+dfsg-2ubuntu1.8_amd64.deb ...
Unpacking ldap-utils (2.4.49+dfsg-2ubuntu1.8) ...
Setting up ldap-utils (2.4.49+dfsg-2ubuntu1.8) ...
Setting up libodbc1:amd64 (2.3.6-0.1build1) ...
Setting up slapd (2.4.49+dfsg-2ubuntu1.8) ...
  Creating new user openldap... done.
  Creating initial configuration... done.
  Creating LDAP directory... done.
Processing triggers for ufw (0.36-6) ...
Processing triggers for systemd (245.4-4ubuntu3.13) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
$
$ sudo slapcat
dn: dc=nodomain
objectClass: top
objectClass: dcObject
objectClass: organization
o: nodomain
dc: nodomain
structuralObjectClass: organization
entryUUID: e43449c6-cd82-103b-9bf0-436d8fa57c8a
creatorsName: cn=admin,dc=nodomain
createTimestamp: 20211030040915Z
entryCSN: 20211030040915.900290Z#000000#000#000000
modifiersName: cn=admin,dc=nodomain
modifyTimestamp: 20211030040915Z

dn: cn=admin,dc=nodomain
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword:: e1NTSEF9TFRrMWMxVVIxMXRYaWYyQ3pCd3VseHhYMlJhNWdyUkE=
structuralObjectClass: organizationalRole
entryUUID: e438e684-cd82-103b-9bf1-436d8fa57c8a
creatorsName: cn=admin,dc=nodomain
createTimestamp: 20211030040915Z
entryCSN: 20211030040915.930548Z#000000#000#000000
modifiersName: cn=admin,dc=nodomain
modifyTimestamp: 20211030040915Z

$

LDAP Base Configuration

$ cat base.ldif
dn: ou=people,dc=travelersmedia,dc=jp
objectClass: organizationalUnit
ou: people

dn: ou=groups,dc=travelersmedia,dc=jp
objectClass: organizationalUnit
ou: groups 
$
$ sudo ldapadd -x -D cn=admin,dc=travelersmedia,dc=jp -W -f base.ldif
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
$

hostname with domain name

$ hostname
ldap.travelersmedia.jp
$
$ sudo apt -y install slapd ldap-utils
$
$ sudo slapcat
dn: dc=travelersmedia,dc=jp
objectClass: top
objectClass: dcObject
objectClass: organization
o: travelersmedia.jp
dc: travelersmedia
structuralObjectClass: organization
entryUUID: 282d5bc8-cd82-103b-856a-f130edbc159c
creatorsName: cn=admin,dc=travelersmedia,dc=jp
createTimestamp: 20211030040400Z
entryCSN: 20211030040400.443219Z#000000#000#000000
modifiersName: cn=admin,dc=travelersmedia,dc=jp
modifyTimestamp: 20211030040400Z

dn: cn=admin,dc=travelersmedia,dc=jp
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword:: e1NTSEF9UkhEb1NhTHVlOVRpbm41YlAwZDNkM2xZbVJVVEI1WlQ=
structuralObjectClass: organizationalRole
entryUUID: 28338d04-cd82-103b-856b-f130edbc159c
creatorsName: cn=admin,dc=travelersmedia,dc=jp
createTimestamp: 20211030040400Z
entryCSN: 20211030040400.483816Z#000000#000#000000
modifiersName: cn=admin,dc=travelersmedia,dc=jp
modifyTimestamp: 20211030040400Z

$
$ sudo ldapadd -x -D cn=admin,dc=travelersmedia,dc=jp -W -f base.ldif
Enter LDAP Password:
adding new entry "ou=people,dc=travelersmedia,dc=jp"

adding new entry "ou=groups,dc=travelersmedia,dc=jp"

$