Implantación de Ubuntu Linux en la Escuela - Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT

 
SEGUIR LEYENDO
Implantación de Ubuntu Linux en la Escuela - Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT
Elkarnet

Implantación de Ubuntu Linux en la Escuela

 Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT

                         Versión: 1.0

                                                                  Autor:
                                                 Alfredo Barrainkua Zallo

                                                                     Fecha:
                                                       15 de Junio del 2007

                                                                Lizentzia:
                                                            CC-BY-NC-SA

                                        Lizentzia laburpena: English Castellano
Implantación de Ubuntu Linux en la Escuela - Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT
Elkarnet

Índice de contenidos
1. Introducción................................................................................................ .....................3
2. Primera instalación................................................................................................. ..........3
3. La hora, la hora, la hora!.......................................................................... ........................5
4. root y SSH.............................................................................................................. ..........6
5. Servidores NFS y NIS...................................................................................... ................7
6. Clientes NFS y NIS............................................................................................ ..............8
7. Cliente de Active Directory................................................................................ ..............9
8. Cliente de OpenLDAP..................................................................................................... .13
9. Algunos cambios en el fichero /etc/fstab........................................................ ..................15
10. Proxy de repositorio de paquetes.......................................................................... ..........16
11. Ubuntu y Windows........................................................................................... .............16
12. Joyas.......................................................................................................................... ....17
    12.1. Buscadores de Firefox............................................................................. ..............17
    12.2. Diferentes tipografías........................................................................ ....................17
    12.3. Firefox con proxy HTTP configurado para todos los usuarios...............................18
    12.4. Añadiendo el directorio de AD a Thunderbird.............................................. ..........18
    12.5. Desktop-Multiplier................................................................................. ...............19
    12.6. Efectos de escritorio................................................................................ ...............19
13. Instalaciones rápidas..................................................................................................... .19
    13.1. Por incluir en el instalador.................................................................................. ....31
14. Problemas de hardware....................................................................... ...........................31
    14.1. Escanners..................................................................................... ..........................31
       14.1.1. EPSON Perfection 1200S (SCSI).......................................................... .........31
15. Aplicaciones Windows: Wine.............................................................................. ...........32
    15.1. Ajustes iniciales................................................................................................ ......32
    15.2. Aplicaciones.......................................................................................... ................33
       15.2.1. IrfanView (Sin registro).............................................................................. ...33
       15.2.2. Proteus (importando el registro)....................................................... ..............33
16. Por hacer............................................................................................... .........................40
17. Autor..................................................................................................... .........................40
Implantación de Ubuntu Linux en la Escuela - Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT
Elkarnet
                                                             Implantación de Ubuntu Linux en la Escuela

1. Introducción

En el futuro vamos a tener que instalar Linux en nuestras escuelas. Ello va a traer multitud de
problemas, y habrán de cumplirse al menos dos condiciones. La primera: Deberemos tener
multitud de ordenadores actualizados y con lamisma configuración. Segunda: deben estar
conectados en red, y los recursos que ésta ofrece a sus usuarios deben estar disponibles desde
cualquier lugar

Aunque hay nuchas formas de realizar esto, en este informe vamos a ver una de ellas. Para ello
vamos a utilizar un repositorio interno en la escuela y un script para instalar los paquetes.
Además vamos a realizar un script que nos ayudará a configurar los ordenadores

Para tener accesibles los documentos desde cualquier lugar utilizaremos Samba y NFS. Para la
autentificación de los usuarios utilizaremos NIS, Active Directory y OpenLDAP.

Como cliente vamos a utilizar Ubuntu 7.04. Como controlador de dominio AD utilizaremos
Windows 2000 Server. Los servidores NIS y NFS están sobre SUSE Linux 9.3. El servidor de
hora será el propio controlador de dominio en el caso de AD, y en el resto de casos ntp.nire-
eskola.net. El servidor que contiene el repositorio de paquetes es apt.nire-eskola.net.

La dirección del servidor NFS y NIS es 172.16.2.8. El dominio NIS es NIRE-ESKOLA. El
servidor NFS solamente acepta conexiones desde las redes 172.16.0.0/24 y 172.16.2.0/24. El
nombre de nuestro ordenador es UBPC01.

2. Primera instalación
La instalación la realizaremos utilizando Ubuntu 7.04 Desktop. La instalación se realizará de la
manera estándar, y posteriormente se adaptará a nuestra red. No vamos a explicar la instalación
en sí. Decir que se ha realizado seleccionando el idioma Euskera, aunque eso no influirá en la
configuración final.

Algunas veces hay problemas con la migración de las cuentas deWindows y se queda colgado.
Para no realizar la migración deberemos ejecutar el instalador desde un terminal de texto
ejecutando el siguiente comando:
       sudo ubiquity –no-migration-assistant –desktop %k gtkui

El idioma por defecto es Euskera. Si ello no es posible se utilizará el castellano y finalmente el
Inglés. Para establecer esta configuración ejecutar en el terminal:
       sudo echo "LANGUAGE=eu_ES:eu:es_ES:es" >> /etc/profile

Después debemos instalar los paquetes de lenguaje de varios programas. Los paquetes de
lenguaje de las ayudas, y de GNOME y KDE también han de ser instalados. Para ello tendremos
que habilitar todos los repositorios de Ubuntu.

Utilizando Synaptic, instalaremos todos los paquetes que necesitemos y también sus paquetes de
documentación. En nuestro caso, además de los paquetes instalados por defecto, hemos instalado
también los siguientes paquetes:

                                           Página 3 de 40
Implantación de Ubuntu Linux en la Escuela - Instalación + NTP + NIS + NFS + AD + OpenLDAP + Proxy APT
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela

Pauetes de idioma y ayuda de GNOME, KDE, Fireefox y OpenOffice:
–   kde-i18n-es
–   kde-i18n-eu
–   khelpcenter
–   language-pack-es
–   language-pack-eu
–   language-pack-gnome-es
–   language-pack-gnome-eu
–   language-pack-kde-es
–   language-pack-kde-eu
–   language-support-es_es
–   language-support-eu
–   mozilla-firefox-locale-es
–   mozilla-firefox-locale-eu
–   openoffice.org-help-es
–   openoffice.org-l10n-es

Aplicaciones educativas de KDE:
–   kalzium
–   kmplot
–   kstars
–   ktouch
–   kverbos
–

Thunderbird, Dia, Planner, Inkscape, Scribus, Tomboy...:
–   beagle
–   dia
–   dia-gnome
–   gpaint
–   gthumb
–   inkscape
–   istambul
–   mozilla-thunderbird
–   mozilla-thunderbird-enigmail
–   mozilla-thunderbird-locale-es
–   mozilla-thunderbird-locale-eu
–   planner
–   scribus
–   scribus-template
–   tomboy

Paquetes de programción:
–   anjuta
–   bluefish
–   gambas
–   gcc
–   glade-gnome-3

Paquetes de diseño y dibujo:
–   blender
–   kicad
–   qcad
–   qcad-doc
–   piklab
–

Wine ssh, ...
–   gnupg

                                        Página 4 de 40
Elkarnet
                                                            Implantación de Ubuntu Linux en la Escuela
–   khexedit
–   lm-sensors
–   mc
–   openssh-server
–   sensord
–   sensors-applet
–   smbfs
–   openssh
–   sshfs
–   wine
–   xaos

Varios plugions y juegos:
–   3dchess
–   flightgear
–   gstreamer0.10-plugins
–   gstreamer0.10-plugins-ugly
–   flashplugin-nonfree

