Archived
54 lines
2.1 KiB
Plaintext
54 lines
2.1 KiB
Plaintext
# Installation
|
|
|
|
apt-get install libldap2-dev python-dev libmysqlclient-dev libsasl2-dev libldap2-dev libssl-dev ldap-utils
|
|
virtualenv venv
|
|
. venv/bin/activate
|
|
pip install -r requirements.txt
|
|
cp userinfosite/settings-sample.py userinfosite/settings.py
|
|
python manage.py syncdb
|
|
python manage.py runserver
|
|
|
|
## LDAP
|
|
sudo docker run -e LDAP_DOMAIN=neuf.no -e LDAP_ORGANISATION="Neuf" -e LDAP_ROOTPASS="toor" -p 389:389 -d osixia/openldap
|
|
ldapadd -D "cn=admin,dc=neuf,dc=no" -w "toor" -f test/testdata.ldif
|
|
# Verify import
|
|
ldapsearch -x -b dc=neuf,dc=no
|
|
# Login with test@example.com:test
|
|
|
|
## Inside
|
|
# create the Inside database tables, if they don't exist already
|
|
python manage.py syncdb --database=inside
|
|
|
|
For simple dev you need at least:
|
|
* 1 InsideUser (din_user)
|
|
* 1 InsideGroup (din_group)
|
|
* 1 UserGroupRelationShip (din_usergrouprelationship)
|
|
|
|
## RADIUS
|
|
# create the radius database tables, if they don't exist already
|
|
python manage.py syncdb --database=radius
|
|
|
|
|
|
# External dependencies:
|
|
- LDAP: Read the tutorial on [Howto setup a LDAP server with Docker](https://edb.neuf.no/wiki/index.php?title=Howto_setup_a_LDAP_server_with_Docker)
|
|
- Kerberos: TODO
|
|
- RADIUS: TODO
|
|
- Inside: Never going away! See https://git.neuf.no/edb/inside#tab-readme for code and installation
|
|
|
|
|
|
# TODO
|
|
- Rewrite usersync.neuf.no as one or more endpoints
|
|
- Create new user in LDAP (username, first_name, last_name, email)
|
|
- add to groups (usergroup, dns-alle), it not exists, create
|
|
- Set LDAP password
|
|
- Create automount entry
|
|
- Create kerberos principal and set password
|
|
- Create homedir on wii
|
|
- Set RADIUS password
|
|
- Integrity check view which provides two way diffs for the following:
|
|
- user vs user group
|
|
- user vs kerberos principal
|
|
- user vs auto mount entry
|
|
- Add email addr alias (usernam@s.no, firstname.lastname@s.n)
|
|
- On password update, then update ldap hash on InsideUser.ldap_password
|
|
- allow non LDAP-users (conditional LDAP-stuff), because we don't want LDAP filled with non-active members |