2009-01-02

Servidor Linux Casero

0 comentarios
Este documento es una guia de referencia para acordarme de todas aquellas configuraciones que voy modificando con el tiempo a mi servidor ( ahora mismo un Fedora Core 5 en un servidor Primergy P3 bastante antiguo , pero que para el caso, va de perlas ).

NO es una guia para poner un servidor en produccion ni mucho menos ya que de por si el esquema de servicios no es el adecuado. Este servidor me sirve de pruebas en diferentes campos , este escrito es una recopilación de notas mentales.



La idea es tener un servidor me sirva para :

** Recoger y enviar el correo ( sendmail + fetchmail ) :
de todas nuestras cuentas de correo , y pasarselas de manera
segura a nuestro cliente ( por si estamos en una red NO segura,
que no tengamos que enviar todas las pass, etc, en texto plano ).

La idea es que los usuarios tengan en sus portatiles una unica
cuenta de correo configurada ( que apunte a mi servidor ) y que
sea el servidor intermediario, que se encarge de recoger y repartir
el correo.

Nos comunicaremos con nuestro servidor usando pop3 + ssl.

Descarga del Sistema :

Descargar la iso del sistema en :

http://fedora.redhat.com/download/mirrors.html)
( preferiblemente la versión dvd ).

Comprobar que la iso es original y no se ha modificado verificando
la firma :

Desde Windows :

  • http://www.toast442.org/md5/
  • http://www.slavasoft.com/hashcalc/

Desde linux :

md5sum archivo
sha1sum archivo

Y comprobar que la salida corresponde con la suma SHA1 indicada en el archivo .
SHA1 que estara en el mismo sitio de donde nos bajamos la iso.

Grabamos la iso al dvd ( nero para windows, k3b par linux,etc.. )