Aparte de los repositorios de Ubuntu tenemos estos paquetes:
–   Adobe Reader
–   FacturaLUX 2.0
–   KompoZer
–   Wink

Se pueden realizar otros ajustes finos. Por ejemplo: Muchas veces se instala el soporte PCMCIA.
Normalmente solamente los ordenadores portátiles tienen este bus. Para que no se ejecute al
inicio:
       sudo update-rc.d -f pcmcia remove
       sudo update-rc.d -f pcmciautils remove

3. La hora, la hora, la hora!
Importante! Primeramente, en cualquier ordenador, es perentorio poner bien la hora.Hay que
tener en cuenta que estamos en una red, y todos los dispositivos han de tener la misma hora. Para
ello utilizaremos un servidor interno en la red con el cual sioncronizaremos los relojes. este
servidor será ntp.nire-eskola.net (en el caso de AD lo modificaremos posteriormente). Ubuntu
no instala por defecto ni un cliente ni un servidor de hora. Lo instalaremos nosotros.
       sudo apt-get install ntp ntp-doc ntpdate

Para configurarlo, en el ficehro /etc/ntp.conf, donde pone server, poner lo siguiente:
server ntp.nire-eskola.net

También deberemos poner en el caso de Ubuntu 6.06 lo siguiente en el fichero
/etc/default/ntpdate:
NTPSERVERS="ntp.nire-eskola.net"
NTPOPTIONS="-u"

En el caso de Ubuntu 7.04 no debemos poner nada en este fichero, pues por defecto viene
configurado para que tome la configuración de los servidores de tiempo, del fichero
/etc/ntp.conf.

                                          Página 5 de 40
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela

Luego deberemos reiniciar el demonio ntp.
       sudo /etc/init.d/ntp restart

4. root y SSH
Es conveniente para en el futuro realizar actualizaciones automáticas, que la cuenta del usuario
root esté habilitada y con permiso de acceso desde la red a través de ssh. Además nos conviene
poder ejecutar comandos de forma remota con esta cuenta.

Primero la habilitaremos. Con el usuario inicial ejecutaremos:
       sudo su
       passwd

Seleccionamos la contraseña adecuada.

Ahora necesitamos la posibilidad de ejecutar comandos de forma remota. Para ello utilizaremos
SSH.

Primero: Si no tenemos instalado, instalaremos el servidor SSH:
       apt-get install openssh-server ssh

Ahora creamos un juego de claves. No pondremos contraseña al juego de claves. Pondremos la
clave pública en todos los ordenadores. La clave privada en cambio, la pondremos en el
ordenador que utilizaremos para la gestión de los mismos. He aquí cómo crear las claves:
       ssh-keygen -t rsa

Cuando nos pida la frase de paso la dejaremos vacía pulsando RETURN directamente. De esta
forma no necesitamos contraseña parautilizar las claves Hemos creado dos claves. La pública
está en el fichero .ssh/id_rsa.pub de nuestro directorio, y la privada en el fichero id_rsa del
mismo directorio. Copiaremos la clave pública en el ordenador al cual queremos acceder
(makina):
       scp .ssh/id_rsa.pub root@makina.nire-eskola.net:/root/.ssh/

Ahora, entraremos a dicho ordenador. Añadiremos la clave pública al fichero authorized_keys,
y le cambiaremos los permisos.
       ssh root@makina.nire-eskola.net
       cd .ssh
       cat id_rsa.pub >> authorized_keys
       chmod 600 authorized keys

Ahora hemos de cambiar los permisos también a la clave privada que está en el ordenador que
utilizaremos.
       chmod 600 .ssh/id_rsa

Configuramos ahora el servidor ssh del ordenador remoto makina. La configuración está en el
fichero /etc/ssh/sshd.conf. Solamente aceptaremos conexiones con la versión 2 del protocolo.
La siguiente línea debe aparecer de este modo en dicho fichero:
Protocol 2

                                         Página 6 de 40
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela

Dejaremos acceder al usuario root. Para ello:
PermitRootLogin yes

Aceptamos las conexiones con clave pública:
RSAAuthentication yers
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Denegaremos las conexiones sin clave pública:
PasswordAuthentication no

Solamente aceptaremos conexiones desde la red de servidores y además, las realizadas desde una
IP determinada. Para ello, en el fichero /etc/hosts.deny pondremos:
sshd: ALL

Y luego, en el fichero /etc/hosts.allow pondremos las direcciones desde las queaceptamos las
conexiones:
sshd: 10.22.3 10.22.1.8

Si no hemos entrado nunca en esa máquina con ssh desde la actual y con el usuario que vamos a
utilizar más tarde, debemos hacerlo primero a mano. De esta manera, la huella de la clave
pública del host remoto se incluirá en el fichero known_hosts. Aquí vemos cómo actualizar el
sistema del ordenador makina:
echo "apt-get update" | ssh root@makina.nire-eskola.net
echo "apt-get -y upgrade" | ssh root@makina.nire-eskola.net
echo "halt" | ssh root@makina.nire-eskola.net

5. Servidores NFS y NIS
La distribución SUSE 9.3 tiene un servidor NFS. Además deseamos utilizar sus grupos y
usuarios en toda la red. Para ello, utilizaremos NIS. Instalemos estos servidores. Después los
pondremos como servicios, y los iniciaremos.
       yast --install nfsserver ypserv
       chkconfig nfsserver on
       chkconfig ypserv on
       /etc/init.d/nfsserver start
       /etc/init.d/ypserv start

Ahora vamos a configurar NFS. Las carpetas de los grupos se encuentran en el directorio
/taldeak. La carpetas personales de los usuarios, en el directorio /home. Para acceder a su
contenido desde cualquier ordenador, debemos exportarlos. Pondremos lo siguiente en el fichero
/etc/exports:
/home 172.16.0.0/24(rw,root_squash,sync) 172.16.2.0/24(rw,root_squash,sync)
/taldeak 172.16.0.0/24(rw,root_squash,sync) 172.16.2.0/24(rw,root_squash,sync)

Reiniciamos el servicio:
       /etc/init.d/nfsserver restart

Ahora configuraremos el servicio NIS. La configuración la crea SUSE al instalarlo. De cualquier

                                          Página 7 de 40
Elkarnet
                                                              Implantación de Ubuntu Linux en la Escuela

modo, vamos a repasarla. Primeramente, los siguientes parámetros han de aparecer de este modo
en le fichero ypserv.conf:
dns: no
files: 200

El fichero /var/yp/ypservers debe tener lo siguiente:
oiz.iurreta-institutua.net

Por su lado, el fichero /avr/yp/securenets debe tener lo siguiente:
255.0.0.0              127.0.0.1
255.255.255.0          10.22.0.0
255.255.255.0          10.22.1.0
255.255.255.0          10.22.2.0

Ahora vamos a reiniciar el servicio:
       rcypserv restart

Luego debemos iniciar la base de datos de NIS:
       /usr/lib/yp/ypinit -m

Debemos de tener en cuenta, que cada vez que modifiquemos los grupos o usuarios, debemos
rehacer la base de datos de NIS. Lo haremos de esta forma:
       make -C /var/yp

6. Clientes NFS y NIS
Necesitamos instalar los clientes NFS y NIS de Ubuntu. Lo realizaremos de la forma habitual:
       sudo apt-get install nfs-common portmap nis

