diff options
author | Ismaël Bouya <ismael.bouya@normalesup.org> | 2023-10-04 01:35:06 +0200 |
---|---|---|
committer | Ismaël Bouya <ismael.bouya@normalesup.org> | 2023-10-04 02:11:48 +0200 |
commit | 1a64deeb894dc95e2645a75771732c6cc53a79ad (patch) | |
tree | 1b9df4838f894577a09b9b260151756272efeb53 /flakes/private/openldap | |
parent | fa25ffd4583cc362075cd5e1b4130f33306103f0 (diff) | |
download | Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.tar.gz Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.tar.zst Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.zip |
Squash changes containing private information
There were a lot of changes since the previous commit, but a lot of them
contained personnal information about users. All thos changes got
stashed into a single commit (history is kept in a different place) and
private information was moved in a separate private repository
Diffstat (limited to 'flakes/private/openldap')
-rw-r--r-- | flakes/private/openldap/flake.nix | 6 | ||||
-rw-r--r-- | flakes/private/openldap/immae.ldif | 83 | ||||
-rw-r--r-- | flakes/private/openldap/immae.schema | 179 |
3 files changed, 268 insertions, 0 deletions
diff --git a/flakes/private/openldap/flake.nix b/flakes/private/openldap/flake.nix new file mode 100644 index 0000000..130312d --- /dev/null +++ b/flakes/private/openldap/flake.nix | |||
@@ -0,0 +1,6 @@ | |||
1 | { | ||
2 | outputs = { self }: { | ||
3 | immae-schema = ./immae.schema; | ||
4 | immae-ldif = ./immae.ldif; | ||
5 | }; | ||
6 | } | ||
diff --git a/flakes/private/openldap/immae.ldif b/flakes/private/openldap/immae.ldif new file mode 100644 index 0000000..f1b4cb7 --- /dev/null +++ b/flakes/private/openldap/immae.ldif | |||
@@ -0,0 +1,83 @@ | |||
1 | # AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify. | ||
2 | # CRC32 22130f5f | ||
3 | dn: cn=immae,cn=schema,cn=config | ||
4 | objectClass: olcSchemaConfig | ||
5 | cn: immae | ||
6 | olcObjectIdentifier: {0}Immaeroot 1.3.6.1.4.1.50071 | ||
7 | olcObjectIdentifier: {1}Immae Immaeroot:2 | ||
8 | olcObjectIdentifier: {2}ImmaeattributeType Immae:3 | ||
9 | olcObjectIdentifier: {3}ImmaeobjectClass Immae:4 | ||
10 | olcAttributeTypes: {0}( ImmaeattributeType:1 NAME 'immaeTtrssLogin' DESC 'lo | ||
11 | gin for TTRSS' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch SY | ||
12 | NTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
13 | olcAttributeTypes: {1}( ImmaeattributeType:2 NAME 'immaeFtpDirectory' DESC ' | ||
14 | home directory for ftp' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466. | ||
15 | 115.121.1.26 ) | ||
16 | olcAttributeTypes: {2}( ImmaeattributeType:3 NAME 'immaeFtpUid' DESC 'user i | ||
17 | d for ftp' EQUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) | ||
18 | olcAttributeTypes: {3}( ImmaeattributeType:4 NAME 'immaeFtpGid' DESC 'group | ||
19 | id for ftp' EQUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) | ||
20 | olcAttributeTypes: {4}( ImmaeattributeType:5 NAME 'immaeSshKey' DESC 'OpenSS | ||
21 | H Public key' EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.4 | ||
22 | 0 ) | ||
23 | olcAttributeTypes: {5}( ImmaeattributeType:6 NAME 'immaeAccessDn' EQUALITY d | ||
24 | istinguishedNameMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
25 | olcAttributeTypes: {6}( ImmaeattributeType:17 NAME 'immaeAccessWriteDn' EQUA | ||
26 | LITY distinguishedNameMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
27 | olcAttributeTypes: {7}( ImmaeattributeType:18 NAME 'immaeAccessReadSubtree' | ||
28 | EQUALITY distinguishedNameMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
29 | olcAttributeTypes: {8}( ImmaeattributeType:7 NAME 'immaeXmppUid' DESC 'user | ||
30 | part for Xmpp' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch SY | ||
31 | NTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
32 | olcAttributeTypes: {9}( ImmaeattributeType:8 NAME 'immaePostfixAddress' DESC | ||
33 | 'the dovecot address to match as username' EQUALITY caseIgnoreIA5Match SUB | ||
34 | STR caseIgnoreIA5SubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} | ||
35 | ) | ||
36 | olcAttributeTypes: {10}( ImmaeattributeType:9 NAME 'immaePostfixHome' DESC ' | ||
37 | the postfix home directory' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1 | ||
38 | 466.115.121.1.26 SINGLE-VALUE ) | ||
39 | olcAttributeTypes: {11}( ImmaeattributeType:10 NAME 'immaePostfixMail' DESC | ||
40 | 'the dovecot mail location' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1 | ||
41 | 466.115.121.1.26 SINGLE-VALUE ) | ||
42 | olcAttributeTypes: {12}( ImmaeattributeType:11 NAME 'immaePostfixUid' DESC ' | ||
43 | the dovecot uid' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121 | ||
44 | .1.26 SINGLE-VALUE ) | ||
45 | olcAttributeTypes: {13}( ImmaeattributeType:12 NAME 'immaePostfixGid' DESC ' | ||
46 | the dovecot gid' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121 | ||
47 | .1.26 SINGLE-VALUE ) | ||
48 | olcAttributeTypes: {14}( ImmaeattributeType:16 NAME 'immaePuppetJson' DESC ' | ||
49 | Puppet hiera json' EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.12 | ||
50 | 1.1.40 ) | ||
51 | olcAttributeTypes: {15}( ImmaeattributeType:19 NAME 'immaeTaskId' DESC 'Task | ||
52 | warrior server Org:Name:Key' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubs | ||
53 | tringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
54 | olcAttributeTypes: {16}( ImmaeattributeType:20 NAME 'immaePeertubeId' DESC ' | ||
55 | login for Peertube' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMat | ||
56 | ch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
57 | olcObjectClasses: {0}( ImmaeobjectClass:1 NAME 'immaeTtrssClass' DESC 'Expan | ||
58 | sion of the existing object classes for ttrss' SUP top AUXILIARY MUST immae | ||
59 | TtrssLogin ) | ||
60 | olcObjectClasses: {1}( ImmaeobjectClass:2 NAME 'immaeFtpClass' DESC 'Expansi | ||
61 | on of the existing object classes for ftp' SUP top AUXILIARY MUST ( immaeFt | ||
62 | pDirectory $ immaeFtpGid $ immaeFtpUid ) ) | ||
63 | olcObjectClasses: {2}( ImmaeobjectClass:3 NAME 'immaeSshClass' DESC 'OpenSSH | ||
64 | class' SUP top AUXILIARY MAY immaeSSHKey ) | ||
65 | olcObjectClasses: {3}( ImmaeobjectClass:4 NAME 'immaeAccessClass' DESC 'Acce | ||
66 | ss class' SUP top AUXILIARY MAY ( immaeAccessDn $ immaeAccessWriteDn $ imma | ||
67 | eAccessReadSubtree ) ) | ||
68 | olcObjectClasses: {4}( ImmaeobjectClass:5 NAME 'immaeXmppClass' DESC 'Expans | ||
69 | ion of the existing object classes for XMPP' SUP top AUXILIARY MUST immaeXm | ||
70 | ppUid ) | ||
71 | olcObjectClasses: {5}( ImmaeobjectClass:6 NAME 'immaePostfixClass' DESC 'Exp | ||
72 | ansion of the existing object classes for Postfix' SUP top AUXILIARY MAY ( | ||
73 | immaePostfixHome $ immaePostfixMail $ immaePostfixUid $ immaePostfixGid ) M | ||
74 | UST ( immaePostfixAddress ) ) | ||
75 | olcObjectClasses: {6}( ImmaeobjectClass:8 NAME 'immaePuppetClass' DESC 'Expa | ||
76 | nsion of the existing object classes for Puppet' SUP top AUXILIARY MUST imm | ||
77 | aePuppetJson ) | ||
78 | olcObjectClasses: {7}( ImmaeobjectClass:9 NAME 'immaeTaskClass' DESC 'Expans | ||
79 | ion of the existing object classes for Task' SUP top AUXILIARY MUST immaeTa | ||
80 | skId ) | ||
81 | olcObjectClasses: {8}( ImmaeobjectClass:10 NAME 'immaePeertubeClass' DESC 'E | ||
82 | xpansion of the existing object classes for peertube' SUP top AUXILIARY MUS | ||
83 | T immaePeertubeId ) | ||
diff --git a/flakes/private/openldap/immae.schema b/flakes/private/openldap/immae.schema new file mode 100644 index 0000000..7b3b587 --- /dev/null +++ b/flakes/private/openldap/immae.schema | |||
@@ -0,0 +1,179 @@ | |||
1 | # vim: set filetype=slapd: | ||
2 | objectIdentifier Immaeroot 1.3.6.1.4.1.50071 | ||
3 | |||
4 | objectIdentifier Immae Immaeroot:2 | ||
5 | objectIdentifier ImmaeattributeType Immae:3 | ||
6 | objectIdentifier ImmaeobjectClass Immae:4 | ||
7 | |||
8 | # TT-RSS | ||
9 | attributetype ( ImmaeattributeType:1 NAME 'immaeTtrssLogin' | ||
10 | DESC 'login for TTRSS' | ||
11 | EQUALITY caseIgnoreMatch | ||
12 | SUBSTR caseIgnoreSubstringsMatch | ||
13 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
14 | |||
15 | objectclass ( ImmaeobjectClass:1 NAME 'immaeTtrssClass' | ||
16 | DESC 'Expansion of the existing object classes for ttrss' | ||
17 | SUP top AUXILIARY | ||
18 | MUST ( immaeTtrssLogin ) ) | ||
19 | |||
20 | # FTP | ||
21 | attributetype ( ImmaeattributeType:2 NAME 'immaeFtpDirectory' | ||
22 | DESC 'home directory for ftp' | ||
23 | EQUALITY caseExactIA5Match | ||
24 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) | ||
25 | |||
26 | attributetype ( ImmaeattributeType:3 NAME 'immaeFtpUid' | ||
27 | DESC 'user id for ftp' | ||
28 | EQUALITY integerMatch | ||
29 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) | ||
30 | |||
31 | attributetype ( ImmaeattributeType:4 NAME 'immaeFtpGid' | ||
32 | DESC 'group id for ftp' | ||
33 | EQUALITY integerMatch | ||
34 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) | ||
35 | |||
36 | objectclass ( ImmaeobjectClass:2 NAME 'immaeFtpClass' | ||
37 | DESC 'Expansion of the existing object classes for ftp' | ||
38 | SUP top AUXILIARY | ||
39 | MUST ( immaeFtpDirectory $ immaeFtpGid $ immaeFtpUid ) ) | ||
40 | |||
41 | |||
42 | # SSH keys | ||
43 | attributetype ( ImmaeattributeType:5 NAME 'immaeSshKey' | ||
44 | DESC 'OpenSSH Public key' | ||
45 | EQUALITY octetStringMatch | ||
46 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) | ||
47 | |||
48 | objectClass ( ImmaeobjectClass:3 NAME 'immaeSshClass' | ||
49 | DESC 'OpenSSH class' | ||
50 | SUP top AUXILIARY | ||
51 | MAy ( immaeSSHKey ) ) | ||
52 | |||
53 | # Specific access | ||
54 | attributetype (ImmaeattributeType:6 NAME 'immaeAccessDn' | ||
55 | EQUALITY distinguishedNameMatch | ||
56 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
57 | |||
58 | attributetype (ImmaeattributeType:17 NAME 'immaeAccessWriteDn' | ||
59 | EQUALITY distinguishedNameMatch | ||
60 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
61 | |||
62 | attributetype (ImmaeattributeType:18 NAME 'immaeAccessReadSubtree' | ||
63 | EQUALITY distinguishedNameMatch | ||
64 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) | ||
65 | |||
66 | objectClass ( ImmaeobjectClass:4 NAME 'immaeAccessClass' | ||
67 | DESC 'Access class' | ||
68 | SUP top AUXILIARY | ||
69 | MAY ( immaeAccessDn $ immaeAccessWriteDn $ immaeAccessReadSubtree ) ) | ||
70 | |||
71 | # Xmpp uid | ||
72 | attributetype ( ImmaeattributeType:7 NAME 'immaeXmppUid' | ||
73 | DESC 'user part for Xmpp' | ||
74 | EQUALITY caseIgnoreMatch | ||
75 | SUBSTR caseIgnoreSubstringsMatch | ||
76 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
77 | |||
78 | objectclass ( ImmaeobjectClass:5 NAME 'immaeXmppClass' | ||
79 | DESC 'Expansion of the existing object classes for XMPP' | ||
80 | SUP top AUXILIARY | ||
81 | MUST ( immaeXmppUid ) ) | ||
82 | |||
83 | # Postfix accounts | ||
84 | attributetype ( ImmaeattributeType:8 NAME 'immaePostfixAddress' | ||
85 | DESC 'the dovecot address to match as username' | ||
86 | EQUALITY caseIgnoreIA5Match | ||
87 | SUBSTR caseIgnoreIA5SubstringsMatch | ||
88 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} ) | ||
89 | |||
90 | attributetype ( ImmaeattributeType:9 NAME 'immaePostfixHome' | ||
91 | DESC 'the postfix home directory' | ||
92 | EQUALITY caseExactIA5Match | ||
93 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) | ||
94 | |||
95 | attributetype ( ImmaeattributeType:10 NAME 'immaePostfixMail' | ||
96 | DESC 'the dovecot mail location' | ||
97 | EQUALITY caseExactIA5Match | ||
98 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) | ||
99 | |||
100 | attributetype ( ImmaeattributeType:11 NAME 'immaePostfixUid' | ||
101 | DESC 'the dovecot uid' | ||
102 | EQUALITY caseExactIA5Match | ||
103 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) | ||
104 | |||
105 | attributetype ( ImmaeattributeType:12 NAME 'immaePostfixGid' | ||
106 | DESC 'the dovecot gid' | ||
107 | EQUALITY caseExactIA5Match | ||
108 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) | ||
109 | |||
110 | objectclass ( ImmaeobjectClass:6 NAME 'immaePostfixClass' | ||
111 | DESC 'Expansion of the existing object classes for Postfix' | ||
112 | SUP top AUXILIARY | ||
113 | MAY ( immaePostfixHome $ immaePostfixMail $ immaePostfixUid $ immaePostfixGid ) | ||
114 | MUST ( immaePostfixAddress ) | ||
115 | ) | ||
116 | |||
117 | # Tinc informations | ||
118 | # Domaine = une classe a part ou une partie du dn ? | ||
119 | # attributetype ( ImmaeattributeType:13 NAME 'immaeTincIpSegment' | ||
120 | # DESC 'the internal ip segment in tinc' | ||
121 | # EQUALITY caseIgnoreIA5Match | ||
122 | # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} ) | ||
123 | # | ||
124 | # attributetype ( ImmaeattributeType:14 NAME 'immaeTincSubdomain' | ||
125 | # DESC 'the host subdomain' | ||
126 | # EQUALITY caseIgnoreIA5Match | ||
127 | # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} ) | ||
128 | # | ||
129 | # attributetype ( ImmaeattributeType:15 NAME 'immaeTincHostname' | ||
130 | # DESC 'the host name' | ||
131 | # EQUALITY caseIgnoreIA5Match | ||
132 | # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} ) | ||
133 | # | ||
134 | # objectclass ( ImmaeobjectClass:7 NAME 'immaeTincHostClass' | ||
135 | # DESC 'Expansion of the existing object classes for Tinc' | ||
136 | # SUP top AUXILIARY | ||
137 | # MUST ( immaeTincInternalIp $ immaeTincSubdomain $ | ||
138 | # immaeTincHostname ) | ||
139 | # ) | ||
140 | |||
141 | attributetype (ImmaeattributeType:16 NAME 'immaePuppetJson' | ||
142 | DESC 'Puppet hiera json' | ||
143 | EQUALITY octetStringMatch | ||
144 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) | ||
145 | |||
146 | objectclass ( ImmaeobjectClass:8 NAME 'immaePuppetClass' | ||
147 | DESC 'Expansion of the existing object classes for Puppet' | ||
148 | SUP top AUXILIARY | ||
149 | MUST ( immaePuppetJson ) | ||
150 | ) | ||
151 | |||
152 | attributetype (ImmaeattributeType:19 NAME 'immaeTaskId' | ||
153 | DESC 'Taskwarrior server Org:Name:Key' | ||
154 | EQUALITY caseIgnoreMatch | ||
155 | SUBSTR caseIgnoreSubstringsMatch | ||
156 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
157 | |||
158 | objectclass ( ImmaeobjectClass:9 NAME 'immaeTaskClass' | ||
159 | DESC 'Expansion of the existing object classes for Task' | ||
160 | SUP top AUXILIARY | ||
161 | MUST ( immaeTaskId ) | ||
162 | ) | ||
163 | |||
164 | # Peertube uid | ||
165 | attributetype ( ImmaeattributeType:20 NAME 'immaePeertubeId' | ||
166 | DESC 'login for Peertube' | ||
167 | EQUALITY caseIgnoreMatch | ||
168 | SUBSTR caseIgnoreSubstringsMatch | ||
169 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) | ||
170 | |||
171 | objectclass ( ImmaeobjectClass:10 NAME 'immaePeertubeClass' | ||
172 | DESC 'Expansion of the existing object classes for peertube' | ||
173 | SUP top AUXILIARY | ||
174 | MUST ( immaePeertubeId ) ) | ||
175 | |||
176 | |||
177 | # Last: | ||
178 | # attributetype ( ImmaeattributeType:20 NAME 'immaePeertubeId' | ||
179 | # objectclass ( ImmaeobjectClass:10 NAME 'immaePeertubeClass' | ||