/** Esta parte la voy a obviar ** /


Primera Instalación del sistema :

Una vez arrancamos la instalación ( Primer Enter ) se nos pedira comprobar
el dvd de instalación , yo personalmente lo evitaria si es que no somos unos
manazas y ya hemos rayado el dvd que acabamos de grabar ( a parte, se puede dar
el caso de que te diga que el dvd esta bien, y petar al fina de la instalación
por no poder leer el dvd como ya me paso ).

A grandes rasgos la instalación de Fedora core se resume en estos pasos :

Enter para nueva instalación
Elegir idioma instalación y teclado
Escoger particiones en funcion del tamaño ( separar /, /boot, /etc ,etc )
Activar tarjetas de red y configurar ip ( manual o con dhcp )
Configurar Reloj del sistema
Configurar Password de root
Seleccionar paquetes a instalar :

Una vez hemos llegado a la sección de “paquetes a instalar” , con el sistema base
tendriamos suficiente para empezar, aunque por comodidad y para ahorrarnos un par
de comandos despues , seria recomendable instalar :

Editors - Text-based Internet - Development Libraries - Development Tools - DNS Name Server,
Mail Server - MySQL Database - Server Configuration Tools - Web Server - Administration Tools,
Base - Java - System Tools

Una vez escogidos los paquetes, el instalador formateara las particiones que
le hemos indicado y empezarar a escribir las aplicaciones y el sistema al disco duro
( entre 30 y 45 minutos ).

/** Fin de Esta parte la voy a obviar ** /


Particiones recomendadas ( disco scsi 36 Gb + 512Mb Memoria RAM ) :

/ 2 GB La particion raíz , contendra los dirs :

/sbin ( ocupa aprx 25 Mb en h0mer )
/bin ( ocupa unas 8 Mb en h0mer )
/dev ( ocupa 250 Kb en h0mer )
/lib ( ocupa 1.2 Gb en h0mer )
/opt ( ocupa 85 Mb en h0mer )
/proc ( ocupa 300 Kb en h0mer )
/root ( ocupa 3 Mb en h0mer )
/sys ( ocupa 110 Mb en h0mer )

/boot 40 MB ( /boot de h0mer ( contiene 5 kernels ) 22 Mb )
/etc 150 MB ( el /etc de h0mer esta a 90 Mb con todo instalado )
/usr 7Gb ( /usr de h0mer es de : 5.7 Gb !!! con todo instalado y configurado )
/home 6 GB ( /usr de h0mer : 175 Mb , 250 Mb x numero de usuarios = tamaño /home )
/var 1 GB ( /var de h0mer está a 260 MB , con rotacion diaria de logs )
/var/lib 3 GB ( usado por MySQL, Squid , h0mer está a 60 Mb aquí ).
/tmp 600 MB ( /tmp de h0mer está a 500 KB :P )
/chroot 5 GB ( para meter programas de chroot , h0mer esta a 21 Mb ).



1000 MB La particion swap ( memoria virtual )

En primer lugar vamos a modificar un archivo que nos va a ahorrar el consumo de memoria swap, que por defecto en los kernels 2.6.XX esta a un 60%, en cualquier maquina que sea minimamente potente y con unos 512 megas de RAM física bastaría con poner el swapiness a un 10%, la RAM física es mucho mas rápida y en mi caso por ejemplo con 712 megas de RAM casi nunca me va a tocar la swap, para ver cuanta swap nos coje por defecto lanzamos este comando:

#cat /proc/sys/vm/swappiness

gedit o nano /etc/sysctl.conf

y ponemos al final vm.swappiness=10 ...
tb es interesante modificar el /etc/fstab y cambiar el valor defaults de swap a sw,pri=500

Comprobamos la prioridad con :

/sbin/swapon -s ( por defecto salia -1 , lo que es contradproducente para el sistema , ahora 500 )

Configuración del sistema :

Empezamos instalando algunas utilidades que usaremos durante la configuración :

yum install fetchmail wget bzip2 unzip zip nmap openssl lynx fileutils ncftp

a partir de aquí empieza la configuración y el tunning del sistema ...

Instalación y Configuración Servidor de Bases de Datos MySql :

Instalaremos mysql que nos servira por una lado como base de datos de todos los logs que produzca snort ( a los que accederemos con el front-end en php llamado base ).
A parte sera interesante montar algun cms con soporte con mysql .

yum install mysql mysql-devel mysql-server
chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start

Una vez aquí

vi /etc/my.cnf ( gedit /etc/my.cnf como root si estamos en el entorno gráfico )

------------------------------------------------/etc/my.cnf--------------------------------------------------------
#Directorios con los datos + socket
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
skip-innodb
#No es cuchar en ningun puerto
skip-networking
[mysql.server]
user=mysql
basedir=/var/lib
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid


Primera password para root ( el primer login es en blanco ):

mysql -u root mysql
mysql> UPDATE user SET Password=password('nuevapass') WHERE user='root';
Posteriores conexiones :
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h localhost -u root password yourrootsqlpassword


INstalar Apache2 con soporte PHP5 :

Procederemos a instalar el servidor http asi como algunos modulos necesarios y/o interesantes
( mod_php. mod_perl, mod_security ,etc.. ) :

yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml
php-xmlrpc curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel

vi /etc/httpd/conf/httpd.conf ( gedit /etc/httpd/conf/httpd.conf desde entorno gráfico – root )

DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl
chkconfig --levels 235 httpd on
/etc/init.d/httpd start


Instalación de algunos modulos de perl :


yum install perl-HTML-Parser perl-DBI perl-Net-DNS perl-Digest-SHA1


Poner nombre al server ( si no lo hemos hecho ya )

echo server1.example.com > /etc/hostname
/bin/hostname -F /etc/hostname

Apt-get :

yum install apt

/etc/apt/sources.list

rpm http://ayo.freshrpms.net fedora/linux/5/i386 core updates freshrpms extras
rpm http://ayo.freshrpms.net fedora/linux/5/i386 tupdates
rpm http://ayo.freshrpms.net fedora/linux/1/i386 core updates freshrpms
rpm --import /usr/share/rhn/RPM-GPG-KEY*

yum install fetchmail wget bzip2 unzip zip nmap openssl lynx fileutils ncftp




Asunto Snort + Base :


yum –y install mysql mysql-bench mysql-server mysql-devel mysqlclient10 php-mysql
httpd gcc pcre-devel php-gd gd mod_ssl glib2-devel gcc-c++

cd /root
mkdir snortinstall
wget http://www.snort.org/dl/current/snort-2.6.0.tar.gz
tar -xvzf snort-2.6.0.tar.gz
cd snort-2.6.0
./configure --with-mysql --enable-dynamicplugin
make
make install

groupadd snort
useradd -g snort snort –s /sbin/nologin
mkdir /etc/snort
mkdir /etc/snort/rules
mkdir /var/log/snort
cd etc/ (make not this is not /etc. it is the etc dir under the snort source code)
cp * /etc/snort

wget http://www.snort.org/pub-bin/downloads.cgi/Download/vrt_pr/snortrules-pr-
2.4.tar.gz

Then tar –xvzf snortrules-pr-2.4.tar.gz
cd to the rules dir and do the following command
cp * /etc/snort/rules

gedit /etc/snort.conf

output database: log, mysql, user=snort password=
dbname=snort host=localhost


mysql -u root -p < ~/snortinstall/snort-2.6.0/schemas/create_mysql snort Enter password: the mysql root password mysql -p >Enter password:
mysql> SHOW DATABASES;
(You should see the following)
+------------+
| Database
+------------+
| mysql
| Snort
| test
+------------+


pear install Image_Graph-alpha Image_Canvas-alpha Image_Color
Numbers_Roman

Download ADODB
wget http://easynews.dl.sourceforge.net/sourceforge/adodb/adodb480.tgz

Download BASE

wget http://easynews.dl.sourceforge.net/sourceforge/secureideas/base-1.2.6.tar.gz

Hand configure your firewall:
cd /etc/sysconfig/
edit the iptables file
add the line “-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j
ACCEPT” (without the quotes and right below the statement for port 22)
And delete the lines:
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
Then change the line:
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
To :
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j DROP

service iptables restart

cd /var/www/
tar -xvzf /root/snortinstall/adodb480.tgz

cd /var/www/html
tar –xvzf /root/snortinstall/base-1.2.6.tar.gz
mv base-1.2.6/ base/ (this renames the base-1.2.5 directory to just “base”)

Copy the base_conf.php.dist to base_conf.php

Fiechero “base_conf.php” :

$BASE_urlpath = "/base";

$DBlib_path = "/var/www/adodb/ ";
$DBtype = "mysql";

$alert_dbname = "snort";
$alert_host = "localhost";
$alert_port = "";
$alert_user = "snort";
$alert_password = "password_from_snort_conf";

/* Archive DB connection parameters */
$archive_exists = 0; # Set this to 1 if you have an archive DB