Al instalar NIS nos preguntará cuál es nuestro dominio NIS. Introducimos el nombre de nuestro
dominio. En nuestro caso NIRE_ESKOLA.

Debemos montar en nuestro sistema los directorios que el servidor NFS exporta. Para ello
debemos crear primero los puntos de montaje. Los directorios personales se mintarán en el
directorio /home. Ese ya existe. Nos falta el directorio para montar las carpetas de los grupos.
Esto es: el directorio /taldeak.
       sudo mkdir /taldeak

Para montar los directorios utilizaremos el comando mount, y y se ejecutará automágicamente al
iniciarse el sistema. Añadiremos las siguientes líneas al fichero /etc/fstab.
172.16.2.8:/home    /home              nfs      auto    0 0
172.16.2.8:/taldeak /taldeak           nfs      auto    0 0

Ahora reiniciamos el cliente NFS.
       sudo /etc/init.d/nfs-common restart

En mi caso no ha sido suficiente, y he n ecesitado reiniciar el ordenador.

                                             Página 8 de 40
Elkarnet
                                                              Implantación de Ubuntu Linux en la Escuela
       sudo reboot

Ahora vamos a configurar el cliente NIS. El fichero de configuración es /etc/yp.conf. en este
fichero indicaremos nuestro dominio NIS y la dirección del servidor NIS. He aquí cómo:
       sudo echo “domain NIRE-ESKOLA server 172.16.2.8” > /etc/yp.conf

Le diremos que el dominio por defecto es NIRE_ESKOLA:
       sudo echo "NIRE-ESKOLA" > /etc/defaultdomain

Ahora debemos modificar los fichero /etc/passwd, /etc/shadow, /etc/gshadow y /etc/group.
Indicaremos con estas modificaciones, que hay más grupos y usuarios que los de los ficheros. Al
final del fichero passwd añadiremos la siguiente línea: '+::::::', en el fichero shadow: '+::::::::' y
en el fichero group y gshadow: '+:::'. Lo haremos de la siguiente forma:
       sudo   echo   “+::::::” >> /etc/passwd
       sudo   echo   “+::::::::” >> /etc/shadow
       sudo   echo   “+:::” >> /etc/group
       sudo   echo   “+:::” >> /etc/gshadow

Ahora reiniciamos el cliente NIS:
       sudo /etc/init.d/nis restart

NO QUIERE FUNCIONAR !!!!!!

El servidor NIS de SUSE está configurado de forma diferente al cliente NIS de Ubuntu. Los
mapas NIS no son compatibles. Hay que modificar la configuración de la generación de los
mapas NIS del servidor, pero esto acarrea la incompatibilidad con los clientes NIS de SUSE.

7. Cliente de Active Directory
Deseamos hacer que nuestro cliente Ubuntu sea miembro de nuestro dominio Windows 2000
Server. El nombre del dominio Windows 2000 (REINO Kerberos) será NIRE-ESKOLA.NET.
El nombre del grupo de trabajo (nombre NETBIOS del dominio) será NIRESKOLA. El nombre
NETBIOS y DNS de nuestro servidor será WINZERBITZARI. Para ello necesitamos
kerberos, samba y winbind. Vamos a instalarlos:
       sudo apt-get install krb5-user winbind samba smbfs

El contenido del fichero de confitguración de kerberos /etc/krb5.conf será el siguiente:
[libdefaults]
       default_realm = NIRE-ESKOLA.NET

       ticket_lifetime = 24000
       kdc_timesync = 1
       ccache_type = 4
       forwardable = true
       proxiable = true

       dns_lookuo_realm = false
       dns_lookup_kdc = false

[realms]

       NIRE-ESKOLA.NET = {

                                            Página 9 de 40
Elkarnet
                                                          Implantación de Ubuntu Linux en la Escuela
              kdc = winzerbitzari.nire-eskola.net
              admin_server = winzerbitzari.nire-eskola.net
              default_domain = nire-eskola.net
       }

[domain_realm]
       .nire-eskola.net = NIRE-ESKOLA.NET
       nire-eskola.net = NIRE-ESKOLA.NET

La configuración de Samba la realizaremos en el fichero /etc/samba/smb.conf:
[global]
    netbios name = NIRE-MAKINA
    workgroup = NIRESKOLA
    realm = NIRE-ESKOLA.NET
    security = ads
    password server = winzerbitzari.nire-eskola.net

    winbind use default domain = yes
    winbind separator = +
    winbind enum users = no
    winbind enum groups = no
    idmap uid = 10000-20000
    idmap gid = 10000-20000

    template homedir = /home/%D/%U
    template shell = /bin/bash

    client use spnego = yes
    domain master = no

    log file = /var/log/samba/log.%m
    max log size = 1000
    syslog = 0

Configuramos ahora el servicio nsswitch. El fichero de configuración es /etc/nsswitch.conf. He
aquí su contenido:
passwd:           compat winbind
group:            compat winbind
shadow:           compat winbind

hosts:            files dns wins
networks:         files

protocols:        db   files
services:         db   files
ethers:           db   files
rpc:              db   files

netgroup:         nis

Ahora vamos a configurar los módulos de autentificación (PAM). Son 4 ficheros principales y
luego los individuales de los servicio que hacen uso de este mecanismo.

El contenido del fichero /etc/pam.d/common-auth:
auth optional           pam_group.so
auth sufficient         pam_unix.so nullok_secure
auth requisite          pam_winbind.so use_first_pass

El contenido del fichero /etc/pam.d/common-account:
account sufficient pam_winbind.so

                                        Página 10 de 40
Elkarnet
                                                          Implantación de Ubuntu Linux en la Escuela
account required      pam_unix.so use_first_pass

El contenido del fichero /etc/pam.d/common-session:

session   required    pam_mkhomedir.so umask=0022 skel=/etc/skel
session   required    pam_winbind.so
session   required    pam_unix.so use_first_pass
session   optional    pam_foreground.so

El contenido del fichero /etc/pam.d/common-password:
password sufficient pam_unix.so nullok obscure min=4 max=8 md5
password required   pam_winbind.so use_first_pass

El contenido del fichero /etc/pam.d/sudo:
@include common-auth
@include common-account

En este momento tenemos un pequeño problema. Los usuarios locales son miembros de los
grupos audio, video, plugdev, cdrom... Esto hace que puedan utilizar esos recursos. Los
miembros del dominio en cambio, no son miembros de esos grupos. Para poder utilizar esos
recursos hemos de hacer que los usuarios que se autentifique en el sistema sean miembros
temporales de esos grupos. Para ello utilizamos el módulo pam_group. Lo configuraremos en el
fichero /etc/security/group.conf y este es su contenido (Aportación de Juan Luis Goitiz):
login;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip
gdm;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip,video,scanner
kdm;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip,video,scanner

Este sistema funciona correctamente en Ubuntu 6.06 y 6.10, pero falla en Ubuntu 7.04 el grupo
plugdev. Ahora, el sistema HAL es el encargado de gestional los módulos HOT-PLUG. El
sistema HAL no contempla pam_group. El motivo es de seguridad. Por lo que los miembros
del sominio no pueden enviar mensajes a través del sistema dbus. Para subsanar esto, debemos
modificatr las políticas por defecto de HAL. Lo realizamos en el fichero /etc/dbus-
1/sistem.d/hal.conf. En la sección , donde pone:
    
Debemos poner:
     
