Zamora Teran/Instalar XSCE 5.0: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
(7 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: |
||
{| border="1" cellpadding=" |
{| border="1" cellpadding="0" cellspacing="5" |
||
|- |
|- |
||
|Idioma: |
|Idioma: |
||
Line 13: | Line 17: | ||
|Keyboard: |
|Keyboard: |
||
|English (US) |
|English (US) |
||
|- |
|||
|Software Selection |
|||
|Minimal Install |
|||
|} |
|} |
||
* En las opciones de particiones establecerlo de la siguiente manera: |
* En las opciones de particiones establecerlo de la siguiente manera: |
||
* Eliminar la |
* Eliminar la partición '''/home''' y reasignar el espacio a la partición '''/''' |
||
{| border="1" cellpadding="0" cellspacing="0" |
|||
* /boot -> 500 MB (default) |
|||
|- |
|||
* swap -> 4.0 GB (default) |
|||
|swap |
|||
* / -> 472.4 GB (resto del disco duro) |
|||
|4.0 GB |
|||
* En la opciones de "Software Selection" elegir "Minimal Install" |
|||
|- |
|||
* Presionar "Begin Installation" |
|||
|/boot |
|||
* Establecer la contraseña de "root" |
|||
|500 MB |
|||
* Editar los repositorios "fedora" y "fedora-updates" para que apunten a los repositorios locales. |
|||
|- |
|||
* Deshabilitar "SELinux". |
|||
|/ |
|||
* nano /etc/selinux/config |
|||
|Resto del disco duro |
|||
* SELINUX=disabled |
|||
|} |
|||
* 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 |
* Instalar paquetes básicos |
||
yum -y install vim htop wget net-tools tmux git ansible |
|||
* Actualizar el sistema. |
* Actualizar el sistema. |
||
yum -y update |
|||
* Reiniciar el Sistema. |
* Reiniciar el Sistema. |
||
reboot |
|||
== Instalar XSCE desde GIT == |
== Instalar XSCE desde GIT == |
||
Line 48: | Line 63: | ||
* En caso de que falle algún modulo, correr nuevamente el módulo que presentó el problema, por ejemplo: |
* 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" |
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
- Seguir las instrucciones descritas acá 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