Zamora Teran/Instalar XSCE 5.0: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Created page with '== Instalar Fedora 18 == # Bootear desde el DVD de Fedora 18 (32 bits). # Elegir las siguientes opciones: * Idioma: English * Localization: Managua/Nicaragua * Keyboard: English …')
 
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
= XSCE 5.0 =

Proceso para instalar y configurar un servidor XSCE 5.0.

== Instalar Fedora 18 ==
== Instalar Fedora 18 ==
# Bootear desde el DVD de Fedora 18 (32 bits).
* Bootear desde el DVD de Fedora 18 (32 bits).
# Elegir las siguientes opciones:
* Elegir las siguientes opciones:

* Idioma: English
{| border="1" cellpadding="0" cellspacing="5"
* Localization: Managua/Nicaragua
|-
* Keyboard: English (US)
|Idioma:
# En las opciones de particiones establecerlo de la siguiente manera:
|English
* Eliminar la particion /home y reasignar el espacio a /
|-
* /boot -> 500 MB (default)
|Localization:
* swap -> 4.0 GB (default)
|Managua/Nicaragua
* / -> 472.4 GB (resto del disco duro)
|-
# En la opciones de "Software Selection" elegir "Minimal Install"
|Keyboard:
# Presionar "Begin Installation"
|English (US)
# Establecer la contraseña de "root"
|-
# Editar los repositorios "fedora" y "fedora-updates" para que apunten a los repositorios locales.
|Software Selection
# Deshabilitar "SELinux".
|Minimal Install
# Instalar paquetes básicos "vim, htop, wget, net-tools, tmux, git, ansible".
|}
# Actualizar el sistema con "yum update -y".

# Reiniciar el Sistema.
* En las opciones de particiones establecerlo de la siguiente manera:
* Eliminar la partición '''/home''' y reasignar el espacio a la partición '''/'''
{| border="1" cellpadding="0" cellspacing="0"
|-
|swap
|4.0 GB
|-
|/boot
|500 MB
|-
|/
|Resto del disco duro
|}
* Presionar '''Begin Installation'''
* Establecer la contraseña de '''root'''
* Editar los repositorios '''fedora''' y '''fedora-updates''' para que apunten a los repositorios locales.
baseurl=http://192.168.1.1/mirror/Fedora-18-i386/
baseurl=http://192.168.1.1/mirror/Fedora-18-i386-updates/
* Deshabilitar '''SELinux''', editar el archivo '''/etc/selinux/config'''
SELINUX=disabled
* Instalar paquetes básicos
yum -y install vim htop wget net-tools tmux git ansible
* Actualizar el sistema.
yum -y update
* Reiniciar el Sistema.
reboot