Tenemos aún otro problema por resolver. Los usuarios de nuestras escuelas están habituados a
un nivel de funcionalidad elevado. Esto es: Cuando seautentifican en el dominio, se les monta
automáticamente las carpetas personales, las de sus grupos y las general de la escuela. deseamos
lograr el mismo nivel de funcionalidad con Ubuntu. Para ello necesitamos utilizar el módulo
pam_mount. Para instalarlo:
       sudo apt-get install libpam-mount

Ahora debemos modificar el fichero /etc/security/pam_mount.conf. La primera modificación
es para permitir que los usuarios individuales puedan definir montajes personalizados. Hay que
tener en cuenta que luego debemos enseñar a los usuarios a utilizar esta opción. La siguiente
línea debe quedar como sigue:

                                        Página 11 de 40
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela
luserconf .pam_mount.conf

Tras ello ponemos los volúmenes que se montarán a todos los usuarios. En nuestro caso serán la
carpeta personal, la de los grupos y la general de la escuela. Para ello, al final del fichero de
configuración pondremos lo siguiente:
volume * smbfs NIRE-MAKINA &$ /home/NIRESKOLA/&/ZERB-&
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -

volume * smbfs NIRE-MAKINA taldeak$ /home/NIRESKOLA/&/ZERB-taldeak
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -

volume * smbfs NIRE-MAKINA eskola$ /home/NIRESKOLA/&/ZERB-eskola
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -

Para utilizar este mecanismo debemos debemos modificar algunos de los ficheros PAM que
hemos visto anteriormente, y que residen en el directorio /etc/pam.d/. Quedarán de la siguiente
forma:

Contenido del fichero /etc/pam.d/common-auth:
auth   optional        pam_group.so
auth   sufficient      pam_unix.so nullok_secure
auth   requisite       pam_winbind.so use_first_pass
auth   sufficient      pam_mount.so use_first_pass

Contenido del fichero /etc/pam.d/common-session:
session   required     pam_mkhomedir.so umask=0022 skel=/etc/skel
session   required     pam_winbind.so
session   required     pam_unix.so use_first_pass
session   sufficient   pam_mount.so use_first_pass
session   optional     pam_foreground.so

Este sistema tiene un inconveniente. Los usuarios locales han de introducir dos veces su
contraseña. No es un gran inconveniente, pues se supone que solamente el administrador
utilizará dicha cuenta. También podemos habilitar la cuenta de root, tanto a nivel de sistema
como en el uso del entorno gráfico (gdm). Habilitaremos la cuenta de root:
        sudo su
        passwd

Para habilitar el acceso gráfico a root modificaremos la configuración de gdm. En el fichero de
configuración /etc/gdm/gdm.conf la siguiente línea debe quedar de esta forma:
AllowRoot = true

También podemos dar capacidad de administrar el ordenador a los miembros del grupo del
dominio UnixAdmins. Primeramente crearemos dicho grupo en Active Directory. Después
añadiremos la siguiente línea en el fichero /etc/sudoers:
%unixadmins ALL = (ALL) ALL

Ahora, para que se creen automáticamente los directorios personales de los miembros del
dominio, habremos de crear el directorio que los contenga. Además deberemos de cambiar sus
permisos. el nombre del directorio ha de ser el del nombre NETBIOS del dominio Windows.
Esto es: NIRESKOLA.
        sudo mkdir /home/NIRESKOLA
        sudo chmod 777 /home/NIRESKOLA

                                         Página 12 de 40
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela

Es conveniente para no tener problemas con Kerberos al meter el ordenador al dominio AD, que
el servidor de hora para ese ordenador sea el propio controlador de dominio. La hora estará
siempre sincronizada con el mismo. Para ello modificaremos el fichero /etc/ntp.conf. La línea
siguiente quedará como sigue:
server winzerbitzari.nire-eskola.net

Ahora procederemos a meter la máquina al dominio. Para ello debemos de usar una cuenta de
administrador del dominio o una cuenta con derechos para meter máquinas al dominio. El
nombre de eta cuenta será winadminizena. Nos pedirá la contraseña de esta cuenta. Primero
vamos a probar la comunicación con Kerberos y si la sincronización horaria. Ejecuta lo
siguiente:
       sudo kinit winadminizena@NIRE-ESKOLA.NET

Si no hay errores vamos a ver si Kerberos nos ha concedido el ticket que nos habilita para
solicitar tickets:
       sudo klist

Si tiene buen aspecto, procedemos a meter la máquina al dominio:
       sudo net ads join -U winadminizena@NIRE-ESKOLA.NET

Ahora vamos a reiniciar el servicio winbind:
       sudo /etc/init.d/winbind restart

Vamos a ver si podemos listar a los grupos y usuarios de AD:
       wbinfo -g
       wbinfo -u

Todo bien? Felicidades! Tu sistema Linux es miembro del domini Windows.

Para utilizar el sistema de autentificación de PAM habremos de reiniciar el ordenador.
Seguidamente nos podremosautentificar con una cuenta de usuario de AD.

8. Cliente de OpenLDAP
Vamos a utilizar OpenLDAP y NFS juntos. Con NFS vamos a montar en el cliente las carpetas
exportadas por el servidor (com hacíamos en el caso de NIS). La autentificación y autorización
será realizada contra OpenLDAP.

Vamos a instalar los paquetes:
       sudo apt-get install nfs-common portmap

Hemos de montar los directorios exportados por nuestro servidor NFS en nuestro sistema. Para
ello, vamos a crear los puntos de montaje primero. Los directorios personales van a ser
montados en el directorio /home. Este directorio ya lo tenemos creado. Nos falta el punto de
montaje de las carpetas de los grupos. Esto es: el directorio /taldeak.
       sudo mkdir /taldeak

                                         Página 13 de 40
Elkarnet
                                                              Implantación de Ubuntu Linux en la Escuela

Para montar los directorios se utilizará el comando mount, y se ejecutará automáticamente en el
inicio del sistema. Para ello vamos a añadir las siguientes líneas en el fichero /etc/fstab.
172.16.2.8:/home    /home             nfs       auto   0 0
172.16.2.8:/taldeak /taldeak          nfs       auto   0 0

Los directorios personales de los profesores los tenemos en otro directorio. Este directorio es
exportado como /irakasleak. Si en esos ordenadores también se autentifican los profesores,
tendremos que crear el directorio y lo habremos de montar igualmente. Para ello debemos añadir
también la siguiente línea:
172.16.2.8:/irakasleak        /irakasleak       nfs    auto     0 0

No he conseguido que se acepten los cambios con reiniciar el servidor, y he tenido que reiniciar
la máquina para que monte los directorios.

Ahora vamos a instalas los paquetes necesarios para realizar la autentificación.
       sudo apt-get install libpam-ldap libnss-ldap ldap-utils

Al instalar nos pide que los configuremos. Aceptar todas las opciones sin introducir los datos.
No necesitamos todos los ficheros de configuración. Modificaremos a mano los ficheros de
configuración necesarios. Primero moveremos el fichero /etc/ldap/ldap.conf al directorio /etc.
       mv /etc/ldap/ldap.conf /etc/ldap.conf

Ahora creamos un enlace a este fichero en el directorio /etc/ldap para no mantener dos ficheros.
       ln -s /etc/ldap.conf /etc/ldap/ldap.conf

El fichero /etc/ldap.conf ha de tener el siguiente contenido:
HOST   10.22.1.9
URI    ldap://ldap.nire-eskola.net

