Revision history for MikeShultz
Additions:
IRC: mikeshultz
=====Working On=====
- Registry App
- LDAP dev setup
=====Working On=====
- Registry App
- LDAP dev setup
Deletions:
====Test LDAP Setup====
These instructions are to setup the OpenNIC object schemas in slapd. This will only work on systems that use the cn=config type of configuration(not slapd.conf). It has been tested on Debian 8.
===1) Install OpenLDAP(slapd)===
Follow documentation for your specific distribution to install slapd.
Copy the provided ##courier.schema## and ##dnsdomain2.schema## to ##/etc/ldap/schema/##. Start slapd afterwards. New object schemas should now be available but the config has to be regenerated.
==Debian==
If you are not prompted for initial configuration, you can reconfigure the package with the following command.
%%(Bash)
dpkg-reconfigure slapd
%%
**NOTE**: Initial configuration must be set with a baseDN of ##dc=opennic,dc=glue##.
===2) Test Connection and Base Schema===
If everything has been setup correctly, the following should work. You will be prompted for the administrator password.
%%(Bash)
ldapsearch -h localhost -D "cn=admin,dc=opennic,dc=glue" -W -b "dc=opennic,dc=glue" -s "base" "(objectclass=*)"
%%
===3) Create dnsschema.conf===
Create ##/tmp/dnsschema.conf## with the schemas you would like to use. As an example:
%%(text)
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/dnsdomain2.schema
%%
===4) Create Temp Config Directory===
Create a directory to create the new LDAP configuration.
%%(Bash)
mkdir /tmp/dnsschema.d
%%
===5) Generate Temporary Config===
Populate the test directory with a base config.
%%(Bash)
slaptest -f /tmp/dnsschema.conf -F /tmp/dnsschema.d/
%%
===6) Verify Config===
Check and make sure the ##/tmp/dnsschema.d/## directory has ##cn=config##, which should suggest that the config has been created successfully.
===7) Make Necessary Changes to LDIFs===
Edit the new ##dnsdomain2.ldif##(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
%%(text)
dn: cn=dnsdomain2,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: dnsdomain2
%%
Edit ##courier.ldif## in a similar fashion to look something like this.
%%(text)
dn: cn=courier,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: courier
%%
For both files, remove everything below the last olcObjectClasses entry as it is superfluous and possibly conflicting.
===8) Merge New Schema===
Now, we need to merge the new object schemas into the config.
%%
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{3\}courier.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{5\}dnsdomain2.ldif
%%
If all goes well, you should see output along the lines of:
%%(text)
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=dnsdomain2,cn=schema,cn=config"
%%
===9) Add Test Data===
%%(Bash)
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f opennic_glue.ldif
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f test_zone.ldif
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f users.ldif
%%
A complete test environment should now be setup and ready to go.
Additions:
===7) Make Necessary Changes to LDIFs===
Edit ##courier.ldif## in a similar fashion to look something like this.
dn: cn=courier,cn=schema,cn=config
cn: courier
For both files, remove everything below the last olcObjectClasses entry as it is superfluous and possibly conflicting.
Edit ##courier.ldif## in a similar fashion to look something like this.
dn: cn=courier,cn=schema,cn=config
cn: courier
For both files, remove everything below the last olcObjectClasses entry as it is superfluous and possibly conflicting.
Deletions:
Also, remove everything below the last olcObjectClasses entry.
Additions:
Copy the provided ##courier.schema## and ##dnsdomain2.schema## to ##/etc/ldap/schema/##. Start slapd afterwards. New object schemas should now be available but the config has to be regenerated.
**NOTE**: Initial configuration must be set with a baseDN of ##dc=opennic,dc=glue##.
**NOTE**: Initial configuration must be set with a baseDN of ##dc=opennic,dc=glue##.
Deletions:
Additions:
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f users.ldif
A complete test environment should now be setup and ready to go.
A complete test environment should now be setup and ready to go.
Deletions:
ldapadd?
**TO BE CONTINUED...**
Revision [3597]
Edited on 2015-06-06 15:08:48 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
Now, we need to merge the new object schemas into the config.
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{3\}courier.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{3\}courier.ldif
Deletions:
Now, we need to merge the new object schema into the config.
Revision [3596]
Edited on 2015-06-06 14:19:43 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f opennic_glue.ldif
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f test_zone.ldif
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f users.ldif # it appears I'm missing a schema for this one... investigating.
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f test_zone.ldif
ldapadd -D "cn=admin,dc=opennic,dc=glue" -W -x -f users.ldif # it appears I'm missing a schema for this one... investigating.
Revision [3595]
Edited on 2015-06-05 01:54:54 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
===9) Add Test Data===
ldapadd?
**TO BE CONTINUED...**
ldapadd?
**TO BE CONTINUED...**
Deletions:
This setup is to create a rootdn just for OpenNIC and ignoring trying to integrate it into an existing LDAP database.
===3) Apply Test Data===
asdf
Revision [3594]
Edited on 2015-06-05 01:37:54 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
===3) Create dnsschema.conf===
===4) Create Temp Config Directory===
===5) Generate Temporary Config===
===6) Verify Config===
===7) Make Necessary Changes to LDIF===
===8) Merge New Schema===
===4) Create Temp Config Directory===
===5) Generate Temporary Config===
===6) Verify Config===
===7) Make Necessary Changes to LDIF===
===8) Merge New Schema===
Deletions:
Add the provided ##dnsdomain2.schema## to slapd.conf with an include line.
echo "include /etc/ldap/schema/dnsdomain2.schema" >> /tmp/fuck
===2) Create dnsschema.conf===
===3) Create Temp Config Directory===
===4) Generate Temporary Config===
===5) Verify Config===
===6) Make Necessary Changes to LDIF===
===7) Merge New Schema===
Revision [3593]
Edited on 2015-06-05 01:32:14 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
===2) Test Connection and Base Schema===
If everything has been setup correctly, the following should work. You will be prompted for the administrator password.
ldapsearch -h localhost -D "cn=admin,dc=opennic,dc=glue" -W -b "dc=opennic,dc=glue" -s "base" "(objectclass=*)"
===3) Apply Test Data===
If everything has been setup correctly, the following should work. You will be prompted for the administrator password.
ldapsearch -h localhost -D "cn=admin,dc=opennic,dc=glue" -W -b "dc=opennic,dc=glue" -s "base" "(objectclass=*)"
===3) Apply Test Data===
Deletions:
Revision [3592]
Edited on 2015-06-05 01:28:03 by MikeShultz [remove misc.schema and added courier.ldif]Additions:
===2) Apply Test Data===
Deletions:
===3) Apply Test Data===
Additions:
====Alternate Test LDAP Setup====
This setup is to create a rootdn just for OpenNIC and ignoring trying to integrate it into an existing LDAP database.
===1) Install OpenLDAP(slapd)===
Follow documentation for your specific distribution to install slapd.
==Debian==
If you are not prompted for initial configuration, you can reconfigure the package with the following command.
dpkg-reconfigure slapd
===2) Add Schema to Install===
Copy the provided ##dnsdomain2.schema## to ##/etc/ldap/schema/##. Start slapd afterwards. New object schemas should now be available.
===3) Apply Test Data===
asdf
This setup is to create a rootdn just for OpenNIC and ignoring trying to integrate it into an existing LDAP database.
===1) Install OpenLDAP(slapd)===
Follow documentation for your specific distribution to install slapd.
==Debian==
If you are not prompted for initial configuration, you can reconfigure the package with the following command.
dpkg-reconfigure slapd
===2) Add Schema to Install===
Copy the provided ##dnsdomain2.schema## to ##/etc/ldap/schema/##. Start slapd afterwards. New object schemas should now be available.
===3) Apply Test Data===
asdf
Deletions:
additional info: olcAttributeTypes: Duplicate attributeType: "1.3.6.1.4.1.2428.20.0.0"
Additions:
===1) Add Schema to Config===
Add the provided ##dnsdomain2.schema## to slapd.conf with an include line.
echo "include /etc/ldap/schema/dnsdomain2.schema" >> /tmp/fuck
===2) Create dnsschema.conf===
Create ##/tmp/dnsschema.conf## with the schemas you would like to use. As an example:
===3) Create Temp Config Directory===
Create a directory to create the new LDAP configuration.
===4) Generate Temporary Config===
===5) Verify Config===
===6) Make Necessary Changes to LDIF===
Edit the new ##dnsdomain2.ldif##(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
===7) Merge New Schema===
Add the provided ##dnsdomain2.schema## to slapd.conf with an include line.
echo "include /etc/ldap/schema/dnsdomain2.schema" >> /tmp/fuck
===2) Create dnsschema.conf===
Create ##/tmp/dnsschema.conf## with the schemas you would like to use. As an example:
===3) Create Temp Config Directory===
Create a directory to create the new LDAP configuration.
===4) Generate Temporary Config===
===5) Verify Config===
===6) Make Necessary Changes to LDIF===
Edit the new ##dnsdomain2.ldif##(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
===7) Merge New Schema===
Deletions:
Create a directory to create the new ldap configuration.
Edit the new dnsdomain2.ldif(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
Revision [3588]
Edited on 2015-06-04 12:00:26 by MikeShultz [full instructions on setting up OpenNIC objects]Additions:
These instructions are to setup the OpenNIC object schemas in slapd. This will only work on systems that use the cn=config type of configuration(not slapd.conf). It has been tested on Debian 8.
Create a directory to create the new ldap configuration.
%%(Bash)
mkdir /tmp/dnsschema.d
Populate the test directory with a base config.
%%(Bash)
slaptest -f /tmp/dnsschema.conf -F /tmp/dnsschema.d/
Check and make sure the ##/tmp/dnsschema.d/## directory has ##cn=config##, which should suggest that the config has been created successfully.
Edit the new dnsdomain2.ldif(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
dn: cn=dnsdomain2,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: dnsdomain2
Also, remove everything below the last olcObjectClasses entry.
Now, we need to merge the new object schema into the config.
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{5\}dnsdomain2.ldif
If all goes well, you should see output along the lines of:
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=dnsdomain2,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
additional info: olcAttributeTypes: Duplicate attributeType: "1.3.6.1.4.1.2428.20.0.0"
Create a directory to create the new ldap configuration.
%%(Bash)
mkdir /tmp/dnsschema.d
Populate the test directory with a base config.
%%(Bash)
slaptest -f /tmp/dnsschema.conf -F /tmp/dnsschema.d/
Check and make sure the ##/tmp/dnsschema.d/## directory has ##cn=config##, which should suggest that the config has been created successfully.
Edit the new dnsdomain2.ldif(should be at ##/tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{*\}dnsdomain2.ldif##) in the temporary config. Change the first few lines so it looks something like the following:
dn: cn=dnsdomain2,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: dnsdomain2
Also, remove everything below the last olcObjectClasses entry.
Now, we need to merge the new object schema into the config.
ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/dnsschema.d/cn\=config/cn\=schema/cn\=\{5\}dnsdomain2.ldif
If all goes well, you should see output along the lines of:
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=dnsdomain2,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
additional info: olcAttributeTypes: Duplicate attributeType: "1.3.6.1.4.1.2428.20.0.0"