Cómo monté mi servidor - Necesito nuevo kernel...

8 - Necesito nuevo kernel...

[editar]
Tutorial creado por Daniel Clemente. Extraido de: http://www.mononeurona.org/index.php?idp=230
27 de Octubre de 2005

...pero no tengo red ni CD, y estoy cansado de los disquets. La tarjeta de red PCMCIA me funcionará después, con el kernel nuevo.

Lo que hice fue pasarle los archivos por wireless (en mi universidad, la UPC), con una tarjeta que no costó mucho configurar. Una vez hecho esto ya no usé más el wireless.


¿y qué kernel le pongo?

En principio yo quería un 2.2, porque es el que lleva más años probando su seguridad y porque no necesito características especiales; pero luego descubrí que si conseguía hacerlo funcionar era a base de parches: para ext3, para la tarjeta de red, para pcmcia, ... en fin, que no lo veía muy elegante. Al final me decidí por un 2.4.24 sólo por esto, por ser más 'limpio'. El 2.6 no me sirve, es demasiado nuevo para poner en un servidor.


Parches del kernel

Al 2.4.24 le apliqué el parche patch-2.4.25-pre8, que contiene las cosas nuevas que se le añadieron al 2.4.24 cuando lo bajé.

Tenía interés especial en 'arreglar' una cosa que me parece que deberían tener todos los sistemas operativos: la sección de datos de la pila no debe ser ejecutable. Así se evitan los 'buffer overflows' en los que se mete código en un sitio donde sólo tendría que haber datos (texto, números, ... pero no instrucciones).

Hay varios parches que hacen estas cosas, por ejemplo GrSecurity, OpenWall, HAP, LIDS o StackGuard. Me quedé con OpenWall porque es mucho más sencillo y menos ambicioso que GrSecurity, y porque funciona también en kernels 2.2 (por si acaso...). Cuidado: esto no hace maravillas; si hay algún bug de BOF, alguien puede explotarlo si le interesa, pero le costará más. Como ejemplo hay que leer la Phrack 56 (o en español).

make menuconfig

En total recompilé unas 20 veces el kernel... pero ya tenía las ideas claras desde el principio, así que me quedó bastante bien a la primera; el resto fue para arreglar imprevistos (ver siguiente punto). Los detalles:

  • 2.4.25-pre8menuconfig
  • parche OpenWall: linux-2.4.24-ow1
  • monolítico (sin módulos, ni siquiera los de la PCMCIA de red)
  • Sin: agp, apm, alsa, fb, i2c, isa, pnp, scsi, usb, v4l
  • Con: 8139too, ide, pci, pcmcia
  • Con soporte para red e iptables
  • Con las optimizaciones adecuadas, por ejemplo la opción de Toshiba

La maldita 100tcl no va

La PCMCIA de red, la meto y no pasa nada (ni logs ni ruidos ni luces ni nada). Por un mensaje perdido en Internet descubro la posibilidad de que se arregle poniendo en la BIOS que las PC Card han de funcionar en modo 16 bits. Lo pruebo, y funciona (la detecta). Me pasé días con esto.


Kernel monolítico

Pues sí, esto me dio algunos problemas, sobre todo con la tarjeta de red PCMCIA (que puede estar conectada o desconectada). Al final conseguí que todo fuera muchísimo mejor (cargaba lo necesario nada más conectar, instantáneamente) y pude quitar el paquete pcmcia-cs, porque ya nadie tenía que decidir cuál era el módulo apropiado para cargar.

Por cierto, el kernel me ocupó 724 kb, los módulos nada... :-) y carga rapidísimo.


100 Mbits

Cuando me fue la tarjeta de red, descubrí estas velocidades de 1'5 Mb/s. ¡Ojalá el ADSL estándar en España fuera así de rápido!

Por suerte había preparado todo para que fuera compatible con 100 Mbits: la tarjeta de red era 10/100, el switch también y la que ya tenía en mi PC también. El router 3Com 812 sólo va a 10 Mbits... :-( pero bueno, no hago muchas más conexiones por mi red.


Paquetes

Quité muchos programas que no necesitaba. Al final me quedé sólo con 129 paquetes... y con muchas cosas innecesarias y peligrosas que hacen todo más interesante, como nc, gcc, nmap o tcpdump.

El servidor web y el de ftp los compilé a mano.

[editar]

26 opiniones

Buen tutorial.

Está guay. Yo estoy buscando una idea también sobre el hardware apropiado y creo que lo mejor de lo mejor es esa maravilla que comentas más arriba. Ese mini ordenador que consume poquísimo y no hace nada de ruido. Es cierto que el precio es un poco elevado, pero creo que vale la pena porque se amortizará y es extremadamente cómodo. Creo que optaré por uno de esos.

Está muy bueno lo que hiciste, muy buen trabajo. Pero que servidor usas? por lo que mencionas del flujo de usuarios parece que podrías aprovechar mucho más el rendimiento de la compu. Windows server 2008 te deja controlar muchas de esas opciones de accesibilidad, deberías probarlo a ver como te funciona.
Atencion !!!!.

Hola ! tengo una empresa de arquitectura web y necesito algún proveedor de servidor web para trabajar... Por favor ! tengo mucho trabajo. Al que le interese escríbame al correo. Gracias !!!!!!!!!!!!!.
Gracias!!!.

Sr daniel clemente:

muchas gracias por este excelente trabajo. Saluda atte maximiliano.
Excelente.

Actualmente acabo de adquirir 2 servidores ibm rs6000 me estoy iniciando en esto y van para el mismo proposito si alguien tiene mas conocimiento sobre esto me interesa platicar con el para resolver mis dudas ;) gracias.
1 2 3 4 5 6 | siguiente >

Tutoriales relacionados con 'Cómo monté mi servidor'

Las páginas que estás viendo están alojadas en mi propio servidor (IP 217. 126.10.173), que... Más »
¿Qué es una imagen ISO? Las imágenes ISO son archivos que siguen los estándares ISO-9660... Más »
Curso que profundiza en el gestor de montones (o montículos) dentro de Win32, así como... Más »
Manual para Slackware 10. 0 en el que prescindiremos de usar las X. Esto puede... Más »
Este es un curso sin ninguna relevancia. Pretende ser una pequeña introducción para todos mis... Más »

Autor y licencia de 'Cómo monté mi servidor'


Tutorial de Daniel Clemente. Extraido de: http://www.mononeurona.org/index.php?idp=230 CopyLeft
Este trabajo está licenciado bajo la Creative Commons License. 1999-2005 © :: MonoNeurona.org ::
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.