[ubuntu-ar] Sysadmin vol. 1 [ERA: Curso sysadmin?]

Zeroadrenaline zeroadrenalinux at gmail.com
Wed Jun 22 04:58:31 UTC 2011


Antes que nada me gustaría aclarar que ser administrador de sistemas no 
es algo que uno pueda aprender en un curso.
En nuestro país las carreras de sistemas no hacen foco en esta cuestión 
(salvo en exactas quizá, pero tampoco demasiado). Ser administrador de 
sistemas
es una profesión, y no uso la palabra a la ligera, que no este 
profesionalizado el trabajo no significa que no lo sea. Hoy en día en el 
mercado ser programador vale mas que ser administrador. El programador 
programa, el administrador administra .... repara, compra, tira, arma, 
desarma, cablea, atiende teléfonos, en fin, la culpa no es del chancho, 
pero quería aclararlo porque me gustaría que eso empiece a cambiar y se 
le de al sysadmin el lugar en el mercado que yo creo que merece.

Bueno, yendo al tema puntual: leí por ahí alguien que es programador y 
dijo estar cansado de eso, y que quiere empezar a interiorizarse en 
temas relativos a la administración. Bueno camarada, ojo al piojo, parte 
de ser admin es automatizar, y para eso hay que saber programar y mucho. 
Se da un debate permanente entre programadores y admines, como una 
especie de inocente boca vs river, y la verdad me parece tonto, porque 
ninguno es un profesional completo si no perfecciona al menos un poco 
los contenidos que maneja el otro, así que dicho esto, admines a 
aprender a programar y programadores a casar un switch de 24 bocas.

Voy a tirar algunos temas que creo que son básicos para iniciarse y los 
links que yo creó tienen data interesante al respecto. Lógicamente se me 
pueden escapar ciertas cosas, y no puedo dar 100% seguridad sobre todos 
los links pero voy a hacer mi mejor esfuerzo.

En principio hay que tener en claro que administrar sistemas gnu/linux 
es como muy abarcativo. Tenemos toda la familia de software para 
networking, servicios web, servicios complementarios (backup, monitoreo, 
documentación, etc), bases de datos, telefonía IP, y un sin fin de 
disciplinas. Todas ellas requieren de un conocimiento básico: MANEJO DE 
CONSOLA!.

* Aclaración: es importante que sepan lo que es el servicio de SSH, como 
funciona y como habilitarlo de movida en su servidor para que usarlo sea 
mas amigable: LEER ANTES QUE NADA 
<http://www.kindawannadothat.com/2009/02/install-an-ssh-server-on-your-debian-ubuntu-server/>

Así que ahí vamos:

1_ Comandos básicos de consola:

http://ss64.com/bash/

Todo dicho, de la A a la Z, todos los comandos de consola disponibles y 
para que sirven.Esta en ingles pero es muy clarito.

Y este otro para hacerlo bien didáctico y completo (En este link van a 
leer cosas sobre como están dispuestos los archivos en todo el árbol de 
directorios de un sistema gnu/linux like, manipulación de archivos, 
redirigir salidas de la pantalla a otros proceso/archivos, manejo de 
permisos y control de procesos entre otras cosas)

http://linuxcommand.org/learning_the_shell.php

Perfecto, ya sabemos usar el terminal. Que, cansado? Querías aprender 
sin leer nada? ..... error.

Sigamos adelante:

2_ Networking

De temas intrínsecos a la configuración de placas, y ese tipo de cosas 
ya vieron algo en los links anteriores, ahora nos vamos a meter con 
temas de redes, algo que puede que para muchos sea aburrido pero les 
aseguro que en una red hogareña se pueden hacer un montón de cosas tan 
copadas que se pasarían la vida entera.

Herramientas básicas:

     _ DNS <http://en.wikipedia.org/wiki/Domain_Name_System> (link a 
wikipedia)

         Un dns es simplemente un servicio que mapéa direcciones IP con 
nombres de dominio (domain names, o hostnames), directa o 
escalonadamente (no se si         es el término correcto). Básicamente 
permite dentro de una red, acceder a la PC de tu hermana como "lagorda" 
y no como "192.168.0.103", cuando la red         escala (se hace mas 
grande), es muy útil. Uno de los más comunes es BIND y es del cual voy a 
dejarles links.

         
http://www.debian.org/doc/manuals/network-administrator/ch-bind.html

     _* DHCP 
<http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol> (link 
a wikipedia)

         Este servicio es quizás mas popularmente conocido ya que si en 
tu casa tenes un router, habrás leído por ahí mas o menos lo que hace. 
Para los                     colgados, el servicio (o mejor dicho 
protocolo) DHCP (leer link de wikipedia en el asterisco mas arriba ;) 
vamos, no seas vago).
         Entrega IPs asociadas a la MAC address (el D.N.I. de la placa 
de red..... por dios, que ejemplos que estoy dando) que tenga la placa 
de red que la solicita.
         En linux existen algunos servicios de DHCP y nosotros vamos a 
hablar de dhcpd (la "d" es por demonio, corre en background).Si tenes 
una Pentium 2 en         tu casa y no sabías que hacer con ella, ponele 
2 plaquitas de red, si se puede que una wifi también y le tiras un 
debian adentro, un poquito de dedos                 mágicos y tenes un 
DHCP server para tu lan hogareña (o te pensás que el router linksys 
tiene mucho mas hardware que eso champion? ;) )

         http://oob.freeshell.org/nzwireless/dhcpd.html

     _ Router <http://en.wikipedia.org/wiki/Router> (...)

         La PC de nuestra hermana ya tiene una IP de la misma red que 
nuestra PC porque se la dio nuestro querido DHCPD, también sabemos como 
acceder a la
         máquina sin tener que saber que IP tiene porque sabemos su 