Si tenemos una réplica del servidor LDAP, esta línea puede tener el aspecto siguiente:
URI    ldap://ldap.nire-eskola.net ldap://ldap2.nire-eskola.net

Si el ordenador lo van a utilizar solamente los alumnos, pondremos la siguiente línea:
BASE   ou=ikasleak,ou=People,dc=nire-eskola,dc=net

Si el ordenador va a ser utilizado tanto por alumnos como por profesores, pondremos esta otra:
BASE   ou=People,dc=nire-eskola,dc=net

Ahora, en el fichero /etc/nsswitch.conf pondremos las siguientes líneas de esta forma:
passwd:        files   ldap
group:         files   ldap
shadow:        files   ldap
hosts:         files   dns ldap

Estos otros ficheros quedarán así:

/etc/pam.d/common-account:
account sufficient          pam_ldap.so
account required            pam_unix.so

                                            Página 14 de 40
Elkarnet
                                                            Implantación de Ubuntu Linux en la Escuela

/etc/pam.d/common-auth:
auth     optional           pam_group.so
auth     sufficient         pam_ldap.so nullok_secure
auth     required           pam_unix.so nullok_secure use_first_pass

/etc/pam.d/common-password:
password    sufficient      pam_ldap.so
password    required        pam_unix.so try_first_pass nullok obscure min=4 max=8 md5

/etc/pam.d/common-session:
session sufficient         pam_ldap.so
session required           pam_unix.so
session optional           pam_foreground.so

Ahora reiniciamos el ordenador y listo! Ya tenemos la autentificación realizada a través de
OpenLDAP.

9. Algunos cambios en el fichero /etc/fstab
Al instalar Ubuntu, se crean los puntos de montaje de las particiones Windows detectadas.
Además, se montran automáticamente en cada inicio de sesión, pues así se configuran en
/etc/fstab. Esto provoca que cualquier usuario puede leer el contenido de toda la partición ntfs,
haciendo que la privacidad se vaya a tomar viento. Esto no es deseable. Debemos de quitar estas
particiones del fichero /etc/fstab. Para ello , el ese fichero, borraremos (o comentaremos) las
líneas que tengan algo similar a esto (Ubuntu 6.06):
/dev/hda1      /media/hda1     ntfs   auto    0      0

O esto (Ubuntu 7.04):
UUID=A620EB0E20EAE3F1          /media/hda1    ntfs   defaults,nls=utf,umask=007,gid=4 0 1

También tenemos otro problemilla. En algunos sistemas, los usuarios normales no pueden
montar diskettes o CD-ROMs.

Para poder montar los diskettes, en el fichero /etc/fstab, en la línea que aparece /dev/fd0
pondremos lo siguiente:
/dev/fd0       /media/floppy0         auto    rw,user,noauto         0       0

Para poder montar los CD-ROM, y suponiendo que Ubuntu los ha detectado, si la siguiente línea
aparece de esta manera:
/dev/hdb       /media/cdrom0          udf,iso9660    ro,noauto       0       0

Debemos de poner la palabra user. Quedará de esta manera:
/dev/hdb       /media/cdrom0          udf,iso9660    user,ro,noauto          0        0

Si el CD-ROM, es el master del canal IDE 2, en lugar de hdb1 aparecerá como hdc1.

                                          Página 15 de 40
Elkarnet
                                                           Implantación de Ubuntu Linux en la Escuela

Si la unidad de CD-ROM es una grabadora, debemos de quitar (read only). Quedaría de esta
manera:
/dev/hdb       /media/cdrom0         udf,iso9660    user,noauto     0       0

10. Proxy de repositorio de paquetes
Tanto Debian como Ubuntu se distribuyen con un paquete que sirve para instalar un proxy apt.
Debido a ello, podemos instalarlo y decirle a nuestro sistema que pida al proxy los paquetes que
necesite descargar. El proxy no es un repositorio, sino que pide el paquete al repositorio en
nuestro nombre y lo almacena por si alquien más tiene necesidad de él, para no descargarlo
nuevamente de Internet. Vamos a instalar el proxy en un servidor ETCH de nuestra red.
       apt-get install apt-proxy

En los clientes Ubuntu vamos a modificar la dirección de los repositorios
(es.archive.ubuntu.com) para que apunten a nuestro proxy. La dirección de nuestro proxy será
apt.nire-eskola.net (172.31.249.5). Las conexiones se realizan al puerto 9999. He aquí un
ejemplo:
deb http://apt.nire-eskola.net:9999/ubuntu feisty main restricted universe
multiverse
deb http://apt.nire-eskola.net:9999/ubuntu feisty-updates main restricted universe
multiverse
deb http://apt.nire-eskola.net:9999/ubuntu feisty-backports main restricted universe
multiverse
deb http://apt.inire-eskola.net:9999/ubuntu feisty-security main restricted universe
multiverse

Luego, en el fichero de configuración del proxy (/etc/apt-proxy/apt-proxy-v2.conf) pondremos
los repositorios desde donde descarga los paquetes. para ello modificamos este fichero. En el
apartado Ubuntu, donde pone backends, pondremos los repositorios. Por ejemplo:
es.archive.ubuntu.com/ubuntu.

NOTA: He tenido problemas con ese mirror, debido a su lentitud. En el momento de escribir
estas líneas, el espejo de alemania (de.archive.ubuntu.com/ubuntu) es bastante más rápido.

Para realizar las actualizaciones, podemos entrar al ordenador como root con ssh y... la música
de siempre:
       apt-get update
       apt-get upgrade

Podemos automatizar el sistema ppara que por la noche despierte a los ordenadores, los actualice
y los apague. Tareas para el futuro.

11. Ubuntu y Windows
Nos pasará que teniendo instalado Ubuntu en una máquina compartida con Windows, tengamos
que reinstalar Windows. Windows se apropiará del arranque modificando el MBR para que
apunte a eĺ. Esto hace que GRUB quede inutilizado y perdamos el multiarranque. Para recuperar
el estado anterior, previamente a la instalación de Windows debemos de hacer una copia del
MBR, y restaurarla tras la misma. Supongamos que guardamos la copia del MBR en el fichero

                                         Página 16 de 40
Elkarnet
                                                          Implantación de Ubuntu Linux en la Escuela

MBR-kopia de un diskette. Montamos el diskette y copiamos el MBR:
       sudo mount /media/floppy
       sudo dd if=/dev/hda of=/media/floppy/MBR-kopia bs=512 count=1

Tras la reinstalación de Windows procederemos a recuperar el MBR del diskette. Para ello
arrrancamos con un LiveCD al estilo de Ubuntu o Knoppix. Tras el arranque ejecutamos:
       sudo mount -t vfat /dev/fd0 /mnt
       sudo dd if=/mnt/MBR-kopia of=/dev/hda bs=512 count=1

Ya podemos reiniciar el sistema. Nos aparecerá el menú de GRUB.

