You are on page 1of 78

RedesTCP/IPconGNU/Linux

20110820(v1.0)

PortantierInformationSecurityIntroduccinaGNU/Linux

FabianPortantier

ConsultorenSeguridadInformtica FanticodeGNU/Linux(Debian) Mail:fabian@portantier.com Web:www.portantier.com


PortantierInformationSecurityIntroduccinaGNU/Linux

TCP/IP

Familiadeprotocolosdeinternet LosdosmsimportantessonTCPeIP Msde100protocolosdiferentes Desarrolladoen1972porelUSDOD Actualmenteseutilizalaversin4(IPv4) SueleserdescritoenbasealmodeloOSI

PortantierInformationSecurityIntroduccinaGNU/Linux

ModeloOSI

Creadoen1984

Divididoensietecapas

http://web.frm.utn.edu.ar/comunicaciones/modelo_osi.html
PortantierInformationSecurityIntroduccinaGNU/Linux

ModeloOSI
APLICACIN PRESENTACIN SESIN TRANSPORTE RED ENLACEDEDATOS FSICA
PortantierInformationSecurityIntroduccinaGNU/Linux

Capa1:Fsica

Defineelmedio(cable,aire,fibraptica,etc) Definelascaractersticasdelosmateriales Transmiteelflujodebitsatravsdelmedio Manejalassealeselctricas

PortantierInformationSecurityIntroduccinaGNU/Linux

Capa2:EnlacedeDatos

Direccionamientofsico(MACAddress) Topologadelared(Estrella,Bus,Mesh,etc) Accesoalmedioydeteccindeerrores Transformalassealesendatos(tramas) Ethernet,ISDN,PPP,DSL,FDDI


PortantierInformationSecurityIntroduccinaGNU/Linux

Capa3:Red

Protocolosenrutables(IP,ICMP,IPX,Appletalk) Protocolosdeenrutamiento(RIP,OSPF,BGP) Quelosdatoslleguendelorigenaldestino Trabajaconpaquetes


PortantierInformationSecurityIntroduccinaGNU/Linux

Capa4:Transporte

Transportedeundispositivoaotro TCP(orientadoaconexin) UDP(noorientadoaconexin) Sockets(IP:PUERTO|192.168.0.100:80)


PortantierInformationSecurityIntroduccinaGNU/Linux

Capa5:Sesin

Sesionesentredosextremos

Puedeserprescindible

Controldedilogo(HalfDuplex,FullDuplex)
PortantierInformationSecurityIntroduccinaGNU/Linux

Capa6:Presentacin

Formateodedatos(ASCII,UTF8,etc)

Cifradodedatos

Compresindedatos
PortantierInformationSecurityIntroduccinaGNU/Linux

Capa7:Aplicacin

Defineprotocolosautilizarporaplicaciones

Sueleserutilizadoporlasaplicaciones

HTTP,FTP,IMAP,SMTP,SSH,etc
PortantierInformationSecurityIntroduccinaGNU/Linux

PortantierInformationSecurityIntroduccinaGNU/Linux

PuertosTCPyUDP

Asocianpuertosconaplicaciones

Tantoparasalidacomoparaentrada

Ej:ApacheHTTPDTCP/80
PortantierInformationSecurityIntroduccinaGNU/Linux

DireccionesIP

Unnmerobinariode32bits Permite4.294.967.296direcciones(232) Expresablesen4gruposde0a254 Ejemplo:192.168.0.100


PortantierInformationSecurityIntroduccinaGNU/Linux

DireccionesIPClases

ClaseA:0.0.0.0127.255.255.255 ClaseB:128.0.0.0191.255.255.255 ClaseC:192.0.0.0223.255.255.255 ClaseD:224.0.0.0239.255.255.255 ClaseE:240.0.0.0255.255.255.255

PortantierInformationSecurityIntroduccinaGNU/Linux

DireccionesIPPrivadas

ClaseA: 10.0.0.0a10.255.255.255 (8bitsred,24bitshosts) ClaseB: 172.16.0.0a172.31.255.255 (16bitsred,16bitshosts) ClaseC: 192.168.0.0a192.168.255.255 (24bitsred,8bitshosts)


PortantierInformationSecurityIntroduccinaGNU/Linux

MscaradeSubred

Permitendividirlasdireccionesenred/host Paraorganizarlasredes Secreanenbasealosbits Selerestanalasdirecciones


PortantierInformationSecurityIntroduccinaGNU/Linux

