Linux Januar 2012/Add users
Purpose
When adding students on a Linux/UNIX box its desirable to let the students choice their own login names.
How to add student logins
Make a username and password public to the students. When the students login they are prompted for desired loginname/password
Adding the create-students account
Add user ny with password ny or whatever username/password you prefer to make public to the students. remember to change all references in the following to the username you choice.
File: /home/ny/.profile
Add the following line to the start of /home/ny/.profile
trap '' 1 2 3 15
Add the following two lines to the end of /home/ny/.profile
/home/ny/bin/nybruger
exit
File: /etc/sudoers
Add the following line to /etc/sudoers using visudo.
ny ALL = NOPASSWD: /usr/sbin/adduser [a-zA-Z0-9]*
- Remark
- This line should be commented out when the students have added them selves.
File: /home/ny/bin/nybruger
Create the /home/ny/bin directory and add the file /home/ny/bin/nybruger with the following content. (Remember to change mode to executable)
#!/bin/bash
tput clear
echo -e " Tilføj bruger"
echo -e " ============="
echo -e "\n\n\nIndtast dit ønskede bruger login. Et ord indeholdene bogstaver eller/og tal."
echo -en "\nBruger login: "
read LOGIN
sudo /usr/sbin/adduser $LOGIN
if grep $LOGIN /etc/passwd
then
COUNT=5
while test "$COUNT" -gt 0
do
echo -en "\r Bruger $LOGIN oprettet. Sessionen afsluttes om $COUNT sekunder"
let COUNT=COUNT-1
sleep 1
done
else
COUNT=5
while test "$COUNT" -gt 0
do
echo -en "\r FEJL: Bruger $LOGIN er IKKE oprettet. Sessionen afsluttes om $COUNT sekunder"
let COUNT=COUNT-1
sleep 1
done
fi
exit
Security
Change all files to root ownership so the students cant change the script catching other students passwords etc.
chown root:root /home/ny
chown root:root /home/ny/.profile
chown root:root /home/ny/bin
chown root:root /home/ny/bin/nybruger