12. Joyas
12.1. Buscadores de Firefox
Hay innumerables buscadores para Firefox. Unos vienen instalados por defecto. Vamos s instalar
unos que son interesantes para nosotros. Entre ellos los utilizados para realizar búsquedas en
Euskalterm en diferentes idiomas. Estos buscadores se encuentran en EuskalGNU y otros
lugares. Los tenemos que copiar en el directorio searchplugins que se encuentra en el directorio
de instalación de Firefox. Los tendremos en un diskette o CD-ROM, por lo que ejecutaremos los
siguientes comandos.
cp /media/floppy/searchplugins/* /usr/share/firefox/searchplugins/
chmod 0644 /usr/share/firefox/searchplugins/*

En las siguientes direcciones se pueden encontrar algunos plugins.
http://www.librezale.org/mozilla/bilaketa_pluginak.php

12.2. Diferentes tipografías
Frecuentemente, debemos manipular documentos realizados enWindows. Para ello utilizaremos
OpenOffice, pero Linux no dispone de los tipos de letra de Windows. El problema: las diferentes
tipografías tienen diferentes métricas, por lo que debemos reformatear el documento. Una
solución consiste en instalar los tipos de letras más comunes de Microsoft. Además de éstos
también instalaremos otros.
       apt-get install msttcorefonts

Además, ahora disponemos de sustitutos con la métrica idéntica de las tipografías de Microsoft
más utilizadas en documentos. Tenemos sustitutos de las tipografías Times New Roman, Arial
y Courier New en forma de tipografías Liberation. Estas tipografías han sido realizadas por
encargo de Red Hat. Red Hat ha liberado estas tipografías con una licencia GPL. Es decir: Son
tipografías libres. Para instalarlas las hemos de descargar de Internet:
       wget -P /root https://www.redhat.com/f/fonts/liberation-fonts-ttf-3.tar.gz

Vamos a descomprimir el fichero. Esto nos ccrea el directorio liberation-fonts-0.2 con todas las
tipografías.
       tar zxf /root/liberation-fonts-ttf-3.tar.gz

                                        Página 17 de 40
Elkarnet
                                                             Implantación de Ubuntu Linux en la Escuela

Creamos el directorio /usr/share/fonts/truetype/tahoma/ para contener los tipografías.
       mkdir -p /usr/share/fonts/truetype/liberation

Copiamos los ficheros en dicho directorio.
       cp liberation-fonts-0.2/* /usr/share/fonts/truetype/liberation/

Cambiamos el propietario y rehacemos la caché de tipografías.
       sudo chown root:root /usr/share/fonts/truetype/liberation/*.ttf
       fc-cache

Listo! A gozar!

12.3.Firefox con proxy HTTP configurado para todos los usuarios
Es conveniente establecer el proxy que vayamos a utilizar en la escuela a todos los usuarios, para
que no tengan que ponerlo ellos mismos. Para ello realizaremos los cambios en el fichero
/usr/share/firefox/greprefs/all.js. Si deseamos que se conecten a una IP y puerto concretos, y
que no utilicen el proxy para acceder a los servicios de nuestro dominio pondremos los
siguientes parámetros de esta forma:
pref("network.proxy.http", "192.168.31.1");
pref("network.proxy.http_port", 3128);
pref("network.proxy.no_proxies_on", "localhost, 127.0.0.1, nire-eskola.net");
pref("network.proxy.type", 1);

En cambio, si deseamos que obtengan la configuración de un servidor web,en el cual habrá
ficheros de configuración, pondremosestos parámetros de la siguiente manera:
pref("network.proxy.autoconfig_url", "http://www2.nire-eskola.net/wpad/wpad.dat”);
pref("network.proxy.no_proxies_on", "localhost, 127.0.0.1, nire-eskola.net");
pref("network.proxy.type", 2);

A gozar!

12.4.Añadiendo el directorio de AD a Thunderbird
Para realizar búsquedas de direcciones de correo en el directorio de AD de nuestra escuela,
debemos de configurar Thunderbird. Esta configuración no es difícil pero muchos usuarios
tienen problemas con ella. Les vamos a facilitar el trabajo poniendo la configuración para todos
los usuarios del sistema.

Para ello añadiremos las siguientes líneas al final del fichero /usr/lib/mozilla-
thunderbird/greprefs/all.js:
user_pref("ldap_2.servers.WINZERBITZARI.auth.dn", "NIRESKOLA\\unusuariodeldominio");
user_pref("ldap_2.servers.WINZERBITZARI.auth.savePassword", true);
user_pref("ldap_2.servers.WINZERBITZARI.description", "WINZERBITZARI");
user_pref("ldap_2.servers.WINZERBITZARI.filename", "abook-1.mab");
user_pref("ldap_2.servers.WINZERBITZARI.position", 4);
user_pref("ldap_2.servers.WINZERBITZARI.replication.lastChangeNumber", 0);
user_pref("ldap_2.servers.WINZERBITZARI.uri", "ldap://winzerbitzari.nire-
eskola.net:389/ou=irakasleak,dc=nire-eskola,dc=net??sub?(|
(objectclass=person)(objectclass=group))");

A partir de ahora, todos los usuarios tendrán la opción de utilizar nuestro directorio.

                                          Página 18 de 40
Elkarnet
                                                            Implantación de Ubuntu Linux en la Escuela

NOTA: Adecuar el ejemplo a vuestra infraestructura y no os olvidéis de sustituir el literal
“unusuariodeldominio” por un usuario real que pueda leer el directorio.

12.5. Desktop-Multiplier
Con la aplicación Desktop multiplier tenemos la opción de tener hasta diez puestos de trabajo
con el mismo ordenador. Este programa es de pago, pero podemos hacer uso de una versión
gratuita. Esta versión reducida nos permite utilizar el ordenador para dos puestos de trabajo. El
segundo teclado y ratón han de ser USB. La tarjeta gráfica ha de tener dos salidas.

Este programa pone los teclados en inglés. Para cambiarlo modificaremos el fichero
/etc/X11/userful-xorg.conf. En la sección de teclados, donde poneus debemos poner es.

Al registrarnos, debemos instalar el código que se nos proporciona por correo electrónico con la
herramienta que el programa proporciona. Los usuarios normales no pueden realizar esta acción
y se instala el fichero de registro en el directorio /tmp. Debemos de copiar el fichero
/tmp/1Box.info al directorio /etc/X11.

12.6.Efectos de escritorio
Si deseamos habilitar esos efectos de escritorio tan bonitos (y a veces prácticos), podemos
instalar Compiz o Beryl. Vamos a instalar Beryl.

CUIDADO! Puede ser peligroso. No es un software muy estable.
       apt-get install beryl beryl-manager emerald-themes

Listo. Ahora debemos habilitar los opciones deseadas en los menús que apareces, y a gozar!

13. Instalaciones rápidas
Hay dos formas de realizar instalaciones rápidas. Una es clonar las particiones deseadas, y la
otra es realizar instalaciones normales y después realizar las instalación de los paquetes deseados
y la configuración del sistema a través de un script personalizado. Aquí vamos a realizar la
segunda opción. Este script está adaptado a nuestra escuela. Deberéis adaptarlo a vuestras
necesidades. He aquí el script denominado ubuntu-instalatu:

AVISO: Este script hace muchas cosas y puede estropear la configuración de tu sistema. Se
recomienda revisarlo, adaptarlo y verificarlo antes de su uso en producción. Además está
adaptado a Ubuntu 7.04. El script ha de ser ejecutado en un terminal abierto desde el entorno
gráfico.
#!/bin/bash
#
# Egilea: Alfredo Barrainkua Zallo
# Posta-e: alfredobz@iurreta-institutua.net
#

# Skriptaren izena: ubuntu-instalatu

TEMP_DIR=~/ubuntu-inst-dir
TEMP_FILE=`TEMP_FILE 2>/dev/null` || TEMP_FILE=$TEMP_DIR/test$$

OSTALARIA=`hostname`
DOMEINUA="iurreta-institutua.net"

                                         Página 19 de 40
Elkarnet
                                                      Implantación de Ubuntu Linux en la Escuela
AD_DOM_KONTR="zir014950a"
AD_DOM_IZENA="IURRETA"
AD_KRB_ERREI="IURRETA-INSTITUTUA.NET"
AD_ADM_KONTU="alfredo"
AD_ADM_PASSW=""

NIS_DOM="II-IURRETA"
NFS_IPA="10.22.1.8"
ORDU_ZERB="ntp.iurreta-institutua.net"

OL_ZERB="10.22.1.9"
OL_URI="ldap.iurreta-institutua.net"
OL_AUTH_OIN="ou=People,dc=iurreta-institutua,dc=net"

########################################################################
######################    F U N T Z I O A K    #########################
########################################################################

#============ Makinaren izena eta domeinua jarri ============
function makina_datuak_jarri ()
{
# Makinaren izena finkatu
    if [ ! -f "/etc/hostname.orig" ]; then
       cp /etc/hostname /etc/hostname.orig
    fi

    echo "$OSTALARIA" > /etc/hostname
    /bin/hostname -F /etc/hostname

# /etc/hosts fitxategia aldatu
    if [ ! -f "/etc/hosts.orig" ]; then
       cp /etc/hosts /etc/hosts.orig
    fi

    echo "127.0.0.1 localhost
127.0.0.1 $OSTALARIA.$DOMEINUA   $OSTALARIA

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
" > /etc/hosts
}

#============ Ordu erreferentzia jarri ============
function ordua_jarri {
# NTP konfiguratu eta berrabiarazi
if [ ! -f "/etc/ntp.conf.orig" ]; then
       cp /etc/ntp.conf /etc/ntp.conf.orig
fi

      sed -i s/^server.*/server\ $ORDU_ZERB/ /etc/ntp.conf
      /etc/init.d/ntp stop
      ntpdate $ORDU_ZERB
      /etc/init.d/ntp start
}