Mscaradesubred(ejemplos)
IP: 192.168.000.001 Mscara: 255.255.255.000 ----red---- -hostIP: 192.168.000.001 Mscara: 255.255.000.000 --red-- --host-PortantierInformationSecurityIntroduccinaGNU/Linux

Rutas

Definenlaspuertasdeenlacealasredes Podemostenervariasrutas Siempreexisteunapordefault Puedenserestticasodinmicas


PortantierInformationSecurityIntroduccinaGNU/Linux

Rutasestticas
Sedefinenconelcomando'route': routeadddefaultgw192.168.0.1 routedeldefault routeaddnet10.0.0.0netmask255.0.0.0dev eth0 routedelnet10.0.0.0netmask255.0.0.0
PortantierInformationSecurityIntroduccinaGNU/Linux

Switches

Operanenlacapadeenlace(Capa2) Interconectandispositivosenunamismared SebasanenlasdireccionesMAC Puedensergestionablesono


PortantierInformationSecurityIntroduccinaGNU/Linux

Routers

Operanenlacapadered(Capa3)

Interconectandiferentesredes

Puedenelegirlamejorrutahaciaundispositivo
PortantierInformationSecurityIntroduccinaGNU/Linux

ifconfig
Nospermitever/configurarinterfacesdered Ejemplos: ifconfig ifconfigeth010.0.0.1netmask255.0.0.0 ifconfigeth0up ifconfigeth0down
PortantierInformationSecurityIntroduccinaGNU/Linux

ping

Consultasiundispositivoderedresponde (UtilizaICMPEchoRequest) Ejemplo: pingwww.google.com.ar

PortantierInformationSecurityIntroduccinaGNU/Linux

ping

Opcionescomunes: c i s t Cantidaddepaquetesaenviar Intervalodetiempoentrecadapaquete Defineeltamaodelospaquetesaenviar DefineelvalordelcampoTimeToLive(ttl)

PortantierInformationSecurityIntroduccinaGNU/Linux

traceroute

Permiteseguirelcaminohaciaundispositivo Ejemplo: traceroutewww.google.com.ar

PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/protocols

Definelosprotocolosysusnmerosasignados

PortantierInformationSecurityIntroduccinaGNU/Linux

Puertosbienconocidos
PuertosTCPyUDPasignadosaaplicaciones DefinidosporelIANA

http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_po

PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/services

Definicionesdepuertosyaplicacionesconocidos

PortantierInformationSecurityIntroduccinaGNU/Linux

telnet

PermiteconectarnosapuertosTCP Ejemplos: telnetwww.google.com.ar80 telnetsmtp.gmail.com25

PortantierInformationSecurityIntroduccinaGNU/Linux

ConfiguracionesdeRed

PortantierInformationSecurityIntroduccinaGNU/Linux

ifconfig
ifconfig (Muestralasinterfacesactivas) ifconfiga (Muestratodaslasinterfaces) ifconfigeth010.0.0.1netmask255.255.255.0 (Defineladireccin10.0.0.1/24) ifconfigeth0down (Deshabilitalainterfaz) PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/network/interfaces Configuracindelasinterfaces(Debian)
autoloeth0eth1 ifaceeth0inet address 192.168.14.10 netmask 255.255.0.0 gateway 192.168.1.1 uprouteadddefaultgw192.168.2.1 downroutedeldefaultgw192.168.2.1 ifaceeth1inetdhcp PortantierInformationSecurityIntroduccinaGNU/Linux

ifup/ifdown
Subir/Bajarinterfaces(/etc/network/interfaces) ifupa,ifdowna (Subir/Bajartodaslasinterfaces) ifupIF,ifdownIF (Subir/Bajarunainterfaz) Ejemplo: ifupeth0
PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/hostname

Configuraelnombredehost Esutilizadopor/etc/init.d/hostname.sh Paracambiosnopermanentespodemosusar: hostnameo/proc/sys/kernel/hostname

PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/resolv.conf

Listalosservidoresdenombres(DNS)autilizar nameserver192.168.0.1 nameserver192.168.0.2 SiutilizamosDHCPseactualizaautomticamente

PortantierInformationSecurityIntroduccinaGNU/Linux

netstat
Muestraconexionesypuertosenescucha netstatlnpt (puertosTCPenescucha) netstats (estadsticasdeconexin) netstatc (actualizalainfocada2segundos)
PortantierInformationSecurityIntroduccinaGNU/Linux

ResolucindeNombres(DNS)

PortantierInformationSecurityIntroduccinaGNU/Linux

JerarquadeNombres

PortantierInformationSecurityIntroduccinaGNU/Linux

