Solaris 10 “zconsole” (zlogin -C workaround)

Ambiente: Solaris 10, Global Zone (GZ) e Local Zone (LZ)

Problema: voglio delegare l’uso della console all’utente amministratore di un Solaris Containers (Solaris Local Zone), ma non voglio dargli l’accesso come utente root alla Global Zone.

In altri ambienti questa necessità viene prevista “nativamente”(HP-UX, VM host provide VM Console). A questo link un mio post dal titolo “Provide Access to Solaris Containers/Zones Consoles (zlogin -C)” con alcune risposte.

Possibile soluzione: tutte le operazioni vanno eseguire come utente “root” o ruolo identico:

1) Creo un utente con “ruolo” e “diritti” ristretti(jailed) che può solamente eseguire il comando “zlogin -C -e $ <nomezona>”, dove nomezona varia a seconda della LZ. Con questo utente posso collegarmi a tutte le console delle LZs, delegando l’autenticazione alla zona alla coppia username/password dell’utente root della LZ.

2) Variante: se voglio che l’utente amministratore si possa collegare SOLO alla console della propria LZ, dovrò creare un utente “zconsole” per ogni LZ amministrata(in pratica devo “fissare” la variabile <nomezona> con la zona interessata).

# groupadd -g 111 zconsole
# cat /sbin/pfzconsole
#!/usr/bin/bash
echo " Please enter LZ name:"
read zone
echo " Type \"\$.\" for exit from console"
/usr/bin/pfexec /usr/sbin/zlogin -C -e \$ $zone
# chmod +x /sbin/pfzconsole
# useradd -u 1111 -g zconsole -c "Zones Console login user" -d /export/home/zconsole \
-s /sbin/pfzconsole -m zconsole
# chmod 700 /sbin/pfzconsole
# chown zconsole:zconsole /sbin/pfzconsole
# passwd zconsole
# printf "zconsole::::type=normal;profiles=Zone Management;auths=solaris\n" >> /etc/user_attr

Esempio di output

# ssh zconsole@globalzone
Password:
Last login: Wed Mar 23 16:12:47 2011 from globalzone
Enter LZ name:
localzone-z1
Type “$.” to exit from console
[Connected to zone 'localzone-z1' console]

localzone-z1 console login:
localzone-z1 console login: root
Password:
Mar 27 16:42:31 localzone-z1 login: ROOT LOGIN /dev/console
Last login: Fri Mar 25 12:10:20 from XXX.XXX.XXX.XXX
Oracle Corporation      SunOS 5.10      Generic Patch   January 2005
Sourcing //.profile-EIS…..

TERM=vt100

root@localzone-z1 # exit

localzone-z1 console login: $.
[Connection to zone 'localzone-z1' console closed]
Connection to globalzone closed.
#

Postate altri suggerimenti se avete altre idee… 8-)

Etichette: ,

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s


Follow

Get every new post delivered to your Inbox.