Linux User erstellen mit Mysql & BASH

Hallo

Für alle die mal per Bash & Mysql User erstellen wollen hier ne kleine Stütze 😀

Die Felder username und passwort werden gelesen und anschließend wird damit ein user erzeugt. Danach setzte ich das passwort in der Datenbank zurück (ursprünglich gedacht um Benutzter für Quotas/FTP einzurichten :D)

Dann das ganze noch mit einem 5 min Cronjob versehen und fertig

#!/bin/bash

db_user=USER
db_pw=PW
db_db=DATENBANK
table=TABELLE

i=0

dbase=`mysql -u$db_user -p$db_pw -e "use $db_db; SELECT username,passwort FROM $table WHERE passwort!='';"`
for data in $dbase ;
	do
		let i=$i+1
		let mod=$i%2

		if [ $mod -eq 0 ]; then
			password=$data
		fi
		if [ $mod -eq 1 ]; then
			user=$data
		fi
		if [ $mod -eq 0 ]; then
			if [ $i -gt 2 ]; then
				echo Creating:$user

				useradd -s /bin/false -p $password -d /home/$user $user
				mysql -u$db_user -p$db_pw -e "use $db_db; UPDATE $table SET passwort_ftp=null WHERE username='$user';"
			fi
		fi
	done

Published by

KB

I'm a student at TUM in Computer Science & Pizza eating. Passionate for SRE, beautiful Code and Club Mate.

Leave a Reply