TiposdeRegistrosDNS

A AAAA CNAME MX NS SOA

MapeanombresadireccionesIPv4 MapeanombresadireccionesIPv6 Aliasdeunnombreaotro Servidoresdecorreodeldominio Servidoresdenombredeldominio InformacindelazonaDNS

PortantierInformationSecurityIntroduccinaGNU/Linux

dig

PermiteconsultarlosregistrosDNS

PortantierInformationSecurityIntroduccinaGNU/Linux

dig

$dig+shortportantier.comNS ns13.zoneedit.com. ns8.zoneedit.com.

PortantierInformationSecurityIntroduccinaGNU/Linux

dig

$dig+shortportantier.comMX 5ALT1.ASPMX.L.GOOGLE.com. 10ALT2.ASPMX.L.GOOGLE.com. 0ASPMX.L.GOOGLE.com. 15ASPMX2.GOOGLEMAIL.com. 20ASPMX3.GOOGLEMAIL.com.

PortantierInformationSecurityIntroduccinaGNU/Linux

dig

$dig+shortportantier.comA 174.122.105.94 $dig+shortportantier.comSOA ns8.zoneedit.com.soacontact.zoneedit.com. 201132354124003601209600300

PortantierInformationSecurityIntroduccinaGNU/Linux

host

$hostwww.portantier.com www.portantier.comhasaddress174.122.105.94

PortantierInformationSecurityIntroduccinaGNU/Linux

nslookup
$nslookupwww.portantier.com Server: 192.168.0.1 Address: 192.168.0.1#53 Nonauthoritativeanswer: Name: www.portantier.com Address:174.122.105.94

PortantierInformationSecurityIntroduccinaGNU/Linux

tcpdump

Permitecapturarpaquetesdered

PortantierInformationSecurityIntroduccinaGNU/Linux

tcpdump
#tcpdumpieth0 (Escuchapaquetesenlainterfazeth0) #tcpdumpieth0A (MostrarelcontenidodelospaquetesenASCII) #tcpdumpieth0tcpport80 (CapturarlospaquetesTCPpuerto80) #tcpdumpieth0host192.168.0.10 (Capturarlospaquetesdelaip192.168.0.10) PortantierInformationSecurityIntroduccinaGNU/Linux

nmap

Escaneapuertos

Puedereconocersistemasoperativos

Puedereconocerversionesdesoftware
PortantierInformationSecurityIntroduccinaGNU/Linux

root@debian:~#nmap127.0.0.1 Starting Nmap 5.00 Interesting ports on localhost (127.0.0.1): PORT 22/tcp 53/tcp 80/tcp 143/tcp 3306/tcp STATE open open open open open SERVICE ssh domain http imap mysql

nmap

PortantierInformationSecurityIntroduccinaGNU/Linux

nmap
nmappT:80,U:53127.0.0.1 (EscanearpuertosTCP/80yUDP/53) nmapsV127.0.0.1 (Reconocerversionesdesoftware) nmapO127.0.0.1 (Reconocerversindelsistemaoperativo)
PortantierInformationSecurityIntroduccinaGNU/Linux

NombresdeDominio

AsignadosaunadireccinIP

RequierenunadireccinIPfija(paga)

Necesariosparadarservicios(web,mail,etc)
PortantierInformationSecurityIntroduccinaGNU/Linux

DNSDinmicos

Seactualizanapedidodelcliente

PermitendarserviciosconIPdinmica

Requierenclientesdeactualizacin
PortantierInformationSecurityIntroduccinaGNU/Linux

DNSDinmicos(proveedores)

http://dyn.com http://www.noip.com http://www.zoneedit.com Muchosotros


PortantierInformationSecurityIntroduccinaGNU/Linux

aptcachesearchdyndns

PortantierInformationSecurityIntroduccinaGNU/Linux

ProtocolosdeEnrutamiento

PermitendefinirrutasparalospaquetesIP Evitanelenrutamientoesttico Seactualizanautomticamente Eligenlamejorrutadisponible


PortantierInformationSecurityIntroduccinaGNU/Linux

SistemasAutnomos(AS)

AutonomousSystems RedesIPadministradasporunamismaentidad SelesasignaunnmerodeAS ComunmenteutilizadosporlosISP www.teamcymru.org/Services/iptoasn.html


PortantierInformationSecurityIntroduccinaGNU/Linux

SistemasAutnomos(AS)

Utilizarelserviciodeconsultadecymru: whoishwhois.cymru.com"v74.125.159.147" whoishwhois.cymru.com"vAS15169"

