1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que...

37
1 Servicios(Jobs) Ubuntu Kepa Bengoetxea

Transcript of 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que...

Page 1: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios(Jobs)

Ubuntu

Kepa Bengoetxea

Page 2: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios/Jobs• Servicio: es una función especifica que realiza la máquina, tanto para sí

misma (syslog), como para otras(apache2).• Un servicio puede ser proporcionado por más de un daemon(apache2 y

tomcat) , o un daemon puede servir a más de un servicio (xinetd), pero lo normal es arrancar un daemon por servicio.

• Daemon: es un programa que se ejecuta en una máquina Linux, que no contiene acceso a consola y que realiza tareas del sistema. Daemon procede “day-monitors” de MULTICS (S.O tiempo compartido para mainframe GE-645 1964-1969). En 1969, comenzó el proyecto UNIX que heredó muchas cosas de los MULTICs, y les llamarón “daymons”. En EEUU se pronunciaba igual que “daemon” :D ->demonio

Page 3: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios/Jobs• Cada servicio tiene un nombre, que suele ser el nombre del demonio

servidor.• Ejm: web (apache2), ftp(proftp), postgresql(postgresql)• Arranque y parada del servicio depende de la familia de Linux que

tengas. Existen dos grandes familias:– BSD(Berkeley Software Distribution): Gentoo, Slackware ...– System V(Debian,Linex,Guadalinex,Redhat,Suse y Mandrake ...)

y– Ahora Upstart ahora (Ubuntu, Fedora, OpenSuse, Debian ...)

• LSB recomiendaba System V, y ahora Upstart para arranque/parada servicios. Nota: LSB (Linux Standard Base), es un stardard que define scripts de arranque, ubicación de directorios, que es lo mínimo en bibliotecas y programas para una distro.

Page 4: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios:Familia Sys V

• El servidor se lanza bien como un servicio independiente que está corriendo como un demonio esperando alguna petición (standalone) o bién es lanzado por el superservidor de internet (xinetd) como un servicio bajo demanda:

– Los administrados por xinetd, es decir, si xinetd esta desactivado, estos a su vez estan desactivados.