and answer the questions.
https://ip_address/base

( pendiente instalar y configurar las rules del proyecto bleedingedge )

Control de accesos en Apache :

mkdir /var/www/passwords
/usr/bin/htpasswd -c /var/www/passwords/passwords base
gedit /etc/httpd/conf/httpd.conf


...

Options FollowSymLinks
AllowOverride None



AuthType Basic
AuthName "Base"
AuthUserFile /var/www/passwords/passwords
Require user USUARIO

...

Comprobar configuracion de snort :

snort –c /etc/snort/snort.conf

Kernel shit :

The Kernel Headers are available through the kernel-devel RPM.

The kernel headers are necessary if you require to install a driver (for
example: Nvidia, ndiswrapper, Cisco VPN, etc.). If a driver requires
kernel sources, it may be sufficient to install only the kernel headers
Desde las versiones 4 Fedora ya no rae las fuentes del kernel por defecto, para instalar todo lo necesario para trabajar con el kernel :

# uname -rm
2.6.15-1.2054_FC5 i686 ( asi sabemos la version del kernel )
yum install kernel-devel-2.6.15-1.2054_FC5.i686.rpm

Kernel sources :
1. Download the desired kernel source
Desde YUM
Select: kernel-2.6.15-1.2054_FC5.src.rpm 14-Mar-2006 18:28 46M
yum install yum-utils
Desde Http : ( wget )
http://download.fedora.redhat.com/pub/fedora/linux/core/5/source/SRPMS/
Una vez obtenido :
rpm -ivh kernel-2.6.15-1.1955_FC5.src.rpm
Esto nos dejara las fuentes en /usr/src/redhat/BUILD/kernel-2.6.15/
Kernel Base + Parches Fedora
linux-2.6.15.ARCH/
Kernel Base “kernel.org” )





Fedota Tips :

Por si algunos programas necesitan tirar de las librerias de gcc anteiores a la 4.1 ( la que viene integrada con fedora ).

yum install compat-libstdc++-33 compat-libstdc++-296

Modificar modprobe.conf ( este tip acelera transferencias y navegacion , en algunos casos a base de decremetar el tiempo de acceso a dns)

editar fichero /etc/modprobe.conf y añadir :

alias net-pf-10 off
alias ipv6 off



Mostrar que servicio/proceso/puerto/user esta en uso ( conexiones ) :

/usr/bin/lsof -i ( netstat -pa tambien sirve , pero mas cutre )


Compresion y Descompresion :

tar -cvf archivoNUEVO.tar /este /aquel archivo_seleccionado ( Crea Tar )

tar tvf nombre_fichero.tar ( Ver contenido fichero )

tar xvf nombre_fichero.tar ( Extraer contenido )

tar czvf fichero.tar.gz nombre_ficheros_seleccionados ( Crea .tar.gz )

tar tzvf fichero.tar.gz ( Muestra contenido tar.gz )

tar xzvf fichero.tar.gz ( Extrae contenido tar.gz )

bzip2 nombre_fichero ( Comprime .bz2 )

bunzip2 nombre_fichero.bz2 ( Extrae contenido )

tar cvfj nombre_fichero.tbz2 ( crear un fichero tbz2 )

tar xvfj nombre_fichero.tbz2 ( descomprimir un fichero tbz2 )

tar tvfj nombre_fichero.tbz2 ( ver contenido de ficheros tbz2 )

Si tar ( algunas versiones/sistemas ) no soporta gzip u bzip :

para gzip: gzip -d -c fichero.tgz |tar xvf -
para bzip2: bzip2 -d -c fichero.tbz2 | tar xvf -



Configuración Servidor HTTPS Apache :

Para el servidor apache , haremos un balance entre seguridad y funcionalidad ,ya que es imposible asegurarlo al máximo sin perder algo de funcionalidad ( véase el caso del php , sus restricciones y depende que aplicaciones php ).


Instalación Servidor de Mail Dovecot :

Este servicio será el encargado de entregarnos el correo recogido anteriormente con fetchmail , lo configuraremos de tal manera que use pop3 con ssl y que escuche en 127.0.0.1 ( nos conectaremos mediante el tunel ssh ).

Fichero /etc/dovecot.conf


## Dovecot configuration file

protocols = pop3s
listen = 127.0.0.1
ssl_listen = 127.0.0.1
ssl_disable = no
ssl_cert_file = /etc/pki/dovecot/certs/dovecot.crt
ssl_key_file = /etc/pki/dovecot/private/dovecot.key
disable_plaintext_auth = yes
default_mail_env = /var/spool/mail/USUARIO



Instalación Servidor de Recogida de Mail Fetchmail :

Fetchmail será el encargado de recoger el correo de las cuentas que le configuremos y entregarlos al destinatario local ( nuestro usuario en el servidor ). Bastará instalarlo con :