PortantierInformationSecurityIntroduccinaGNU/Linux

EnrutamientoInterior

(DentrodeunmismoAS) IGRP(InteriorGatewayRoutingProtocol) EIGRP(EnhancedIGRP) OSPF(OpenShortestPathFirst) RIP(RoutingInformationProtocol) ISIS(IntermediateSystemtoIntermediate System)


PortantierInformationSecurityIntroduccinaGNU/Linux

EnrutamientoExterior

(EntredistintosAS) BGPv4(BorderGatewayProtocol)

PortantierInformationSecurityIntroduccinaGNU/Linux

Netcat

Permiterealizarvariasfuncionesdered Conectarnosaunpuerto Ponerunpuertoenescucha Ymuchasfuncionesms. http://es.wikipedia.org/wiki/Netcat


PortantierInformationSecurityIntroduccinaGNU/Linux

Netcat(minichat)

Servidor netcatlp2000 Cliente netcatipdelservidor2000

PortantierInformationSecurityIntroduccinaGNU/Linux

Netcat(copiadearchivosremota)

Receptor netcatlp2000>archivo.recibido Emisor netcatipdelreceptor2000<archivo

PortantierInformationSecurityIntroduccinaGNU/Linux

lsof

Listalosarchivosabiertos lsofinP

PortantierInformationSecurityIntroduccinaGNU/Linux

Samba

Permitecompartirarchivosycarpetas

ProtocoloCIFS(WindowsShares)

Multiplataforma(Windows,Linux,Mac)
PortantierInformationSecurityIntroduccinaGNU/Linux

aptgetinstallsamba

PortantierInformationSecurityIntroduccinaGNU/Linux

/etc/samba/smb.conf
[global] workgroup=midominio serverstring=%hserver security=share [shared] path=/home/fabian/shared browseable=yes readonly=yes guestok=yes
PortantierInformationSecurityIntroduccinaGNU/Linux

Administracingrfica

aptgetinstallgadminsamba

PortantierInformationSecurityIntroduccinaGNU/Linux

webmin

Permiteadministrarlinuxatravsdelaweb Permiteconexionesseguras(HTTPS) Cuentaconunaaltacantidaddemdulos Altamenteprobado www.webmin.com


PortantierInformationSecurityIntroduccinaGNU/Linux

NAT

PortantierInformationSecurityIntroduccinaGNU/Linux

NetworkAddressTranslation

PortantierInformationSecurityIntroduccinaGNU/Linux

Habilitarenrutamiento

echo1>/proc/sys/net/ipv4/ip_forward

PortantierInformationSecurityIntroduccinaGNU/Linux

SourceNATEsttico
iptablestnatAPOSTROUTINGs 192.168.3.0/24oeth0jSNATto80.58.1.14 APOSTROUTING:AadeaPOSTROUTING s192.168.3.0/24:Direccinorigen oeth0:Interfazdesalida jSNATto80.58.1.14:Cambiaaestadireccin
PortantierInformationSecurityIntroduccinaGNU/Linux

SourceNATDinmico

iptablestnatAPOSTROUTINGs 192.168.3.0/24oeth0jMASQUERADE

PortantierInformationSecurityIntroduccinaGNU/Linux

DestinationNAT
iptablesAPREROUTINGptcpdport8080i eth0jDNATto192.168.3.3:80 APREROUTING:AadeaPREROUTING ptcp:ProtocoloTCP dport8080:Puertodedestino ieth0:Interfazdeentrada jDNATto192.168.3.2:80:CambiaaIP:Puerto
PortantierInformationSecurityIntroduccinaGNU/Linux

iwconfig
#iwconfig wlan0IEEE802.11bgESSID:"bomberman" Mode:ManagedFreq:2.4GHzAP:00:1E:58:C6:73:C7 BitRate=48Mb/sTxPower=27dBm Retrylonglimit:7RTSthr:offFragmentthr:off Encryptionkey:off PowerManagement:off LinkQuality=56/70Signallevel=54dBm Rxinvalidnwid:0Rxinvalidcrypt:0Rxinvalidfrag:0 Txexcessiveretries:0Invalidmisc:0Missedbeacon:0
PortantierInformationSecurityIntroduccinaGNU/Linux

wpa_supplicant
network={ ssid="ssidelared" scan_ssid=1 proto=WPA2 key_mgmt=WPAPSK psk="contrasena" } wpa_supplicantdDwextiwlan0
PortantierInformationSecurityIntroduccinaGNU/Linux

You might also like