– Los servicios standalone son aplicaciones independientes que son arrancados por el proceso init en función del contenido de /etc/rc$runlevel.d/*. (xinetd es un servicio standalone)

Page 5: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios:Xinetd

• El superservidor de internet (xinetd) escucha todos los puertos de los servicios que administra y cada vez que llega una petición de un cliente, arranca el servicio correspondiente.

Page 6: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios:Standalone

• Standalone:– Si se lanza el server como standalone, este corre normalmente

por el sistema desde el arranque de la máquina y cuando un cliente lo solicita simplemente le abre una conexión. Ejm: El daemon ftp abre el puerto 21 y espera conexiones entrantes desde que se arranca el servidor. Si llega una petición crea un proceso hijo que acepta la conexión, mientras que el padre sigue escuchando dicho puerto.

daemonftp padre 21

cliente ftp21

daemonftp hijo

Page 7: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Standalone vs xinet

• Standalone:– servicio esta cargado desde que se arranca la máquina,

por lo que atiende más rápido las peticiones del cliente.• xinetd

– solo carga en memoria el servicio cuando llega la petición del cliente, por lo que consume menos recursos (menos memoria) pero el tiempo de respuesta es menor.

Page 8: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios (Al estilo System V)

Servicios Standalone:¿Cómo arrancar/parar los servicios ahora?

A)Invocando directamente a los demonios:

sudo /etc/init.d/ssh (start/stop/restart)

B)Utilizando el comando 'invoke-rc.d' es un simple shell script en ' /usr/sbin/', se usa para visualizar el estado de un servicio, para arrancar, parar o reinializar un servicio. A este comando se le pasan dos argumentos:

– nombre del servicio (el nombre del fichero en '/etc/init.d') – acción: start|stop|restart|status

sudo invoke-rc.d cron stop

Page 9: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios (Al estilo Upstart)

Servicios Standalone:¿Cómo arrancar/parar los servicios ahora?

A)Utilizando el comando inictl:

Ejm: sudo initctl stop/start/restart/status ssh

Ejm: sudo initctl emit shutdown

B)Usando los comandos stop/start/restart/status:

Ejm: sudo stop ssh

C)Utilizando el comando 'service' : A este comando se le pasan dos argumentos:

– nombre del servicio (el nombre del fichero en '/etc/init.d') – acción: start|stop|restart|status

sudo service cron stop

Page 10: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios(Al estilo System V)

Servicios Standalone:¿Cómo hacer para que cada vez que arranque la máquina se arranquen automáticamente ciertos servicios?

A)Modificando directamente los enlaces simbólicos:

ln -s /etc/init.d/ssh /etc/rc2.d/S20ssh

mv /etc/rc2.d/K80ssh /etc/rc2.d/S20ssh

B)Utilizando el comando 'update-rc.d' se gestionan automáticamente los links simbólicos:

#Borra los enlaces : update-rc.d -f ssh remove

#Crear los enlaces usando los parámetros por omisión:update-rc.d ssh defaults

#Comando equivalente usando explícitamente un conjunto de argumentos: update-rc.d foobar start 20 2 3 4 5 . stop 80 0 1 6 .

C)Modo gráfico:sudo rcconf (apt-get install rcconf)

Page 11: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios (Al estilo System V)

Servicios Standalone:¿Cómo crear o instalar los nuevos servicios?

sudo cp myscript /etc/init.d

sudo chmod +x /etc/init.d/myscript

sudo update-rc.d myscript start 51 2 3 4 5 . stop 49 0 1 6 .

Page 12: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios (Al estilo System V)

Servicios Standalone:Actualización (2 pasos)

1.-sudo update-rc.d -f ssh remove Removing any system startup links for /etc/init.d/ssh ...

/etc/rc1.d/K20ssh

/etc/rc2.d/S20ssh

...

2.-sudo update-rc.d ssh start 20 2 3 4 5 . stop 80 0 1 6 .

Adding system startup for /etc/init.d/ssh ...

/etc/rc1.d/K80ssh -> ../init.d/ssh

/etc/rc2.d/S20ssh -> ../init.d/ssh

...

Page 13: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios (Al estilo System V)

• Servicios Standalone:¿Cómo crear o instalar los nuevos servicios usando el comando sysv-rc-conf?

Con sysv-rc-conf se puede modificar y consultar los servicios para los diferentes runlevel. Libera al administrador de la tarea de manipular directamente los enlaces simbólicos en la jerarquia de directorios de “/etc/rc[0-6].d”.(Instalar: sudo apt-get install sysv-rc-conf)

sysv-rc-conf (En modo gráfico)

#ver un servicio en concreto: sysv-rc-conf --list ssh

ssh 0:off 1:off 2:on 3:on 4:on 5:on 6:off

#ver todos los servicios: sysv-rc-conf --list

#activar un servicio, para arranque en le nivel 2:

sysv-rc-conf –level 2 ssh on

Page 14: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Gestión de Servicios(Al estilo System V)

Servicios xinet usando sysv-rc-conf:

#Activar los servicios gestionados por xinetd

ls /etc/xinetd.d/

chargen daytime discard echo time

sudo sysv-rc-conf daytime on|off

#Ver si esta activo

sudo sysv-rc-conf --list daytime

daytime 2:on 3:on 4:on 5:on

#Esto es debido a:

sudo sysv-rc-conf --list xinetd

xinetd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

Page 15: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios: System V

• smb(samba)• mysqld (MySql)• ntpd (Network Time Protocol)• apache2 (Apache)• Postgresql• named(DNS)• Nfs(Net File System)

Page 16: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios: System V

• syslog (facilita a los demonios el uso de mesajes log)• autofs (automonta los sistemas de ficheros)• crond (demonio de tareas repetitivas)• cups(Common UNIX Printing System)• Anacron( Anacron is a task scheduler similar to cron except

that it does not require the system to run continuously. It can be used to run the daily, weekly, and monthly jobs usually run by cron)

• kudzu (This runs the hardware probe, and optionally configures changed hardware.)

Page 17: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios: System V

• sshd (secure shell daemon)• atd (runs commands at a specified time as scheduled by the

"at" command)• iptables (iptables firewall)• xinetd (superservidor)• sendmail(Mail Transport Agent)• Apmd (monitoring battery status and logging it via syslog. It

can also be used for shutting down the machine when the battery is low)

• ....

Page 18: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicios:xinetd

• chargen-udp,rsync,chargen,daytime-udp,daytime,echo-udp,echo,services,time-udp,cups-lpd,sgi_fam,ktalk,

• telnet,ftp

Page 19: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Ejm: crond

• Cron se encarga de lanzar tareas de manera periódica.• Cron es un demonio que busca archivos crontab en la carpeta

/var/spool/cron/crontabs/nombre_usuario(ejm: euiti), estos crontabs son cargados en memoria. Cron también lee del fichero /etc/crontab y de los ficheros que esten en la carpeta /etc/cron.d/* . Cron se despierta cada minuto examinando todos los crontabs, chequeando todos los comandos para ver si tiene que ejecutar alguno. Una vez ejecutado mandará un correo al usuario que solicitó ejecutar dicho script.

Page 20: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Ejm: crond

• Editar un fichero crontab: crontab -e

* * * * * /home/kepa/prueba.sh• El formato por columnas de un crontab:

minute 0-59

hour 0-23

day of month 1-31

month 1-12

day of week 0-7 (0 o 7 es domingo)

script, programa o comando a ejecutar

Page 21: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Ejm: crond

• Para ver los crontabs generados por un usurio:

– crontab -l -u euiti ó less /var/spool/cron/crontabs/euiti

• Borrar el crontab actual:

– crontab -r

Page 22: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Ejm: crond

• Analizando el fichero /etc/crontab• # m h dom mon dow user command• 17 * * * * root cd / && run-parts --report /etc/cron.hourly• 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --

report /etc/cron.daily )• 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --

report /etc/cron.weekly )• 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --

report /etc/cron.monthly )• En ls /etc/cron.daily/*

– less aptitude ...

Page 23: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Instalar un servicio standaloneEjm: Apache/Tomcat

• Referencia: http://www.howtogeek.com/howto/linux/installing-tomcat-6-on-ubuntu/

• Apache: – /etc/init.d/apache2 start/stop/restart

• Tomcat:– /usr/local/tomcat/bin/shutdown.sh– /usr/local/tomcat/bin/startup.sh

• Si queremos Tomcat arranque al inicio de sistema como un servicio Sys V debo crear un script de inicialización /etc/init.d/tomcat:

Page 24: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Instalar un servicio standalonescript de inicio

# description: Auto-starts tomcat

# processname: tomcat

# pidfile: /var/run/tomcat.pid

export JAVA_HOME=/usr/lib/jvm/java-6-sun

case $1 in

start)

sh /usr/local/tomcat/bin/startup.sh

;;

stop)

sh /usr/local/tomcat/bin/shutdown.sh

;;

restart)

sh /usr/local/tomcat/bin/shutdown.sh

sh /usr/local/tomcat/bin/startup.sh

;;

esac

exit 0

Page 25: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Instalar un servicio standalonescript de inicio (ubuntu)

• chmod +x tomcat• Manual: ln -s• Añade links en todos los runlevels: sudo update-rc.d tomcat start

20 2 3 4 5 . stop 80 0 1 6 .• Arranque automaticamente Tomcat al arrancar el sistema

para un runlevel 2:– sudo sysv-rc-conf –level 2 tomcat on

S80tomcat -> ../init.d/tomcat• Usarlo ya!

– invoke-rc.d tomcat start– /etc/init.d/tomcat start/stop/restart

Page 26: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

xinetd• Configuración xinetd se guarda en:/etc/xinetd.conf

• Entrada: defecto es para los servicios que no se especifica

# Simple configuration file for xinetd

# Some defaults, and include /etc/xinetd.d/

defaults

{

instances = 60

log_type = SYSLOG authpriv

log_on_success = HOST PID

log_on_failure = HOST

cps = 25 30

}

includedir /etc/xinetd.d

Page 27: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

xinetd• Si vemos el contenido de /etc/xinetd.d:

ls -lias /etc/xinetd.d

chargen daytime echo-udp klogin ktalk time-udp

chargen-udp daytime-udp eklogin krb5-telnet rsync

cvs echo gssftp kshell time

Page 28: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

xinetd

Less cvs: service cvspserver

{ disable = yes

port = 2401

socket_type = stream

protocol = tcp

wait = no

user = root

passenv = PATH

server = /usr/bin/cvs

env = HOME=/var/cvs

server_args = -f --allow-root=/var/cvs pserver

# bind = 127.0.0.1}

Page 29: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Administrar los servicios xinetd:proftp

Bajar paquetes del sitio oficial de proftp:

tar -zxvf proftp.tar.gz

cd proftp

./configure --enable-shadow

make

make install

Page 30: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Administrar los servicios xinetd:proftp

• El fichero de configuración es:/usr/local/etc/proftpd.conf

ServerName "Cudeso FTP"

ServerType inetd/standalone

DefaultServer on

SystemLog /var/log/proftp

Port 21

Umask 006

MaxInstances 30

User nobody

Group nobody

RequireValidShell off

# Normally, we want files to be overwriteable.

<Directory /*> AllowOverwrite on</Directory>

Page 31: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Administrar los servicios xinetd:proftp

• Para que funcione con xinetd, se añade en vi /etc/xinetd.d/proftp

service ftp

{ flags = REUSE

socket_type = stream

instances = 50

wait = no

user = root

server = /usr/local/sbin/proftpd

bind = 192.168.1.1

log_on_success = HOST PID

log_on_failure = HOST RECORD}

Page 32: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Modelo Cliente/Servidor• Gestionar entre varios procesos el uso de los recursos, obliga al S.O a

modelarlo adecuadamente usando el Cliente/Servidor.

• Procesos de usuario o clientes realizan peticiones de uso de recursos a

los procesos servidores o gestores.

• Un daemon es un proceso servidor codificado como si fuese un proceso

de usuario (realizando llamadas al sistema) pero que se ejecutan con

mayor prioridad que estos. Se ejecutan en background y realiza un

servicio de sistema de manera continuada (pensar en un while true. ¿os

suena?)

Page 33: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Servicio gestor_x(){

Inializar_estructuras_eventos();

While (true){

#se bloquea esperando una pet. cliente

Esperar_evento();

#desencola la info

sacar_peticion_gestor_x(evento);

#inicia rut_atención

iniciar_operación_pedida();

#avisa fin evento

señalar_evento(evento);}}

llamada_a_sistema_cliente_x()

{#encola la info necesaria

poner_pet_gestor_x(mi_event)

#despierta el gestor

señalar_evento(Gestor_x)

#espera a la señal del gestor

esperar_evento(mi_event)

}

Page 34: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Mejorar la seguridad• ps -aux | grep ssh

• sudo sysv-rc-conf

• netstat -an

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 127.0.0.1:2208 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:2207 0.0.0.0:* LISTEN

tcp6 0 0 :::22 :::* LISTEN

udp 0 0 0.0.0.0:32768 0.0.0.0:*

udp 0 0 0.0.0.0:68 0.0.0.0:*

udp 0 0 0.0.0.0:5353 0.0.0.0:*

Hay puertos que son fáciles de reconocer como: el puerto 22 para ssh, pero hay otros que no son tan obvios.

Page 35: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Mejorar la seguridad

• ¿Cómo saber qué servicio es el encargado de abrir el puerto TCP 22? lsof -i tcp:22

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

ssh 17191 kepa 3u IPv4 26677 TCP local:46254->bppxqs.bp.ehu.es:ssh (ESTABLISHED)

sshd 10814 kepa 3u IPv6 229439 TCP *:ssh (LISTEN)

• nmap localhost/ip: para saber que servicios estoy/estan ofreciendo

PORT STATE SERVICE

PORT STATE SERVICE

22/tcp open ssh

25/tcp open smtp

631/tcp open ipp

Page 36: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Mejorar la seguridad• less /etc/services:

– encontramos los servicios en que puertos debería correr:#service-name port/protocol [aliases ...] [# comment]

ssh 22/tcp # SSH Remote Login Protocol

ssh 22/udp

smtp 25/tcp #exim4 mail agent

ipp 631/tcp # Internet Printing Protocol

ipp 631/udp

– Quitar

/etc/init.d/exim4 stop

sudo update-rc.d -f exim4 remove

ln -s /etc/init.d/exim4 /etc/rc2.d/K80exim4

System → Administration → Services:Find and deselect Mail agent

Page 37: 1 Servicios(Jobs) Ubuntu Kepa Bengoetxea. 1 Servicios/Jobs Servicio: es una función especifica que realiza la máquina, tanto para sí misma (syslog),

1

Mejorar la seguridad• Pero si no tengo este servicio activo: lsof -i tcp:25• En /etc/init.d, se encuentran los script de arranque de los

demonios, no los que controlan los puertos, recordemos que un servicio que necesita comunicacion con la red, lleva asociado un puerto de comunicaciones, entonces si levantamos el demonio de ssh, debemos de tener el puerto 22 abierto, aunque no lo deseemos, pero podemos bloquear los puertos, con iptables o firestarter

• iptables -L• sudo aptitude install firestarter