yum install fetchmail


Crearemos con nuestro usuario el fichero .fetchmailrc ( touch .fetchmailrc ) en el home del luser :


poll nombre_cuenta_1
proto pop3
via pop.servicor.correo
user "cuenta@usuario.com"
pass "el_pass_texto_del_server_pop_en_texto_plano"
is usuario_sistema_local
fetchall
poll nombre_cuenta_2
proto pop3
via pop.otro_servicor.correo
user "cuenta@usuario.com"
pass "el_pass_texto_del_server_pop_en_texto_plano"
is usuario_sistema_local
fetchall

y asi por cada cuenta que queramos que fetchmail gestione. La acción fetchall al final de cada cuenta es para que fetchmail recoja todos los correos del servidor indicado. Lo malo de fetchmail es que guarda las contraseñas de cada cuenta en el fichero .fetcmailrc en texto plano.



Instalación Servidor VNC :

Procederemos ala instalación con el comando :

yum install vncserver

editamos el fichero /etc/sysconfig/vncservers :

-------
# The VNCSERVERS variable is a list of display:user pairs.
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see
# ...

VNCSERVERS="1:nombre_usuario_local"
VNCSERVERARGS[1]="-geometry 1024x768 -depth 16 -nolisten tcp -nohttpd -localhost"
----

El parametro --nolisten tcp impedira la conexión mediante tcp, mientras que nohttpd prohibira la entrada a clientes basados en web.

Leer más...

2009-01-01

Herramientas Freeware Indispensables

0 comentarios
Notas mentales sobre algunos freeware que valen la ena.

