Difference between revisions of "Proxmox"

From A-Eskwiki
Jump to: navigation, search
Line 10: Line 10:
  
 
Vervolgens moeten alle gebruikers die toegang mogen krijgen toegevoegd worden onder Datacenter > Permissions > Users.
 
Vervolgens moeten alle gebruikers die toegang mogen krijgen toegevoegd worden onder Datacenter > Permissions > Users.
 +
 +
Een pythonscript om dit automatisch te doen is door
 +
 +
import subprocess
 +
import re
 +
result = subprocess.run(["ipa","group-show","--raw","sysop"],
 +
                        stdout=subprocess.PIPE)
 +
lines = result.stdout.decode('utf-8').splitlines()
 +
usernames = []
 +
for line in lines:
 +
    line = line.strip()
 +
    m = re.search('\Amember: uid=',line)
 +
    m2 = re.search(',',line)
 +
    if m and m2:
 +
        usernames.append(line[m.end():m2.start()])
 +
commandstring = ""
 +
for uname in usernames:
 +
    commandstring += "pveum useradd "+uname+"@A-ESKWADRAAT.nl -group admin;"
 +
subprocess.run(["ssh","root@<host>",commandstring])

Revision as of 20:53, 21 January 2020

Op haskell staat Proxmox.

Integratie met ipa: ga naar Datacenter > Permissions > Authentication en klik 'Add > LDAP Server', hier kunnen de gegevens van de ipaserver ingevoerd worden.

Bijvoorbeeld:

proxmox ipa voorbeeld

Vervolgens moeten alle gebruikers die toegang mogen krijgen toegevoegd worden onder Datacenter > Permissions > Users.

Een pythonscript om dit automatisch te doen is door

import subprocess
import re
result = subprocess.run(["ipa","group-show","--raw","sysop"],
                        stdout=subprocess.PIPE)
lines = result.stdout.decode('utf-8').splitlines()
usernames = []
for line in lines:
    line = line.strip()
    m = re.search('\Amember: uid=',line)
    m2 = re.search(',',line)
    if m and m2:
        usernames.append(line[m.end():m2.start()])
commandstring = ""
for uname in usernames:
    commandstring += "pveum useradd "+uname+"@A-ESKWADRAAT.nl -group admin;"
subprocess.run(["ssh","root@<host>",commandstring])