#============ Eskola barneko errepositorioa jarri ============
function errepositorioak_jarri {
    if [ ! -f "/etc/apt/sources.list.orig" ]; then
       cp /etc/apt/sources.list /etc/apt/sources.list.orig
    fi

                                    Página 20 de 40
Elkarnet
                                                     Implantación de Ubuntu Linux en la Escuela

    echo "deb http://apt.$DOMEINUA:9999/ubuntu feisty main restricted universe
multiverse" > /etc/apt/sources.list
    echo "deb http://apt.$DOMEINUA:9999/ubuntu feisty-updates main restricted
universe multiverse" >> /etc/apt/sources.list
    echo "deb http://apt.$DOMEINUA:9999/ubuntu feisty-security main restricted
universe multiverse" >> /etc/apt/sources.list
    echo "#deb http://apt.$DOMEINUA:9999/ubuntu feisty-backports main restricted
universe multiverse" >> /etc/apt/sources.list
}

#============ Instalatu aplikazio eta liburutegi orokorrak ============
function install_soft_orokorra {
#      apt-get update
#      apt-get -y upgrade

aptitude install ntp ntpdate | zenity --progress --pulsate --title="Programen
instalazioa" --text="ntp eta ntpdate instalatzen
-----------------------------------
Instalando ntp y ntpdate"

apt-get install -y openoffice.org-help-es openoffice.org-l10n-es | zenity --progress
--pulsate --title="Programen instalazioa" --text="OpenOffice laguntzak instaltzen
-----------------------------------------------
Instalando las ayudas de OpenOffice"

#      apt-get install -y openoffice.org-help-eu openoffice.org-l10n-eu
apt-get install -y myspell-es aspell-es | zenity --progress --pulsate --
title="Programen instalazioa" --text="OpenOffice hiztegiak
----------------------------------
Diccionarios de OpenOffice"

apt-get install -y language-support-es language-support-eu language-pack-es
language-pack-eu | zenity --progress --pulsate --title="Programen instalazioa" --
text="Hizkuntzen pakete orokorrak
----------------------------------------
Paquetes generales de idiomas"

apt-get install -y language-pack-gnome-es language-pack-gnome-eu language-pack-kde-
es language-pack-kde-eu | zenity --progress --pulsate --title="Programen
instalazioa" --text="GNOME eta KDE hizkuntza paketeak
-------------------------------------------------
Paquetes de idiomas de GNOME y KDE"

apt-get install -y kde-i18n-es kde-i18n-eu khelpcenter | zenity --progress --pulsate
--title="Programen instalazioa" --text="KDE laguntza zentrua
----------------------------
Centro de ayuda KDE"

apt-get install -y inkscape dia dia-gnome planner | zenity --progress --pulsate --
title="Programen instalazioa" --width=300 --text="Inkscape, Dia eta Planner
---------------------------------
Inkscape, Dia y Planner"

apt-get install -y fuse-utils mc arj | zenity --progress --pulsate --
title="Programen instalazioa" --width=300 --text="Zenbait utilidade
------------------------
Algunas utilizades"

#     apt-get install -y nvu

apt-get install -y gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad | zenity --
progress --pulsate --title="Programen instalazioa" --width=300 --text="Soinu
dekodifikadoreak
--------------------------------
Decodificadores de audio"

if [ -d msttcorefonts ]; then

                                   Página 21 de 40
Elkarnet
                                                         Implantación de Ubuntu Linux en la Escuela
      cp msttcorefonts /usr/share/fonts/
      chmod 644 /usr/share/fonts/*

apt-get install -y ttf-ubuntu-title ttf-freefont ttf-bitstream-vera ttf-opensymbol |
zenity --progress --pulsate --title="Programen instalazioa" --width=300 --
text="Zenbait letra mota
---------------------------
Diferentes tipografías"
else
apt-get install -y msttcorefonts ttf-ubuntu-title ttf-freefont ttf-bitstream-vera
ttf-opensymbol | zenity --progress --pulsate --title="Programen instalazioa" --
width=300 --text="Zenbait letra mota
---------------------------
Diferentes tipografías"
fi

#      apt-get install -y msttcorefonts ttf-ubuntu-title ttf-freefont ttf-bitstream-
vera ttf-opensymbol
}

#============ Instalatu programazio aplikazioak ============
function install_soft_programazioa {
       apt-get install -y anjuta anjuta-common bluefish
       apt-get install -y glade-gnome-3
       apt-get install -y gambas gambas-doc gambas-gb-compress gambas-gb-db gambas-
gb-db-mysql gambas-gb-debug
       apt-get install -y gambas-gb-eval gambas-gb-net gambas-gb-xml gambas-gb-vb
gambas-runtime gambas-gb-sdl
#      apt-get install -y gambas-gb-qt gambas-gb-qt-editor gambas-gb-qt-ext
}

#============ Active Directory domeinura sartu makina ============
function ad_dom_sartu {
       apt-get install -y krb5-user winbind samba smbfs libpam-mount

# KERBEROS
       if [ ! -f "/etc/krb5.conf.orig" ]; then
              cp /etc/krb5.conf /etc/krb5.conf.orig
       fi

echo "[libdefaults]
       default_realm = $AD_KRB_ERREI

      ticket_lifetime = 24000
      kdc_timesync = 1
      ccache_type = 4
      forwardable = true
      proxiable = true

      dns_lookuo_realm = false
      dns_lookup_kdc = false

#     default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc des-cbc-md5
#     default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc des-cbc-md5

[realms]

      $AD_KRB_ERREI = {
             kdc = $AD_DOM_KONTR.$DOMEINUA
             kdc = $AD_DOM_KONTR.$DOMEINUA
             admin_server = $AD_DOM_KONTR.$DOMEINUA
             default_domain = $DOMEINUA
      }

[domain_realm]
       .$DOMEINUA = $AD_KRB_ERREI

                                       Página 22 de 40
Elkarnet
                                                         Implantación de Ubuntu Linux en la Escuela
        $DOMEINUA = $AD_KRB_ERREI

[login]
       krb4_convert = true
       krb4_get_tickets = false
" > /etc/krb5.conf
       chmod 644 /etc/krb5.conf

# SAMBA
       if [ ! -f "/etc/samba/smb.conf.orig" ]; then
              cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
       fi
       echo "[global]
    netbios name = $OSTALARIA
    workgroup = $AD_DOM_IZENA
    realm = $AD_KRB_ERREI
    security = ads
    password server = $AD_DOM_KONTR.$DOMEINUA

    winbind use default domain = yes
    winbind separator = +
    winbind enum users = no
    winbind enum groups = no
    idmap uid = 10000-20000
    idmap gid = 10000-20000

    template homedir = /home/%D/%U
    template shell = /bin/bash

    client use spnego = yes
    domain master = no

    log file = /var/log/samba/log.%m
    max log size = 2000
    syslog = 0

" > /etc/samba/smb.conf
       chmod 644 /etc/samba/smb.conf

# NSS
       if [ ! -f "/etc/nsswitch.conf.orig" ]; then
              cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
       fi
echo "passwd:          compat winbind
group:           compat winbind
shadow:          compat winbind

hosts:           files dns wins
networks:        files

protocols:       db   files
services:        db   files
ethers:          db   files
rpc:             db   files

netgroup:       nis
" > /etc/nsswitch.conf
       chmod 644 /etc/nsswitch.conf

# PAM
       for FILE in common-auth common-account common-session common-password sudo; do
              if [ ! -f "/etc/pam.d/$FILE.orig" ]; then
                     cp /etc/pam.d/$FILE /etc/pam.d/$FILE.orig
              fi
       done
echo "auth optional         pam_group.so
auth sufficient      pam_unix.so nullok_secure

                                       Página 23 de 40
Elkarnet
                                                      Implantación de Ubuntu Linux en la Escuela
auth requisite      pam_winbind.so use_first_pass
auth sufficient     pam_mount.so use_first_pass
" > /etc/pam.d/common-auth

echo "accountsufficient pam_winbind.so
account required pam_unix.so use_first_pass
" > /etc/pam.d/common-account

echo "session required     pam_mkhomedir.so umask=0022 skel=/etc/skel
session required    pam_winbind.so
session required    pam_unix.so use_first_pass
session sufficient pam_mount.so use_first_pass
session optional    pam_foreground.so
" > /etc/pam.d/common-session

echo "password   sufficient    pam_unix.so nullok obscure min=4 max=8 md5
password   required pam_winbind.so use_first_pass
" > /etc/pam.d/common-password

      chmod 644 /etc/pam.d/*

# GROUP
       if [ ! -f "/etc/security/group.orig" ]; then
              cp /etc/security/group.conf /etc/security/group.orig
       fi
echo "login;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip
gdm;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip,video,scanner
kdm;*;*;Al0000-2400;users,cdrom,floppy,plugdev,audio,dip,video,scanner
" > /etc/security/group.conf
       chmod 644 /etc/security/group.conf

# VOLUME
       if [ ! -f "/etc/security/pam_mount.orig" ]; then
              cp /etc/security/pam_mount.conf /etc/security/pam_mount.orig
       fi
       sed -i s/.*luserconf.*/'luserconf\ .pam_mount.conf'/
/etc/security/pam_mount.conf
echo "
volume * smbfs $AD_DOM_KONTR &$ /home/$AD_DOM_IZENA/&/DOM-&
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -
volume * smbfs $AD_DOM_KONTR taldeak$ /home/$AD_DOM_IZENA/&/DOM-taldeak
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -
volume * smbfs $AD_DOM_KONTR eskola$ /home/$AD_DOM_IZENA/&/DOM-eskola
uid=&,gid=&,dmask=0750,codepage=cp850,iocharset=utf8 - -
" >> /etc/security/pam_mount.conf

      chmod 644 /etc/security/pam_mount.conf

# SUDOERS
       if [ ! -f "/etc/sudoers.orig" ]; then
              cp /etc/sudoers /etc/sudoers.orig
       fi
       echo "
%unixadmins ALL = (ALL) ALL
" >> /etc/sudoers

      if [ ! -d "/home/$AD_DOM_IZENA" ]; then
          mkdir /home/$AD_DOM_IZENA
      fi
      chmod 777 /home/$AD_DOM_IZENA

      kinit "$AD_ADM_KONTU@$AD_KRB_ERREI"
      klist
      net ads join -U "$AD_ADM_KONTU@$AD_KRB_ERREI"

      /etc/init.d/winbind restart

                                    Página 24 de 40
Elkarnet
                                                        Implantación de Ubuntu Linux en la Escuela
}