- Unlocker ( http://ccollomb.free.fr/unlocker/ )
Para eliminar o mover archivos bloqueados por el sistema
- CC Ceanner ( http://www.ccleaner.com/ )
Limpieza de hostoriales de Iexplorer, y otros programas )
- Eraser 5.8 ( http://www.heidi.ie/eraser/ )
Eliminación segura de archivos y espacio libre
- Filezilla FTP ( http://filezilla.sourceforge.net/ )
Servicor y Cliente de FTP
- Xampp ( www. apachefriends.org )



Apache + Mysql + perl + switch para php4 o 5 + etc )
- Scite ( http://www.scintilla.org/SciTE.html )
Editor de la ostia
- Videolan Media Player
- XP Codec Pack
- Nestumbler
- Wireshark ( ethereal )
- Cain
- Putty ( PuttyGen + PageAnt )
- VMWare Player
- NVU Html Editor
- Tight VNC
- Activestate ( Ruby + Perl + Python )
- Comodo Firewall
- SysAnalizer ( iDefense )
- Metasploit 3
- Motorola Tools ( + p2k toolz + skinmanager + mss )
- WinUp ( Actualizador XP )
- AVG Free Antovirus
- Thunderbird + Switchproxy + ToorButton + Enigmail
- GpG
- Firefox ( Modify headers + showmyip + torbutton + IETab + Save as Image + FlashGot + JsView + Switchproxy + User Agent Switcher )
- Paros Proxy
- BootSkin
- LogonStudio
- DevC++
- XP AntiSpy
- Xpy
- XChat
- WinUp
- Registry Cleanner
- WinDump
- WinAiroDump
- True Crypt
- ATNOtes
- AirCrack
- AutoRuns
- RadASM
- WinPCAp
- Tor + Privoxy ( Vidalia )
- SuperScann
- Remote Admin 3.0 / Viewer )
- OpenOffice
- FoxIT PDF Reader
- Crackerskit ( OllyDBG + Win32Dsm ´)
- Absinthe ( Sql INjeciton )
- BFMysql ( Blind Mysql INjection )
- Napkin ( 0x90 )
- Mezcal ( 0x90 )
- Java Runtime ( 1.5.. )
- Cygwin
- Malcode Analyst Pack ( iDefense )
- SysAnalizer ( iDefense )
- Nmap
- EtherChange
- Netcat
- hping
- Unix Utilz ( grep, egrep, ls, wc, cvs, cp, etc.. )

Leer más...

Introduccion a FreeBSD

0 comentarios
Auntes de una charla que no se llevó a cabo ( 2k5 ) :

Introducción : Que es FreeBSD

Primer acercamiento , de que vamos a hablar ¿?
SLICE 1 CON LOS PUNTOS MAS DESTACADOS ( La primera impresión es importante !! )

* Sistema operativo tipo UNIX (mencionar porque digo TIPO UNIX y NO UNIX , ecplicar el rollo legal/burócratico )
* En constante evolución
* Utilizado en psi, servidores web, etc... ( tb como s.o. personal ! )
* Código abierto ( fuentes públicas ! ) bajo licencia BSD NO gpl ( más tarde )
* Standards POSIX ( POSIX es un standard internacional UNIX program behavior and kernel features.
* Desarrollado por un grupo de prog. prof. centralizado
* Adaptacion de contribuciones de gente de todo el mundo ( como linux )
* Manejo mediante shells o entorno gráfico X window ( kde, gnome )
* Plataformas X86 ( la mas estable ), ALPHA , MOTOROLA, AMD 32-64



* Si te asusta unix, pilla mac os x ( unix + grafico ) o windows
* Puede convivir con otros sistemas operativos
* Tiene multitud de aplicacione de todo tipo ofimatica, internet, graficos, video
* No es un sistema nuevo - Tiene 11 años de vida y un largo desarrollo a sus espaldas.
* Licencia propia BSD ( no GPL )
* SISTEMA MULTI-USUARIO
* SISTEMA PERMISOS TIPO UNIX
* ESTRUCTURA DE DIRECTORIOS ( MAN HIER )
* SISTEMA DE ARCHIVOS UFS ( UNIX FILE SYSTEM )
* SHELLS ( SH, TCSH, CHS, BASH , ZSH, ASH )
* EDITORES DE TEXTO ( EE, VI -- VIM, EMACS )

Recordatorio :

( man nº comando ) :

1. Órdenes/programas de usuario.
2. LLamadas de sistema y códigos numéricos de error.
3. Funciones de las librerías de C.
4. Manejadores de Dispositivos.
5. Formatos de Archivos.
6. Juegos y otros divertimentos.
7. Información miscelánea.
8. Programas relativos al mantenimiento y operación del sistema.
9. Desarrolladores del Kernel.


ORIGENES DE UNIX / ORIGENES DE BSD :

Posible primera parte de la introduccion dedicada a un acercamiento "histórico" al principal objeto de la ponencia FreeBSD ( Unix ), repasar de una manera rápida las fechas hasta llegar al nacimiento de FreeBSD y explicar con algo más detenimiento.

SLICE 2 /3 FECHAS DESTACADAS Depende del tiempo ( No es el objetivo principal, pero ayuda )

- Breve historia de UNIX ( AT & T ):

* 1962 : CTSS + MIT estudian areas de TIEMPO COMPARTIDO y PROTECCION
* 1965 : BELL LABS ( AT & t labs system ) GENERAL ELECTRIC + MIT trabajan en MULTICS
( desarrollo de gran potencia de calculo, multi usuario --> shell,
multiproceso, arbol de ficheros ) Se abandona en ...
* 1969 : Abandono del proyecto MULTICS, Ken Thompson sigue desarrollándolo en los
laboratorios Bell de la AT & T ayuda de Ritchie más tarde.
* 1971 : Dennie Ritchie y Kerninghan crean C ( un lenguaje para programar sistemas ).
* 1973 : Dennie Ritchie y Ken Thompson reescriben UNIX en C ( en la AT % T ) y lo dotan de capacidad multiusuario.
* 1974 : Empieza la explotación comercial de UNIX por la AT & T ( 25.000 dolares la licencia.)
Relacion UNIX de AT & T y BSD ( ORIGENES DE BSD ) -->
A partir del 74 la Universidad de California proveia codigo a AT & T para su UNIX, es decir colaboraban mejorandolo. Las universidades que trabajaban con el UNIX de AT & T comaprtian sus mejoras y evoluciones con el CSRG que era el catalizador principal para probar mejoras de codigo , el CSRG distribuia su codigo a todo aquel que poseyera un licencia AT & T de UNIX : las llamadas Berkeley Software Distributions.
* 1975 : Se pasa a las Universidades ( sin licencias y con fuentes ! ) para educación y enseñanza.
* 1979 : La primera version UNIX procedente de Berkeley ( y no de AT & T ) : 3BSD que convercio a DARPA para que Este mismo grupo desarrollara un sistema operativo con soporte para TCP/IP , se creo el standard 4BSD.
* 1983 : Sale 4.2BSD y termina el proyecto "BERKLELEY DARPA UNIX", el CSRG sigue desarrollando BSD independientemente, que da sus frutos en :
* 1985 : - 4.3BSD TAHOE ( 1985 APROX )
* 1986 : - 4.3BSD NET 1 ( 1986 APROX ) -->
Ni tan siquiera pretendia ser un s.o, sino una suite de protocolos tcp/ ip --> Muere y no se desarrolla más.
* 1991 : - 4.3BSD RENO ( 1991 - Principios )
* 4.3BSD NET 2 ( 1991 - Finales )*
* 1992: La AT&T EMPIEZA una disputa legal contra Berkeley por el status legal de esta
última versión y en consecuencia a las siguientes versiones :
* Paralelamente 4.3BSD NET2 sigue evolucionando : Gente de Berkeley ( la BSDI -
Berkeley Software Design Inc. ) decidio portar esta ultima version a PC y adaptarla
al procesador Intel 80386 , salieron:

* BSD/386 --: BSDI : Muere
*386/BSD --: ** 386BSD 1.0 : Muere
** A principios de 1993, los encargados de las actualizaciones ( patchkits ) de
*386/BSD, saca una release intermedia por su suenta entre 386/BSD y 386BSD 1.0 para
* solucionar un problema que no se podia solucionar con parches, Sale :
* 386BSD 0.5 o "386BSD Interim" .
* Esta versión fue donada a los desarrolladores del original 386/BSD los que por causas
desconocidad retiraron su aprobación del proyecto, lo que lejos de desmotivar a la
gente que habia sacado esta release, les hizo seguir el proyecto y denominarlo:

FreeBSD.

Paralelamente de la rama principal de 4.3BSD RENO salió :
* 1992--> - 4.4BSD ( compatibildad con POSIX, gestion de memoria, mejor de red )
* 1993: - FreeBSD 1.0 ( Diciembre ) --> de mano de la gente de 386BSD 0.5.
* Diciembre 1993 : FREEBSD 1.0 ( Basado 4.4BSD LITE + 386/BSD + FSF ).
* Mayo 1994 -----: FreeBSD 1.1 ...

* 1994 ( Principio ) : Concluyen los juicios legales por la disputa de UNIX,
- finalmente :
- BSDI debe migrar todo el codigo de sus sistemas a la nueva version de 4.4BSD R2
( algo que iba a hacerse de todas maneras ).
- A FreeBSD todo y no estar involucrado directamente. se le hizo una advertencia
similar, debería migrar todo su codigo a 4.4BSD Lite, lo hizo en :

* 1994 ( Finales ) -: Las consecuencias :
- La últ. vº desarrollada en Berkeley fue la 4.4BSD -Lite.
- FreeBSD 2.0 ( prácticamente reescrito basada en 4.4BSD Lite !!)
- 4.4BSD -Lite Release 2 ( actualización ) --> Con esta última version,
- el CSRG abandona el proyecto BSD.
* Independientemente al CSRG que da por concluido su trabajo, 4.4BSD se sigue desarrollando de diferentes maneras con diferentes nombre y por diferentes grupos y empresas:
- FreeBSD ( Desarrollo "libre" ) --> Robusto, estable, sencillo
- NetBSD ( Desarrollo "libre" ) --> Orientado a Portabilidad
- OpenBSD ( Desarrollo "libre" ) --> Orientado a Seguridad
- BSD/OS --> Comercial S.O. by Wind River Systems.
- Darwin : El BSD comercial de apple, ( MacOS X sin interfaz )
- MacOS X --> Basad en gran parte en FreeBSD + interfaz de apple.
- AIX --> ( El UNIX de IBM , basado eN UN PRINCIPIO EN BSD)

* 1995 : Desde la version 2.0 de FreeBSD en 1994 , ha aparecido numerosas versiones, he aqui algunas de las versiones STABLE ( para entornos de producción ) más significativas así como los cambios más notables introducidos en estas:
* 1995 : FreeBSD 2.05
* 1997 : FreeBSD 2.1.7.1 : ( Final de la Rama 2.1 )
* 1998 : FreeBSD 2.2.8 : ( Final de la Rama 2.2 )
* 1999 : FreeBSD 3.5.1 : ( Final de la Rama 3.x )
* 2000 : FreeBSD 4.0
* 2001 : FreeBSD 4.4
* 2003 : FreeBSD 4.9 : ( Final de la Rama 4.x )
* 2004 : FreeBSD 4.10 : ( Posiblemente Final de la Rama 4.x )

FreeBSD 5.x : ( Seguramente en Septiembre pasara a STABLE )

- DIFERENCIAS FREEBSD RESPECTO A OTROS SISTEMAS :

* FreeBSD es un s.o. COMPLETO mantenido por un grupo coordinado y centralizado de personas.
* Linux es un kenel ( núcleo ), las aplicaciones dependen de la distribución.

* FreeBSD no es tan conocido debido a las restricciones legales de su codigo en sus inicios
* Linux no ha tenido ( hasta el momento ) problemas de leyes ni restricciones.

* Quizás no hay tantas aplicaciones comerciales para FreeBSD.
* Existen multitud de appz comerciales para linux.

* Quizás no hay tantos tipos de placas base soportados ( actualmente es raro )
* Practicamente placa que sale al mercado, placa que tiene soporte Linux.


* FreeBSD ejecutará un gran mayoría de las aplicaciones para Linux
* No creo que Linux necesite ejecutar ninguna aplicacion de FreeBSD


* Portar aplicaciones de Linux a FreeBSD no es dificil.


* Posiblemente hay más documentación para Linux que no para FreeBSD


* El código fuente de FreeBSD así como del 99% de sus aplicacioens esta a disposición de quien lo quiera son necesidad de licencias.


* La licencia BSD es bastante más permisiva que la GPL ( Linux ), y ya no digamos de la licencia Microsoft.



- MODELO DE DESARROLLO FREEBSD.


Al ser FBSD un sistema en continuo desarrollo, puede darse el caso que nos descargemos una version de fbsd desde la web, y que esa misma tarde se hayan introducido cambios en su codigo fuente.


Puedes descargarte varias versiones de FreeBSD .


-RELEASE :


para entornos de produccion, los que se venden en la tienda .
La versión más madura del código en un momento dado


-CURRENT :


Version con "añadidos de codigo" que no han estado testeados al 100%, estos cambios aparecen por primera vez desde esta version, es para desarrolladores, testers, y gente interesada ( es necesario conocer perl, c, sistemas , etc.. )
Cada año año y medio se congela ( no se permiten cambios a menos que no sean chungos ) y se arreglan todos los pequeños problemas detectados hasta el momento, si nace la siguiente .0 STABLE RELEASE.


-SNAPSHOTS



- SOFTWARE ( APLICACIONES PARA FREEBSD )


Una de las preguntas a la que nos afrontamos al cambiar o probar un nuevo sistema operativo,
es que partido le voy a sacar , tendré las aplicaciones que necesito ? , la respuesta es SI
FreeBSD tiene un monton de aplicaciones y una organización perfecta para su localización instalación y gestión .


- LA MANERA TRADICIONAL :



- LOS PORTS ( ACTUALMENTE UNAS 9000 APLICACIONES ) :


Los ports no son más que un paquete binario.

- LOS PAQUETES

* Binarios precompilados listos para instalar.


- HARDWARE ( QUE NECESITO ? )


- FILOSOFIA BSD

Es de las mas liberales, puedes hacer lo que te de la gana ( incluirlo en tus productos comerciales, no comerciales, proyectos de codigo abierto, etc.... en principio no se tiene ni porque decir que tal sistema esta basado en software bsd ) básicamente estas son las tres premisas principales :


- No digas que lo has hecho tu.
- No nos jodas si se te rompe.
- No nos utilizes para promocionar tu producto.


- LA PEÑA QUE HACE FREEBSD :


* COMITTERS :


Unos 350 aprox. tienen acceso de lectura y escritura en el codigo fuente primario
de desarrollo pueden añadir, quitar, borrar a su antojo

Evaluan parches de los contributors

A una minoria les pagan por hacer estos, el resto son voluntarios

FreeBSD-hackers@FreeBSD.org


* CONTRIBUTORS :

Hay miles !

No tienen acceso al código fuente primario, pero contribuyen enviando parches
muestras de errores, etc.. normalmente cuando llevan tiempo de forma activa contribuyendo
y tiene las cualidades necesarias, pasa a formar parte de los comitters.

* USUARIOS :


5-10 % DE LA MAQUINAS CHULAS


- PANORAMA ESPAÑOL RESPECTO A FREEBSD

Si bien es cierto que así com la comunidad Lunux ha ido creciendo a lo largo de los años,
la de freebs por motivos intrínsecos a su desarrollo e historia, ha sido un sistema algo más "apartado" de todos esos grandes proyectos de docuemtacin, etc..
De todas maneras, existen en la red numeroso proyectos de docuemntacion y how-toŽs dedicados
especificamente a *BSD en general y fbsd en concreto

www.daemomnews.com

www.freebsddiary.com

www.hispabsd.com

www.eldemonio.org

www.hispaforobsd.org



- FREEBSD EN LA RED

Sitios que usan FreeBSD :

Página principal del Proyecto :

http://www.freebsd.org

Páginas dedicadas a *bsd y FreeBSD ( Inglés ) :

www.daemomnews.com
www.freebsddiary.com

Páginas dedicadas a *bsd y FreeBSD ( Español ) :

www.hispabsd.com
www.eldemonio.org


- PRIMEROS PASOS PARA TENER FREEBSD UP & RUNNING :


1 - pillas tu navegador y te hechas un vistazo a http://www.freebsd.org/es y miras los mirrors ftp que hay, españa es el 3 que seria http://ftp5.freebsd.org/ y en releases/i386 para empezar , aqui estan todas las versiones e imagenes iso.

2- si lo pasas a cd puedes bootear desde el, si no en maquinas antiguas
copiar a 2 disquetes con el programa fdimage que esta en el cd que te has bajado :

DOS :


d:dosutilsfdimage kern.flp c:

d:dosutilsfdimage mfsroot.flp c:

LINUX : ( EN EL DIRECTORIO DE LAS IMAGENES ):


# dd if=kern.flp of=/dev/fd0

AVISO : VAS LA BIOS Y "Plug and Play OS" option to "no." asi hace algunos chequeos por ella misma y no lo delega en el s.o. ( la bios esta diseñada para esto, no es problema ) FreeBSd asume que la bios hace su trabajo. ( P.ej Windows NO ).

PRIMERA PANTALLA :

Pasa de la configuracion del kernel a menos que tengas algo raro ( ISA CARDS )
Skip ...

Aquí empieza la uilidad SYSINTALL : ( rollo ncurses, menu de instalacion cutre salchichero )

PARTICIONAR CON DIKLABEL Y LAS SLICES

/ unas 128 Mgb --> aqui ponemos el kernel y algunos progrmas para que arranque
ahora la PARTICION SWAP : como mínimo el doble de la RAM ( FreeBSD asume esto ! )
/var --> se albergaran logs, etc.. si es un servidor dejarle bastante espacio !!
/usr :
/home

-- Las particiones dependen del uso que se le quiera dar a la maquina !!
- Si, se puede meter todo en un particion y listos ( no recomendable para recupeara datos )

GESTOR DE ARRANQUE

Podemos escoger el menu de arranque del FreeBSD ( cutrequetecagas ), dejar el disco como esta ( y arrancarlo desde otro gestor )

AHORA QUE QUEREMOS INSTALAR :

Nos sale un menu con algunos perfiles ( usario experto, con entorno grafico, etc.. )
Lo elegimos y listo
instalcion `pr ftp / cd ....

metemos contraseña de root ...
creamos un usuario y lo metemos en el grupo wheel ( asi puede hacer su y pasar a root )

RELOJ - TIEMPO
CONFIGURAR EL MOUSE : ( PS2 Y USB SIN PROBLEMAS ) !!
TARJETA DE RED Y CONFIGURACION
configurar el reloj y las X ( ahora no !! después con /stand/sysinstall entramos y listo !!!

ahora algunos paquetes ( programas conmpilados ) a instalar ¡


- EL KERNEL DE FREEBSD

El programa de sysctl (8)
POSIX is an international standard for UNIX program behavior and kernel features.
Most of FreeBSD complies with POSIX.

# sysctl -A > sysctl.que

- Configuracion rapida del kernel ( METODO TRADICIONAL - 4.3):
# cd /usr/src/sys/i386/conf
# cp GENERIC KLMENTES
# ee KLMENTES
# config KLMENTES
# cd /usr/src/sys/compile/KLMENETS
# make depend
# make
# make install

El archivo LINT ( /usr/src/sys/i386/conf/LINT !! ) contierne todas las opciones del kernel ?

- Configuracion rapida del kernel ( METODO TRADICIONAL + 4.3):

# cd /usr/src/i386/conf
# cp GENERIC OBSTINATE
# ee OBSTINATE
# cd /usr/src
# make buildkernel KERNCONF=OBSTINATE
# make installkernel KERNCONF=OBSTINATE


Este documento está inacabado, por favor se aceptan, necesitan y agradecen sugerencias.

Leer más...

Creación de Windows Desatendidos

0 comentarios
Este texto es una recopilación de notas mentales para la creación de un windows xp con todos los parches integrados hasta la fecha ( sp2 + parches hasta Diciembre 2006 ) , con una serie de aplicaciones freeware integradas que se instalará de forma desatendida ( no tendremos que apretar ni un solo click ).

De hecho el objetivo es :

- Tener un sistema actualizado hasta la fecha ( Enero 2k9 )
- Quitarle "extras" al sistema operativo que NO nos interesan ( IIS , juegos, etc )
- Integrar los tweaks al registro para optimización seguriad automáticamente. ( optimizar la instalación por defecto )
- Deshabilitar el máximo número de servicios ( asegurar instalación por defecto )
- Integrarles las herramientas que necesitemos ( principalmente ) :

- Navegar por Internet : Firefox + add-ons

- Gestion Correo Electrónico : ThunderBird + WinGpg + EnigMail + TorButton

- Anonimato : Vidalia + Tor + Provoxy

- Grabar CUALQUIER COSA :

ImgBurn + DVDFab Decrypter + DVDFab Decrypter + DvD2One + DvDShrincker

- Editores WEB :

- NVU Html

- Peer to Peer :

- Amule Remote ( en mi caso , el amule corre en otra maquina linux , yo lo gestiono desde el win de manera remota )

- Conexiones Varias :

Putty + WinSCP + TightVNC + Remote Admin Viewer


Y que todo se instale automaticamente, es decir, que el cd haga boot, y una vez finalizada la instalación del sistema
, empiezen a instalarse los programas uno detrás de otro.

Herramientas Necesarias :

1 CD con Windox XP SP2.
Todas las actualizaciones desde sp2 hasta la fecha ( winup )
Todas las aplicaciones que necesitemos
NLite ( freeware - http://www.nliteos.com ) -> Esta pequeña maravilla hara todo el trabajo por nosotros.

Direcciones Utiles :
- Runonceexcmd ( http://runonceexcmd.sourceforge.net/ ) -> creara archivo cmd para la instalacion e programas
- Windows Post-INstaller ( http://www.wpiw.net/ ) -> Crea un menu para que el luser escoga que appz integrados intstalar
- Unattended Guide ( http://unattended.msfn.org/unattended.xp/ ) -> La biblia de los windows desatendidos-
- Foro de los MAsters de los destendidos ---- > http://www.msfn.org/board/
- Windows XP Powerpacker ( http://www.msfn.org/board/index.php?s=e7e407f6ff29c36db20c2cd84737a77a&showtopic=80325 )
- vLIte ( http://www.msfn.org/board/index.php?showforum=153 ) -> para hacer lo mismo pero son windows vista
- WiHU ( http://www.msfn.org/board/index.php?showtopic=24563 ) -> otro instalador de appz intregradas
- XPIze ( http://xpero.msfn.org/ ) -> Mejora el aspecto visual del windows
- HFSlip ( http://www.msfn.org/board/index.php?showtopic=24563 ) -> para integrst parches . light
- Windows Automated Installation Kit (WAIK) - http://www.msfn.org/board/index.php?showtopic=84446 ( vista )
- CMDLines Explained : http://unattended.msfn.org/unattended.xp/view/web/14/
- BillBoards : pantallas de instalacion ( http://www.msfn.org/board/index.php?showforum=92)

Leer más...

2008-12-31

Inicio

0 comentarios
Finalmentehe he decidido recopilar todas las notas mentales que he ido acumulando durante todos estos años. A grandes rasgos es todo sobre seguridad, sistemas, reversing y similares.
Aunque de paso y aprovechando el tema de la web 2.0 y estas movidas usare una nueva categoria sobre la que nunca he escrito ( publicamente ) : live ( vida ).
Dedicaré el mes de Enero a recopilar, publicar y formatear el contenido antiguo , y una vez ya este todo al día, empezare a crear contenidos nuevos. Leer más...