== Instalar XSCE desde GIT ==
== Instalar XSCE desde GIT ==
* Seguir las instrucciones descritas acá [https://github.com/XSCE/xsce/blob/release-5.0/docs/INSTALL.rst Documentación XSCE 5.0]
* Clonar el repositorio desde Github.
cd ~/
git clone --branch release-5.0 --depth 1 https://github.com/XSCE/xsce
cd xsce
* Editar los siguientes archivos '''roles/xsce-addons/meta/main.yml''' y comentar la siguiente línea:
# - { role: pathagar, tags: ['pathagar','addons'] }
* Editar el archivo '''xsce.yml'''
- xsce_domain: escuela.departamento.fundacionzt.org
* Ejecutar '''ansible'''
./runansible
* En caso de que falle algún modulo, correr nuevamente el módulo que presentó el problema, por ejemplo:
ansible-playbook -i ansible_hosts xsce.yml --connection=local --tags="ajenti"

== Instalar el Sistema de Activaciones ==
* Instalar siguientes paquetes
yum -y install xs-activation mod_python olpc-bios-crypto
* Editar el archivo de la configuración de la interface '''LAN'''
vim /etc/sysconfig/network-scripts/ifcfg-p2p1
* Agregar la siguiente configuración
IPADDR2=172.18.0.1
NETMASK2=255.255.255.0
* Establecer las configuraciones para que xs-activación inicie.
/etc/sysconfig/olpc-scripts/setup.d/xs-activation

== Limitar conexion solo XO ==
=== DHCP ===
* Editar el archivo de configuración de '''DHCP'''
vim /etc/dhcpd-xs.conf
* Agregar las direcciones MAC antes de la sección subnet-
class "xo1"{
match if (substring(hardware,1,3)=00:17:c4);
}
class "xo15"{
match if (substring(hardware,1,3)=20:7c:8f);
}
class "xo175"{
match if (substring(hardware,1,3)=68:a3:c4);
}
* Comentar la línea del rango de direcciones IP dentro de la sección subnet.
# range 172.18.96.2 172.18.125.254;
* Agregar los pools para dar direcciones IP a las XO
pool {
range 172.18.96.2 172.18.123.254;
allow members of "xo1";
allow members of "xo15";
allow members of "xo175";
}
pool {
range 172.18.125.1 172.18.125.254;
deny members of "xo1";
deny members of "xo15";
deny members of "xo175";
}
* Guardar los cambios y reiniciar el servicio '''DHCP'''
systemctl restart dhcpd.service

=== SQUID ===
* Agregar la opción '''transparent''' en la siguiente línea
http_port 0.0.0.0:3130 transparent

=== DANSGUARDIAN ===
* Detener el servicio '''Dansguardia'''
systemctl stop dansguardian.service

=== IPTABLES ===
* Editar el archivo '''/usr/bin/xs-gen-iptables''' para denegar las conexiones provenientes del rago '''172.18.125.0/24'''
...
# drop connections from other (172.18.125.0/24)
# agregar esta línea
$IPTABLES -A FORWARD -o $wan -s 172.18.125.0/24 -j DROP
# Allow outgoing connections from the LAN side.
# esta línea ya está
$IPTABLES -A FORWARD -i $lan -o $wan -j ACCEPT
...
if [ -f /etc/sysconfig/xs_httpcache_on ]; then
#$IPTABLES -t nat -A PREROUTING -i $lan -p tcp --dport 80 ! -d 172.18.96.1 -j DNAT --to 172.18.96.1:3128
$IPTABLES -t nat -A PREROUTING -i $lan -p tcp --dport 80 ! -s 172.18.125.0/24 -j DNAT --to 172.18.96.1:3130
fi

* Verificar que las reglas de '''IPTABLES''' están realizando lo deseado:
[root@schoolserver ~]# iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
11703 1465K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
2592 425K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
665 58879 ACCEPT all -- p2p1 * 0.0.0.0/0 0.0.0.0/0 ctstate NEW
76 13636 ACCEPT udp -- * * 0.0.0.0/0 224.0.0.251 udp dpt:5353
0 0 ACCEPT tcp -- p1p1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ctstate NEW
5830 657K DROP all -- p1p1 * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
70 3837 ACCEPT all -- p1p1 p2p1 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
12238 716K DROP all -- * p1p1 172.18.125.0/24 0.0.0.0/0
99 5148 ACCEPT all -- p2p1 p1p1 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- p1p1 p2p1 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 14965 packets, 2705K bytes)
pkts bytes target prot opt in out source destination

Latest revision as of 21:00, 24 July 2014

XSCE 5.0

Proceso para instalar y configurar un servidor XSCE 5.0.

Instalar Fedora 18

  • Bootear desde el DVD de Fedora 18 (32 bits).
  • Elegir las siguientes opciones:
Idioma: English
Localization: Managua/Nicaragua
Keyboard: English (US)
Software Selection Minimal Install
  • En las opciones de particiones establecerlo de la siguiente manera:
  • Eliminar la partición /home y reasignar el espacio a la partición /
swap 4.0 GB
/boot 500 MB
/ Resto del disco duro
  • Presionar Begin Installation
  • Establecer la contraseña de root
  • Editar los repositorios fedora y fedora-updates para que apunten a los repositorios locales.
baseurl=http://192.168.1.1/mirror/Fedora-18-i386/
baseurl=http://192.168.1.1/mirror/Fedora-18-i386-updates/
  • Deshabilitar SELinux, editar el archivo /etc/selinux/config
SELINUX=disabled
  • Instalar paquetes básicos
yum -y install vim htop wget net-tools tmux git ansible 
  • Actualizar el sistema.
yum -y update
  • Reiniciar el Sistema.
reboot

Instalar XSCE desde GIT

cd ~/
git clone --branch release-5.0 --depth 1 https://github.com/XSCE/xsce
cd xsce
  • Editar los siguientes archivos roles/xsce-addons/meta/main.yml y comentar la siguiente línea:
# - { role: pathagar, tags: ['pathagar','addons'] }
  • Editar el archivo xsce.yml
- xsce_domain: escuela.departamento.fundacionzt.org
  • Ejecutar ansible
./runansible
  • En caso de que falle algún modulo, correr nuevamente el módulo que presentó el problema, por ejemplo:
ansible-playbook -i ansible_hosts xsce.yml --connection=local --tags="ajenti"

Instalar el Sistema de Activaciones

  • Instalar siguientes paquetes
yum -y install xs-activation mod_python olpc-bios-crypto
  • Editar el archivo de la configuración de la interface LAN
vim /etc/sysconfig/network-scripts/ifcfg-p2p1
  • Agregar la siguiente configuración
IPADDR2=172.18.0.1
NETMASK2=255.255.255.0
  • Establecer las configuraciones para que xs-activación inicie.
/etc/sysconfig/olpc-scripts/setup.d/xs-activation

Limitar conexion solo XO

DHCP

  • Editar el archivo de configuración de DHCP
vim /etc/dhcpd-xs.conf
  • Agregar las direcciones MAC antes de la sección subnet-
class "xo1"{
       match if (substring(hardware,1,3)=00:17:c4);
}
class "xo15"{
       match if (substring(hardware,1,3)=20:7c:8f);
}
class "xo175"{
       match if (substring(hardware,1,3)=68:a3:c4);
}
  • Comentar la línea del rango de direcciones IP dentro de la sección subnet.
# range                           172.18.96.2 172.18.125.254;
  • Agregar los pools para dar direcciones IP a las XO
       pool {
               range 172.18.96.2 172.18.123.254;
               allow members of "xo1";
               allow members of "xo15";
               allow members of "xo175";
       }
       pool {
               range 172.18.125.1 172.18.125.254;
               deny members of "xo1";
               deny members of "xo15";
               deny members of "xo175";
       }
  • Guardar los cambios y reiniciar el servicio DHCP
systemctl restart dhcpd.service

SQUID

  • Agregar la opción transparent en la siguiente línea
http_port 0.0.0.0:3130 transparent

DANSGUARDIAN

  • Detener el servicio Dansguardia
systemctl stop dansguardian.service

IPTABLES

  • Editar el archivo /usr/bin/xs-gen-iptables para denegar las conexiones provenientes del rago 172.18.125.0/24
...
   # drop connections from other (172.18.125.0/24)
   # agregar esta línea
   $IPTABLES -A FORWARD -o $wan -s 172.18.125.0/24 -j DROP
   # Allow outgoing connections from the LAN side.
   # esta línea ya está
   $IPTABLES -A FORWARD -i $lan -o $wan -j ACCEPT
...
if [ -f /etc/sysconfig/xs_httpcache_on ]; then
  #$IPTABLES  -t nat  -A PREROUTING -i $lan -p tcp --dport 80 ! -d 172.18.96.1 -j DNAT --to 172.18.96.1:3128
   $IPTABLES  -t nat  -A PREROUTING -i $lan -p tcp --dport 80 ! -s 172.18.125.0/24 -j DNAT --to 172.18.96.1:3130
fi
  • Verificar que las reglas de IPTABLES están realizando lo deseado:
 [root@schoolserver ~]# iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
11703 1465K ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
 2592  425K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
  665 58879 ACCEPT     all  --  p2p1   *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
   76 13636 ACCEPT     udp  --  *      *       0.0.0.0/0            224.0.0.251          udp dpt:5353
    0     0 ACCEPT     tcp  --  p1p1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22 ctstate NEW
 5830  657K DROP       all  --  p1p1   *       0.0.0.0/0            0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   70  3837 ACCEPT     all  --  p1p1   p2p1    0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
12238  716K DROP       all  --  *      p1p1    172.18.125.0/24      0.0.0.0/0           
   99  5148 ACCEPT     all  --  p2p1   p1p1    0.0.0.0/0            0.0.0.0/0           
    0     0 DROP       all  --  p1p1   p2p1    0.0.0.0/0            0.0.0.0/0           
Chain OUTPUT (policy ACCEPT 14965 packets, 2705K bytes)
 pkts bytes target     prot opt in     out     source               destination