1 |
# $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_auth.sh,v 1.1 2005-04-13 16:09:25 niro Exp $ |
# $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_auth.sh,v 1.7 2005-10-09 21:28:28 niro Exp $ |
2 |
# configures the system authentification via mysql db settings |
# configures the system authentification via mysql db settings |
3 |
|
|
4 |
get_auth_settings() |
get_auth_settings() |
5 |
{ |
{ |
6 |
local x i all count |
local x i all count |
7 |
|
|
8 |
#all arrays: |
# get settings from database |
9 |
# -> session1 session2 ... sessionN |
ALX_AUTH_SHELL_PW=$(mysqldo "select shell from client_auth where serial='${ALX_SERIAL}'") |
10 |
|
ALX_AUTH_VNC_PW=$(mysqldo "select vnc from client_auth where serial='${ALX_SERIAL}'") |
11 |
#get settings from database |
ALX_AUTH_SAMBA_PW=$(mysqldo "select samba from client_auth where serial='${ALX_SERIAL}'") |
12 |
ALX_AUTH_SHELL_PW=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ |
ALX_AUTH_STATION_PW=$(mysqldo "select station from client_auth where serial='${ALX_SERIAL}'") |
|
"select shell from client_auth where serial='${ALX_SERIAL}'") |
|
|
ALX_AUTH_VNC_PW=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ |
|
|
"select vnc from client_auth where serial='${ALX_SERIAL}'") |
|
|
ALX_AUTH_SAMBA_PW=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ |
|
|
"select samba from client_auth where serial='${ALX_SERIAL}'") |
|
|
ALX_AUTH_STATION_PW=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ |
|
|
"select station from client_auth where serial='${ALX_SERIAL}'") |
|
13 |
|
|
14 |
export ALX_AUTH_SHELL_PW |
export ALX_AUTH_SHELL_PW |
15 |
export ALX_AUTH_VNC_PW |
export ALX_AUTH_VNC_PW |
19 |
|
|
20 |
config_auth() |
config_auth() |
21 |
{ |
{ |
22 |
#first of all get the vars |
# first of all get the vars |
23 |
get_auth_settings |
get_auth_settings |
24 |
|
|
25 |
[ -n "${ALX_AUTH_SHELL_PW}" ] && \ |
[ -n "${ALX_AUTH_SHELL_PW}" ] && \ |
26 |
usermod -p $(perl -e "printf(crypt("${ALX_AUTH_SHELL_PW}","AD"))") root |
usermod -p $(openssl passwd -1 ${ALX_AUTH_SHELL_PW}) root |
27 |
|
|
28 |
[ -n "${ALX_AUTH_STATION_PW}" ] && \ |
[ -n "${ALX_AUTH_STATION_PW}" ] && \ |
29 |
usermod -p $(perl -e "printf(crypt("${ALX_AUTH_SHELL_PW}","AD"))") ${ALX_UNPRIV_USER} |
usermod -p $(openssl passwd -1 ${ALX_AUTH_SHELL_PW}) ${ALX_UNPRIV_USER} |
30 |
|
|
31 |
[ -n "${ALX_AUTH_SAMBA_PW}" ] && \ |
if [ -n "${ALX_AUTH_SAMBA_PW}" ] |
32 |
smbpasswd -a root ${ALX_AUTH_SAMBA_PW} |
then |
33 |
|
# >smb3 smbpasswd -a user password does not work anymore |
34 |
|
if [[ $(smbd --version | cut -d' ' -f2) > 2.999 ]] |
35 |
|
then |
36 |
|
smbpasswd -a root -s << EOF |
37 |
|
${ALX_AUTH_SAMBA_PW} |
38 |
|
${ALX_AUTH_SAMBA_PW} |
39 |
|
EOF |
40 |
|
else |
41 |
|
smbpasswd -a root ${ALX_AUTH_SAMBA_PW} |
42 |
|
fi |
43 |
|
fi |
44 |
|
|
45 |
|
# vnc passwd (min 6 chars) |
46 |
|
if [ -n "${ALX_AUTH_VNC_PW}" ] |
47 |
|
then |
48 |
|
# pipe it 2x; 1st for new pw, 2nd to validate |
49 |
|
HOME=/root vncpasswd &> /dev/null << EOF |
50 |
|
${ALX_AUTH_VNC_PW} |
51 |
|
${ALX_AUTH_VNC_PW} |
52 |
|
EOF |
53 |
|
fi |
54 |
|
|
55 |
# unset vars |
# unset vars |
56 |
unset ALX_AUTH_SHELL_PW |
unset ALX_AUTH_SHELL_PW |