hostname y con ayuda de nuestro BIND llegamos a ella. Pero tenemos un 
problema:tu                 máquina no esta conectada físicamente a la 
de tu hermana, sino que esta conectada a través del server (o con un 
switch...ponele :S ). Si yo quiero trabajar         en la pc de mi 
hermana, o quiero generar tráfico de red entre nuestras máquinas, 
alguien tiene que saber administrar ese tráfico (como una operadora     
         telefónica antiguamente sabía dirigir llamadas desde un 
conmutador). Ahí es donde nuestro router aparece en acción. Un router no 
es mas que un equipo
         con un listado de instrucciones precisas y claras sobre para 
que lado tiene que tirar cada paquete (bien criollo). Nuestro linux by 
default puede hacer ese
         trabajo MUY BIEN, así que los dejo en manos de estos dos amigos 
"route" y "iproute2"

          http://linux-ip.net/html/tools-route.html
          http://linux-ip.net/html/tools-ip-route.html

3_ Servicios web

         _ Web server
         Acá hay que hacer un GRAAAAAAAN libro, pero voy solamente a 
aclarar puntos básicos. Para que un sitio web exista, tiene que estar 
alojado en algún                 lado. Cuando alguien desde un navegador 
quiere acceder al sitio (utilizando el hostname que un DNS parecido al 
nuestro sabe resolver) el servidor a donde         llega el pedido y 
donde esta alojado físicamente el sitio, debe saber reconocer el pedido 
(estar escuchando por si alguien pide datos), interpretar ese         
         pedido, resolverlo y devolver el contenido solicitado.
         Esos 4 pasos básicos son los que debe cumplir cualquier 
servicio de red para poder funcionar, di el caso de un servidor web 
porque es bastante claro.
         Ahora bien, un servidor web es un equipo que cuenta con un tipo 
de software instalado el cual le permite escuchar pedidos de un 
navegador,                             reconocerlos como pedidos de su 
servicio web, interpretar el pedido para poder buscar dentro de los 
sitios que aloja cual es el que solicita el usuario y             
devolver el contenido del sitio.
         Toooodo ese trabajo lo hacen un montón de aplicaciones 
diferentes, de diferentes maneras, pero de las mas populares es Apache. 
En particular, hoy                 Apache2, y nos vamos a enfocar en el.

         
http://zeroadrenaline.com/httpdocs/wp-content/uploads/files/LinuxDebianServerByForat.pdf
         (cabe aclarar que ese PDF no es mío sino que es gentileza de 
FORAT 
<http://www.forat.info/2008/03/05/como-montar-un-servidor-web-con-linux-debian/>)

         _ DB Server
         Tiene sentido que si instalamos un servidor web para mostrar 
sitios, seguramente vamos a estar interesado en tener algún que otro 
servicio corriendo
         en nuestro servidor (una wiki por ejemplo) que necesiten de una 
base de datos para alojar toda la info que le vayamos tirando con el uso.
         Existen distintos tipos de bases de datos, por ejemplo las hay 
relacionales y no relacionales. En en común de los casos nos va a 
interesar trabajar con
         bases de datos del tipo SQL, y para ello podemos utilizar 
motores como MySQL o PostgreSQL. Cualquiera de los 2 son muy buenas 
alternativas, en cuanto         a desempeño, documentación, fiabilidad y 
una comunidad de usuarios y desarrolladores que los banca, así que para 
no discriminar dejo links de los 2.

         http://www.esdebian.org/wiki/mysql-debian
         http://www.stuartellis.eu/articles/postgresql-setup/

4_Otro tipo de Servicios

         Creo que ya con esto tienen para un rato largo, y seguramente 
va a dar para mucho. Les dejo un listado de cosas copadas que se pueden 
hacer con                 servidores en linux para que sea disparador de 
nuevos mails.

         _ Compartir archivos y recursos (FTP, SFTP, SSH, Samba...)
         _ Streaming multimedia (mpd, flowplayer, ...)
         _ Mails (sendmail, postfix)
         _ Telefonía IP (asterisk)
         _ Clustering (heartbeat, ldirectord)
         _ Backup (bacula, rsync)

Supongo que me debo estar olvidando de un montón de cosas y también 
sospecho que mas de un purista me va a buscar en la próxima reunión para 
matarme a trompadas, pero espero que entiendan que me tome este trabajo 
porque vi que había gente interesada en el tema y creo que da para mucho 
mas.

Sepan que como dije antes, ser admin no es un trabajo del pibito que 
sabe de computadoras, así como tampoco lo es ser programador, SOMOS HACKERS,
profesionales del uso de computadoras, y hay que empezar a meterse un 
poco en ese plan, comerse un poco la película como quien dice. No se a 
ustedes pero a mi no me gusta que no se valore comercialmente mi 
conocimiento por que el sistema académico no lo contempla. Mejor lo dejo 
ahí.

Por favor no respondan a este mail en el hilo porque ya lo hice muy 
largo yo, si la seguimos por acá se va a hacer una biblia. De ultima 
abrimos un hilo nuevo que se llame "Sysadmin vol. 2" XD

Se me cuidan, y sepan que este material (seguramente mas prolijo y 
chequeado) va a estar disponible en MI BLOG <http://zeroadrenaline.com> 
( te tire el chivito ;) ).

PD: no se quejen, pase el corrector ortográfico.

Abrazo.

-- 
+-----------------------------------+
| ZEROADRENALINE                    |
| System Administrator              |
| zeroadrenalinux en gmail.com         |
| www.zeroadrenaline.com	    |
+-----------------------------------+

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://lists.ubuntu.com/archives/ubuntu-ar/attachments/20110622/040f8dfe/attachment-0001.html>


More information about the Ubuntu-ar mailing list