{"id":2043,"date":"2024-01-23T16:37:14","date_gmt":"2024-01-23T07:37:14","guid":{"rendered":"https:\/\/www.kwonline.org\/memo2\/?p=2043"},"modified":"2024-10-06T16:04:23","modified_gmt":"2024-10-06T07:04:23","slug":"run-openldap-container-on-docker","status":"publish","type":"post","link":"https:\/\/www.kwonline.org\/memo2\/2024\/01\/23\/run-openldap-container-on-docker\/","title":{"rendered":"Docker \u3067 LDAP \u30b5\u30fc\u30d0\u30fc\u3092\u69cb\u7bc9\u3059\u308b"},"content":{"rendered":"<p>&nbsp;<br \/>\nWSL \u4e0a\u3067\u7d20\u65e9\u304f LDAP \u306e\u30c6\u30b9\u30c8\u3092\u3059\u308b\u5fc5\u8981\u304c\u3042\u3063\u305f\u306e\u3067\u30e1\u30e2\u3002<\/p>\n<p><a href=\"https:\/\/github.com\/osixia\/docker-openldap\" rel=\"noopener\" target=\"_blank\">osixia\/openldap<\/a> \u306e\u30b3\u30f3\u30c6\u30ca\u3092\u4f7f\u3046\u3002<\/p>\n<p>\u307e\u305a\u306f ldap-utils \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3002<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nsudo apt install ldap-utils\r\n<\/pre>\n<p>\u305d\u308c\u304b\u3089 Docker container \u3092\u8d77\u52d5<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ndocker run --name my-openldap-container -p 389:389 -p 636:636 --env LDAP_ORGANISATION=&quot;My Org&quot; --env LDAP_DOMAIN=&quot;mydomain.com&quot; --env LDAP_ADMIN_PASSWORD=&quot;admin&quot; -d osixia\/openldap:latest\r\n<\/pre>\n<p>\u8d77\u52d5\u3057\u305f\u3089 ldapsearch \u3067\u52d5\u4f5c\u78ba\u8a8d<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nldapsearch -x -H ldap:\/\/localhost -b &quot;dc=mydomain,dc=com&quot; -D &quot;cn=admin,dc=mydomain,dc=com&quot; -w admin\r\n<\/pre>\n<p>\u7d50\u679c\u304c\u5e30\u3063\u3066\u304f\u308c\u3070OK.<\/p>\n<p>\u8a66\u3057\u306b\u30a8\u30f3\u30c8\u30ea\u30fc\u3092\u8ffd\u52a0\u3002<br \/>\n\u3053\u3093\u306a all.ldif \u30d5\u30a1\u30a4\u30eb\u3092\u7528\u610f\u3057\u305f\u3002<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n# Adding organizational units for users and groups\r\ndn: ou=People,dc=mydomain,dc=com\r\nobjectClass: organizationalUnit\r\nou: People\r\n\r\ndn: ou=Groups,dc=mydomain,dc=com\r\nobjectClass: organizationalUnit\r\nou: Groups\r\n\r\n# Adding user1\r\ndn: uid=user1,ou=People,dc=mydomain,dc=com\r\nobjectClass: inetOrgPerson\r\nobjectClass: posixAccount\r\nobjectClass: top\r\ncn: User One\r\nsn: One\r\nuid: user1\r\nuidNumber: 1001\r\ngidNumber: 1001\r\nhomeDirectory: \/home\/user1\r\nloginShell: \/bin\/bash\r\nuserPassword: user1\r\ngecos: User One\r\n\r\n# Adding user2\r\ndn: uid=user2,ou=People,dc=mydomain,dc=com\r\nobjectClass: inetOrgPerson\r\nobjectClass: posixAccount\r\nobjectClass: top\r\ncn: User Two\r\nsn: Two\r\nuid: user2\r\nuidNumber: 1002\r\ngidNumber: 1002\r\nhomeDirectory: \/home\/user2\r\nloginShell: \/bin\/bash\r\nuserPassword: user2\r\ngecos: User Two\r\n\r\n# Adding group1 with user1 and user2\r\ndn: cn=group1,ou=Groups,dc=mydomain,dc=com\r\nobjectClass: posixGroup\r\ncn: group1\r\ngidNumber: 1001\r\nmemberUid: user1\r\nmemberUid: user2\r\n\r\n# Adding group2 (empty group for now)\r\ndn: cn=group2,ou=Groups,dc=mydomain,dc=com\r\nobjectClass: posixGroup\r\ncn: group2\r\ngidNumber: 1002\r\n<\/pre>\n<p>\u305d\u3057\u305f\u3089 ldapadd \u3067\u8ffd\u52a0\u3059\u308b\u3002<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nldapadd -x -D &quot;cn=admin,dc=mydomain,dc=com&quot; -w admin -f all.ldif -H ldap:\/\/localhost\r\n<\/pre>\n<p>\u305d\u3057\u3066 ldapsearch \u3067\u7d50\u679c\u304c\u5e30\u3063\u3066\u304f\u308c\u3070 OK.<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nldapsearch -x -H ldap:\/\/localhost -D &quot;cn=admin,dc=mydomain,dc=com&quot; -w admin -b &quot;dc=mydomain,dc=com&quot; &quot;(uid=user1)&quot;\r\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; WSL \u4e0a\u3067\u7d20\u65e9\u304f LDAP \u306e\u30c6\u30b9\u30c8\u3092\u3059\u308b\u5fc5\u8981\u304c\u3042\u3063\u305f\u306e\u3067\u30e1\u30e2\u3002 osixia\/openldap \u306e\u30b3\u30f3\u30c6\u30ca\u3092\u4f7f\u3046\u3002 \u307e\u305a\u306f ldap-utils \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3002 sudo apt install  [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31,8,30],"tags":[],"class_list":["post-2043","post","type-post","status-publish","format-standard","hentry","category-docker","category-linux","category-wsl"],"_links":{"self":[{"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/posts\/2043","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/comments?post=2043"}],"version-history":[{"count":8,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/posts\/2043\/revisions"}],"predecessor-version":[{"id":2203,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/posts\/2043\/revisions\/2203"}],"wp:attachment":[{"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/media?parent=2043"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/categories?post=2043"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kwonline.org\/memo2\/wp-json\/wp\/v2\/tags?post=2043"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}