# ============ OpenLDAP domeinura sartu ============
function on_dom_sartu {
       apt-get install -y nfs-common portmap
       apt-get install -y libpam-ldap libnss-ldap ldap-utils

# NFS konfiguratu eta berrabiarazi
    mkdir /taldeak
    mkdir /irakasleak
    echo "172.16.2.8:/home /home        nfs      auto    0 0" >> /etc/fstab
    echo "172.16.2.8:/taldeak    /taldeak        nfs     auto   0 0" >> /etc/fstab
    echo "172.16.2.8:/irakasleak /irakasleak     nfs     auto   0 0" >> /etc/fstab

       if [ ! -f "/etc/ldap/ldap.conf.orig" ]; then
              cp /etc/ldap/ldap.conf /etc/ldap/ldap.conf.orig
       fi
       mv /etc/ldap/ldap.conf /etc/ldap.conf
       ln -s /etc/ldap.conf /etc/ldap/ldap.conf
       echo "host    $OL_ZERB"
"uri   $OL_URI"
"base $OL_AUTH_OIN"
> /etc/ldap.conf

#       cp ldap.conf /etc/ldap/ldap.conf
        chmod 644 /etc/ldap.conf

# NSS
       if [ ! -f "/etc/nsswitch.conf.orig" ]; then
              cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
       fi
       echo "passwd:         compat ldap
group:           compat ldap
shadow:          compat ldap

hosts:           files dns ldap
networks:        files

protocols:       db   files
services:        db   files
ethers:          db   files
rpc:             db   files

netgroup:       nis
" > /etc/nsswitch.conf
       chmod 644 /etc/nsswitch.conf

# PAM
       for FILE in common-auth common-account common-session common-password sudo; do
              if [ ! -f "/etc/pam.d/$FILE.orig" ]; then
                     cp /etc/pam.d/$FILE /etc/pam.d/$FILE.orig
              fi
       done
echo "auth optional         pam_group.so
auth   sufficient    pam_ldap.so
auth   required      pam_unix.so nullok_secure use_first_pass
" > /etc/pam.d/common-auth

echo "accountsufficient   pam_ldap.so
account      required     pam_unix.so use_first_pass
" > /etc/pam.d/common-account

echo "session sufficient pam_ldap.so
session      required     pam_unix.so
" > /etc/pam.d/common-session

echo "password    sufficient pam_ldap.so

                                      Página 25 de 40
También puede leer