Está en la página 1de 34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Administracindelared(LinuxIII).
Casoprctico

MaravisitaaJuan.
Juan, vamos a mejorar la red de la empresa y para eso necesito
que utilices un
servidor para que acte como router y le
proporcione
a
le
empresa
los
servicios
ms
importantes.
Encaminamiento y DHCP, y luego le
instalaremosmsservicios.
MuybienMara,hevistoporInternetqueLinuxfuncionamuybien
conredes.Dehechosumximapotenciaseutilizaparaactuarcomoservidor.Ahoramismomepongo
aconfigurarelservidor.

1.Esquemabsicodered.

Casoprctico

Juansedisponeadisearlared,peroantesdeempezar,vaahacerun
esquema de red, ya que este esquema le ser de utilidad, para
mantenerlaredyparacuandotengaquehacercambiosenlamisma.

ConlafuerteexpansinquehatenidoInternetsehageneralizadolautilizacin
deredesenlasempresasyennuestroshogares.Hoyendaparaunempresa
es totalmente necesario disponer de una red interna que le permita compartir
informacin,conectarseaInterneteincluso,ofrecersusserviciosenInternet.
En esta unidad aprenders a configurar el sistema GNU/Linux para convertirlo
en un potente router que provea a la red de los servicios necesarios:
encaminamiento,DHCPy
DNS.Parapoderaprendermejoraadministrarel
sistema nuestro objetivo es configurar la infraestructura de red que se muestra
enlasiguientefigurayquepuedeutilizarseenunaempresaodomicilio.
Alahoradeconfigurarlaredhayquetenerencuentalossiguientesobjetivos:
Configurar
iptables para darle acceso a Internet a los clientes de la
redinterna.
Esquemabsicodered.
Configurar el servidor DHCP para que asigne de forma automtica las
direcciones que van desde la 10.0.0.100 a la 10.0.0.254. Las dems direcciones las asignar el
administradordelareddeformamanual.
Adems,sedisponedeunaimpresoraderedquetieneladireccinMAC (AA:BB:CC:DD:EE:FF) a la que
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

1/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

selequiereasignarsiemprelaIP10.0.0.254.
Configurar el servidor de nombres para que administre el dominio miempresa.com. Adems, se tiene que
crear los siguientes registros: www.miempresa.com y ftp.miempresa.com apuntan a la IP
10.0.0.1mail.miempresa.comes equivalente a www.miempresa.com y el servidor de correo electrnico
seencuentraenmail.miempresa.com.
Por ltimo, se configuran los servicios Web y
FTP para que la empresa tenga su propio servidor de
pginaswebyFTP.

1.1.Configuracindelared.
Una vez que tienes claro el esquema de red que vas a implementar, el primer
paso que debes realizar es configurar correctamente las diferentes interfaces de
reddenuestroservidor(queactacomorouter)ydelosclientes.
Bsicamente existen dos formas de configurar las tarjetas de red de nuestro
equipo: manualmente o dinmicamente a travs de un servidor DHCP. A
continuacinsevanaverambosmtodosdeconfiguracin.

1.1.1.Configuracindelaredcableada.
Paraconfigurarunainterfazderedesnecesarioasignarleunadireccin
IP con su respectiva mscara de red. El comando ms utilizado para
configurarlaredes
ifconfig(InterfaceConfiguration).Porejemplo:

#ifconfigeth0192.168.1.2netmask255.255.255.0up

Enestecasoestasconfigurandolainterfazeth0 (primera tarjeta de red


detectada) con la direccin IP 192.168.1.2 y con mscara de red
Comandoifconfig.
255.255.255.0. El parmetro up indica que la tarjeta debe activarse,
pero puede omitirse puesto que al asignarle los parmetros de red la tarjeta se activar por defecto. Para
desactivarunainterfazderedejecuta:

#ifconfigeth0down

Paraactivarunainterfazderedejecuta:

#ifconfigeth0up

Paracomprobarlaconfiguracindelasinterfacesderedejecutaelcomando ifconfig.Talycomopuedesverenla
siguiente figura la interfaz eth0 tiene la direccin 192.168.118.142 (la ha obtenido de forma automtica) y la
interfazeth1tieneladireccinIP10.0.0.1.
Para que el equipo pueda conectarse a una red diferente de la que se encuentra (por ejemplo, Internet) necesita
establecerlapuertadeenlace.Lapuertadeenlaceeselequipoquepermitecomunicarvariasredes.Porejemplo,
si el equipo se encuentra conectado a la red 192.168.0.0/24 en la interfaz eth0 y la puerta de enlace es
192.168.0.1,debesejecutarelsiguientecomando:

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

2/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

#routeaddnet0/0gw192.168.0.1eth0

Si quieres puedes realizar la configuracin mediante el entorno grfico


xWindows. Para ello, en el men Sistema > Preferencias ejecuta la
herramientaConexionesdered.
Configuracindered.

1.1.2.Configuracindelaredinalmbrica.
Desde los sistemas GNU/Linux es posible configurar la red inalmbrica a travs del comando
iwconfig o a
travsdelasistentedeConexin.Paraaccederalaredinalmbricadeformagrfica,enelmendeherramientas
superior, pulsa en el icono de la red inalmbrica y selecciona la red a la que deseas conectarse. Si la red
inalmbricarequiereautentificacin,indicalacontrasea
WEPo
WPAypulsaelbotnConectar.

Automticamente,elasistenteestablecelaconexinalaredinalmbricaymuestraenpantallaunmensajedeque
elprocesoseharealizadocorrectamente.

1.1.3.Ficherosdeconfiguracin.
Elproblemadeconfigurarlasinterfacesderedcon ifconfigesquenoseguardanlos
datos de configuracin en ningn fichero, al reiniciar el equipo se pierde la
configuracin. A continuacin se van a ver los diferentes ficheros de configuracin
queintervienenenlaconfiguracindelareddelequipo.
La configuracin de las interfaces de red se guarda en el
fichero /etc/network/interfaces.Siguiendoelesquemaderedpropuestoanteriormente,
la interfaz de red eth0 es la encargada de conectarse a Internet mientras que la
interfazeth1pertenecealaredinterna.Losparmetrosdeconfiguracindeeth0 los
tiene que facilitar el proveedor de Internet o los puedes obtener automticamente
utilizandoDHCP.
Fichero /etc/network/interfaces.

autoeth0
ifaceeth0inetdhcp
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

3/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

autoeth1
ifaceeth1inetstatic
address10.0.0.1
netmask255.255.255.0
network10.0.0.0
broadcast10.0.0.255
#gateway10.0.0.1

Aunque lo normal es que eth0 obtenga la direccin IP de forma automtica al iniciar el equipo puedes hacerlo
manualmenteejecutando:

#dhclienteth0

Configuracindelnombredelequipo.
Paraconfigurarelnombredelequipohayquemodificarelfichero /etc/hostnameeindicarelnombredelequipo.
ConfiguracindelservidorDNS.
Existen dos formas para la resolucin de nombres: de forma local o a travs de un servidor de nombres (DNS).
Para la resolucin de nombres de forma local se utiliza el fichero /etc/hosts en donde se guarda el nombre y la
direccinIPdelasmquinaslocales.Porejemplo:

127.0.0.1localhost.localdomainlocalhost
193.147.0.29www.mec.es

Paraestablecerlosservidoresderesolucindenombres(DNS)debeseditarelfichero /etc/resolv.conf.Porejemplo:

nameserver8.8.8.8
nameserver150.214.156.2

Actualizarloscambios.
Unavezrealizadalaconfiguracindelsistemaparaqueseapliquenloscambiosenlasinterfacesderedhayque
reiniciarelservicioohacerunreloadejecutando:

#/etc/init.d/networkingforcereload

Autoevaluacin

Indicalaopcinincorrecta.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

4/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Enelarchivo /etc/resolv.confseguardanlosservidoresdenombres.
Elcomando ifconfigeslanicaformadeconfigurarlared.
Enelfichero /etc/network/interfacesseguardalaconfiguracindelasinterfacesdered.
ElservicioDHCPpermiteobtenerlaconfiguracinIPdeformaautomtica.

1.1.4.Comprobacin.
Para comprobar la conexin a Internet puedes ejecutar el
comando
ping indicando como parmetro cualquier direccin de
Internet.Porejemplo:

$pingwww.google.es

Comandoping.

Si al realizar el ping se recibe respuesta entonces la comunicacin se est realizando correctamente. Si por el
contrarioindicaquetodoslospaquetessehanperdido(100%packetloss)debescomprobarlaconfiguracindered
o los parmetros de configuracin. En la figura anterior puedes ver como el servidor www.google.es responde
correctamentealcomando ping.
ParacomprobarlaconfiguracindelareddeformagrficaesposibleutilizarlasHerramientasdered.Paraelloen
elmenSistema>AdministracinejecutalaaplicacinHerramientasdered.

La aplicacin Herramientas de red incluye informacin relacionada con nuestros dispositivos de red. Permite
realizar ping a un determinado host. Incluye la posibilidad de ver el estado de las conexiones de mi equipo,
utilizando netstat.Permiteutilizar tracerouteparaverlarutaentremiequipoyunequiporemoto.Tieneunapestaa
para explorar puertos, que me permite analizar y/o visualizar los puertos que estn abiertos o cerrados de un
determinadoequipo.Tieneunherramientadebsqueda.Usando fingersepuedeautenticarlosusuariosqueestn
siendousadosenundeterminadohostdelared.Finalmentecon whoisse pueden identificar todos los detalles de
laadquisicindeundeterminadodominio.

1.2.iptables.
La tecnologa de
firewall de GNU/Linux ha evolucionado desde sencillos filtros de paquetes lineales hasta los
motoresactualesdeinspeccindepaquetesdeestado.LosncleosdeLinux2.0empleanunaimplementacinde
reglas de filtrado de paquetes que utilizan tres pilas: INPUT (trfico de entrada), OUTPUT (trfico de salida)
yFORWARD (paquetes que se reenvan a otro equipo). Los paquetes llegan a la parte superior de las pilas y se
filtran a travs de las reglas hasta que exista una coincidencia. En este punto, cada paquete se puede aceptar,
descartar, rechazar o reenviar. Si el paquete no coincide con ninguna de las reglas, pasa a la directiva
predeterminada,quenormalmentedescartaelpaquete.
Aunquelacapacidadnativadefirewallde los ncleos de Linux 2.0 era ms que adecuada para generar firewalls,
enlasiguienteversindelncleo2.2apareciIpchainsqueincorpornuevasyeficacescaractersticas:permitela
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

5/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

definicindenuevaspilasymejoralaadministracindelasreglasdeunapila.
Apartirdeldesarrollodelncleo2.3,losprogramadoresdeLinuxcomenzaronatrabajar
eniptables(tambinllamadonetfilter). Iptables mejor las ventajas de administracin de
conjuntosdereglasalpermitirlacapacidaddecrearyanularasociacionesdeconjuntode
reglasconsesionesexistentes.Coniptables,el firewall se puede programar para asociar
el trfico devuelto generado a partir de una regla INPUT anterior. El trfico que entra
correctamenteenelhostpuedesalirautomticamentedel host al ser devuelto, indicando
simplementequegeneredinmicamenteunaregladedevolucin.
Las ventajas de la tecnologa de inspeccin de paquetes de estado (SPI, State Packet
Inspection) no se limitan a la eficacia de las reglas. Ipchains no permite diferenciar la
"verdaderanaturaleza"deltrficodelared.Porejemplo,unfirewall ipchains programado
para permitir el trfico FTP de salida tambin tendr una regla INPUT asociada para
permitir la devolucin de paquetes. Si un atacante puede fabricar paquetes FTP
devueltos,Ipchainspermitesuentrada.ConSPInoexisteningunasesinparaasociarestospaquetesfalsificados
y,portanto,elfirewalllosrechazara.

Nosehapodi

Osiloprefierespuedesdescargarteeldocumentoexplicandolaconfiguracindeiptables.

1.2.1.Resolucindelsupuestoprctico.
AcontinuacinsevaaconfigurarelcortafuegosparaquepermitaquelaredInterna
puedaconectarseaInternet.
Paraestablecerqueelsistemaactecomorouterhayqueejecutar:

#echo"1">/proc/sys/net/ipv4/ip_forward

Limpialaconfiguracindelcortafuegos:
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

6/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

#iptablesF
#iptablestnatF

Indicaquelaredinternatienesalidaalexteriorpor

NAT:

#iptablestnatAPOSTROUTINGs10.0.0.0/24d0/0jMASQUERADE

Sepermitetodoeltrficodelaredinternaytodolodemssedeniega:
#iptablesAFORWARDs10.0.0.0/24jACCEPT
#iptablesAFORWARDmstatestateRELATED,ESTABLISHEDjACCEPT
#iptablesAFORWARDjDROP

Guardalaconfiguracindelcortafuegosejecutando:
#iptablessave>/etc/iptables.rules

Ymodificaelfichero/etc/sysctl.confparaestablecerlavariablenet.ipv4.ip_forward=1.
Paracomprendermejoriptablessevaarealizarunamejoradelsupuestoenlaquelaredinternaslotieneacceso
alexteriorparaverpginasweb(puerto80/TCP)yparalaresolucindenombres(53/UDPy53/TCP).Adems,se
vaapublicarunservidorwebinternoqueseencuentraenladireccin10.0.0.100.
Limpialaconfiguracindelcortafuegos:

#iptablesF
#iptablestnatF

IndicaquelaredinternatienesalidaalexteriorporNAT.

#iptablestnatAPOSTROUTINGs10.0.0.0/24d0/0jMASQUERADE

Sepermitesloeltrficoweb(80/tcp)yDNS(53/udpy53/tcp).Todolodemssedeniega:

#iptablesAFORWARDs10.0.0.0/24pTCPdport80jACCEPT
#iptablesAFORWARDs10.0.0.0/24pTCPdport53jACCEPT
#iptablesAFORWARDs10.0.0.0/24pUDPdport53jACCEPT
#iptablesAFORWARDmstatestateRELATED,ESTABLISHEDjACCEPT
#iptablesAFORWARDjDROP

Redirigeeltrficowebqueentraporlainterfazexterna(eth0)alservidordelaredinterna:
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

7/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

#iptablestnatAPREROUTINGieth0ptcpdport80jDNATto10.0.0.100:80

Guardalaconfiguracindelcortafuegosejecutando:

#iptablessave>/etc/iptables.rules

Finalmente,modificaelfichero /etc/network/interfacesyescribealfinal:

preupiptablesrestore</etc/iptables.rules

1.3.DHCP.
El mantenimiento y la configuracin de la red en los equipos de una red
pequeaesrelativamentefcil.Sinembargo,cuandosedisponedeuna
red grande con equipos heterogneos, la administracin y asignacin de
direccionesIPsascomolaconfiguracindelosequipos,seconvierteen
una tarea compleja de difcil mantenimiento y gestin. Cualquier cambio
en la configuracin de red, el servidor de nombres, la direccin IP
asignada,lapuertadeenlace,etctera,conllevaunexcesivotiempopara
ejecutarlatarea.
Porotraparte,enentornosconequiposmviles,lagestinyasignacindedireccionessuponeunatareacompleja
que, aunque puede resolverse con la asignacin de direcciones IP estticas, conlleva la asociacin fija de una
direccin IP al mismo equipo, para evitar conflictos, y la imposibilidad de su reutilizacin si un porttil no est
conectadoalaredlocalenunmomentodeterminado.
ste es el mismo problema que se presenta en el entorno de trabajo de un ISP: o se dispone de un sistema de
asignacin dinmica y flexible que permita reutilizar las direcciones de tal forma que slo los equipos conectados
en un momento determinado a la red tienen asignada una direccin IP, o se dispone de una direccin IP distinta
por cada cliente es inviable con el nmero de usuario conectados a Internet. El servidor DHCP surge ante la
necesidadderealizarlaasignacindinmicayautomticadelasdireccionesIPdeunared.
ElservidorDHCPseencargadegestionarlaasignacindedireccionesIPydelainformacindeconfiguracinde
la red en general. Para ello, necesita de un proceso (dhcpd) y un fichero de configuracin (/etc/dhcpd.conf) que
proporcionalainformacinnecesariaalproceso.
LosdatosmnimosqueunservidordeDHCPproporcionaaunclienteson:direccinIP,mscaradered,puertade
enlace(gateway)yservidorDNS.
ElprotocoloDHCPincluyedosmtodosdeasignacindedireccionesIP:
Asignacin dinmica. Asigna direcciones IPs libres de un rango de direcciones establecido por el
administradorenelfichero/etc/dhcpd.conf.Eselnicomtodoquepermitelareutilizacindinmicade
lasdireccionesIP.
Asignacin por reservas. Si quieres que un dispositivo o equipo tenga siempre la misma direccin IP
entonces la mejor forma es establecer una reserva. Para ello, en el fichero de configuracin para una
determinada direccin MAC se asignar una direccin IP. Este mtodo es muy til para aquellos
dispositivos que no cambian de direccin IP. Por ejemplo, es deseable que una impresora en red tenga
siemprelamismadireccinIPyaquesicambiadedireccinIPdebesconfigurarnuevamentelaimpresora
entodoslosequiposclientesquelautilicen.
En el fichero /etc/dhcpd.conf se almacena toda la informacin referente a la asignacin de direcciones IPs a los
clientes.Estainformacinincluye:
RangodedireccionesIPaotorgaralosclientes.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

8/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

AsociacinfijadedireccionesIPaclientes,medianteelusodeladireccinMAC.
Periododevalidezdelasasignaciones.
Servidoresdenombresywins.
SitienenonoautoridadparaasignardireccionesIP.

1.3.1.Resolucindelsupuestoprctico.
En primer lugar, es
servidorDHCPejecutando:

necesario

realizar

la

instalacin

del

#aptgetinstalldhcp3server

ConfigurarelservidorDHCPparalaasignacindinmicadedireccionesIP,de
tal forma que se preste servicio a la red 10.0.0.0/24 y, por otro lado, realizar una reserva al porttil con direccin
MAC(AA.BB:CC:DD:EE:FF)paraqueseleasignesiempreladireccinIP10.0.0.254.
Paracomenzarconlaconfiguracin,debesindicarlosparmetrosgeneralesdelservidorycomunesalosequipos
de la red, la informacin necesaria para que ste sepa cmo comportarse. As, si el servidor dhcp.ejemplo.es es el
que tiene la autoridad sobre la zona, se quiere que el tiempo mximo de asignacin de una direccin IP sea de
unasemana(maxleasetime).Paraelloelfichero /etc/dhcp3/dhcpd.confdebetenerelsiguientecontenido:

authoritative;
oneleaseperclienton;
serveridentifier10.0.0.1;
defaultleasetime604800;
maxleasetime604800;
ddnsupdatestyleadhoc;

Posteriormente, se deben introducir los parmetros generales que se transmitirn a los clientes de la red. La red
10.0.0.0conlamscaradered255.255.255.0tienecomopuertadeenlaceladireccinIP10.0.0.1yquiereutilizar
los servidores de nombres 8.8.8.8 y 194.224.52.36. Adems, hay que tener en cuenta el rango de direcciones IP
quedeseaasignarporDHCPqueenelejemploesdesdeladireccin10.0.0.100ala10.0.0.254.
Apartirdeestosparmetrosdeconfiguracindebesescribirenelficherolasiguienteconfiguracin:

subnet10.0.0.0netmask255.255.255.0{
range10.0.0.10010.0.0.254;
optionsubnetmask255.255.255.0;
optionbroadcastaddress10.0.0.255;
optionrouters10.0.0.1;
optiondomainnameservers8.8.8.8,194.224.52.36;
optiondomainname"miempresa.com";
}

Como se desea realizar la reserva de la direccin IP 10.0.0.254 para el porttil con la direccin MAC
AA:BB:CC:DD:EE:FFdebesaadirlassiguienteslneas:

hostportatil{
hardwareethernetAA:BB:CC:DD:EE:FF;
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A%

9/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

fixedaddress10.0.0.254;
}

Paracomprobarquelaconfiguracindelservidor dhcpdseharealizadocorrectamenteejecuta:

#dhcpd3eth1

Siendoeth1lainterfazdereddondequierequeelservidordhcpdofrezcasusservicios.
Unavezconfiguradocorrectamenteelservidor,iniciaelservicioejecutando:

#servicedhcp3serverstart

Finalmente,configuraelsistemaparaqueseinicieautomticamenteelserviciodhcpaliniciarelequipo:

#chkconfigdhcp3serveron

Deestaformaelservidor dhcpdirasignandoautomticamentelasdireccionesIPalosequiposqueseconectena
la red. Para comprobar las asignaciones que se han realizado puedes consultar el
fichero /var/lib/dhcp3/dhcpd.leasesdonde,comopuedesveracontinuacin,semuestranlosdatosdecadaconcesin
dedireccinIP:

DatosmsimportantesdelservicioDHCP.
Nombredelservicio:
Ficherodeconfiguracin:
Concesionesdedirecciones:
Comandosmsutilizados:

dhcp3server
/etc/dhcp3/dhcpd.conf
/var/lib/dhcp3/dhcpd.releases
dhcpd3
dhclient

Autoevaluacin

QufuncinNOrealizaelservicioDHCP?
PermitequelosclientesobtenganladireccinIPdeformaautomtica.
PermiterealizarreservasdedireccionesIP.
PermiteoptimizarlasdireccionesIPdelared.
Permitedarunamayorseguridad.

2.Compartirarchivoseimpresoras(Samba).
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

10/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Casoprctico

AnayJuanestncadaunoutilizandosuordenador.
Juan, tengo aqu todos los documentos que me pediste pero ocupan
muchoespacioynotengoUSBcmotelospaso?
Muyfcil,vamosacompartirunacarpetaporredymelopasas.
Asdefcilcmosehace?

Samba es el mtodo ms utilizado para permitir la integracin entre


sistemas,yaquepermitequelosequiposWindowsy GNU/Linux puedan
compartircarpetaseimpresorasentres.
Samba es una coleccin de programas que hacen que Linux sea capaz
deutilizarelprotocoloSMB(ServerMessageBlock) que es la base para
compartir ficheros e impresoras en una red Windows. Los posibles
clientes para un servidor SMB incluyen Windows y otros sistemas
GNU/Linux.
Sambaestacompuestoportrespaquetes: sambacommon(archivoscomunes), sambaclient(cliente)y samba(quees
elservidor).Porlotanto,lospaquetesquenecesitasinstalardependendelusoquequierasdarlealequipo.
Parainstalarelclienteyservidordesambaesnecesarioejecutar:

#aptgetinstallsamba4smbclient

Acontinuacin,iniciaelservicioejecutando:

#servicesamba4start

ParaqueSambafuncionecorrectamenteprimerodebesdardealtalosusuariosdelsistemayluegoconfigurarlos
recursosacompartir.

2.1.Gestindeusuarios.
Sambarealizaunagestindeusuariosindependientealadelsistemaoperativo.Por
estaraznnecesitasdardealtaalosusuariosquevayanautilizarSamba.
El comando smbpasswd se utiliza para administrar los usuarios de Samba, y sus
contraseas.Lasintaxisdelcomandoes:

#smbpasswdopcionusuario

Dondeopcioneslaopcinarealizaryusuario es el nombre del usuario con el que


quierestrabajar.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

11/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

As por ejemplo, para aadir el usuario juan debes ejecutar el comando smbpasswd a juan e introducir su
contrasea:

#smbpasswdajuan
NewSMBpassword:
RetypenewSMBpassword:
Addeduserjuan.

Yparaeliminarlohayqueejecutar:

#smbpasswdxjuan
Deleteduserjuan.

Parapoderaadirunusuarioensambastetienequeexistirenelsistema.Paradardealtaunusuario
enelsistemautilizaelcomando adduser.
Para ver todos los usuarios de Samba en las primeras versiones bastaba con ver el contenido del
fichero /etc/samba/smbpasswd pero en las actuales versiones los usuarios y contraseas se guardan en la base de
datosdeSamba.
ParaverlosusuariosdeSambadebesejecutarelsiguientecomando:

#pdbeditwL

juan:500:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:3527DA04C3D767E36C618ED59764BD43:[U]:LCT4B661D

encarni:503:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:0D7F1F2BDEAC6E574D6E18CA85FB58A7:[U]:LCT4C6

2.2.Compartircarpetas.
Para compartir una carpeta hay que modificar el fichero de configuracin de
samba /etc/samba/smb.conf. En la siguiente tabla puedes ver las opciones ms
importantesparacompartircarpetas.
El ejemplo ms sencillo que se puede realizar es compartir una carpeta de forma
pblicaparatodoslosusuarios.Paraelloaada:

[publico]
path=/publico
public=yes
readonly=yes

Opcionesmsutilizadasdesmb.conf.
Opcin.
[recurso]

Comentario.
Nombredelrecursocompartido.

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

12/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

browseable

Indicasisepuedeexplorardentrodelrecurso.Losposiblesvaloressonnoyyes.

comment

Proporcionainformacinadicionalsobreelrecurso(noafectaasuformadeoperar).

create
mode

Especificalospermisospordefectoquetienenlosficheroscreados.

directory
mode

Especificalospermisospordefectoquetienenlosdirectorioscreados.

forceuser

Especificaelusuariopropietarioquetienenlosficherosycarpetasquesecrean.

force
group
guestok
path
public
readonly
valid
users
writable
writelist

Especificaelgrupopropietarioquetienenlosficherosycarpetasquesecrean.
Indicasisepermiteelaccesoausuariosannimos.Losposiblesvaloressonnoyyes.
Carpetaacompartir.
Indicasieldirectoriopermiteelaccesopblico.Losposiblesvaloressonnoyyes.
Indicaqueeldirectorioesslolectura.Losposiblesvaloressonnoyyes.
Indicalosusuariosquepuedenaccederalacarpeta.Paraaadirungrupoentonceshayque
ponerelnombredelgrupoprecedidodela@.
Indicaquesepuedemodificarelcontenidodelacarpeta.
Indicalosusuariosquepuedenmodificarelcontenido.

Osiloprefieres,puedesestablecerqueelrecursoseaaccesiblesolamenteporunosdeterminadosusuarios:

[miscosas]
path=/datos/
comment=Datosyaplicaciones
validusers=juan,encarni,@master

Lgicamentelosusuariossehantenidoquecrearpreviamenteyelgrupo masterdebeexistirenelfichero /etc/group.

master:x:502:juan,encarni

A continuacin se ampla el ejemplo pero estableciendo el permiso de escritura para el usuario juan y el permiso
delecturaparaelusuarioencarniyelgrupo master.Adems,cuandounusuariocreaunficheroocarpetastese
creaenelsistemaconunpropietario(juan:juan)yunosdeterminadospermisos(770).

[miscosas]
path=/datos/
comment=Datosyaplicaciones
validusers=juan,encarni,@master
writeable=yes
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

13/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

writelist=juan
readlist=juan,@master
forceuser=juan
forcegroup=juan
createmode=770
directorymode=770

Cuandosecomparteunacarpetaesnecesarioestablecerlospermisosenelficherodeconfiguraciny
enelsistemadeficheros.Paraellopuedesutilizarloscomandos: chmod,chownychgrp.
Finalmente,paraqueseapliquenloscambiosreiniciaelservicio:

#servicesamba4restart

2.3.Compartirimpresoras.
Existen dos formas de compartir las impresoras que se encuentran conectadas al equipo para que las puedan
utilizartodoslosclientesdelared:atravsdelaherramientagrfica systemconfigprinteroutilizando samba.
Existen impresoras con tarjeta de red que permiten a los clientes imprimir directamente sin necesidad
deningnservidor.
systemconfigprinter
La herramienta Impresoras, que se encuentra dentro del men Sistema > Administracin, permite compartir las
impresorasdelsistemadeunaformagrfica.Aliniciarlaherramienta,elsistemamuestralasimpresorasactivas.

Lastareasmsfrecuentesquesepuedenrealizanson:
CompartirlasimpresorasatravsdeInternet.Paraqueotros
equipos puedan utilizar las impresoras del servidor ve al
men Servidor y selecciona Configuracin. En la ventana que se
muestra
activa
la
casilla
Publicar
impresoras
compartidasyPermitirlaimpresindesdeInternet.
Compartir una impresora. Selecciona la impresora que deseas
compartir,pulsaelbotnderecho,seleccionePropiedadesyenla
pestaaControldeaccesoindicalosusuariosquepuedenutilizar
Opcionesdelservidor.
laimpresora.
Administrarlosgruposdeimpresin.Permitequevariasimpresorasformenunmismogrupo,deforma
quecuandoseenvauntrabajoseproceseenlaimpresoraqueseencuentredisponible.
Paragestionarlostrabajosdelaimpresoraseleccionalaimpresora,pulsaelbotnderechoyselecciona
Ver la
cola de impresin. En la ventana que aparece permite ver y administrar todos los trabajos de la
impresora.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

14/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Samba
ParacompartirunaimpresorahayqueaadirenelficherodeconfiguracindeSamba /etc/samba/smb.confun nuevo
recursosiguiendolasiguienteestructura:

[printers]
comment=Allprinters
path=/var/spool/samba
browseable=no
printable=yes
public=no
writable=no
createmode=0700

ElaccesoalasimpresorasGNU/LinuxdesdeWindowsfuncionadelamismaformaquelosdirectorios.Elnombre
compartido es el nombre de la impresora Linux en el fichero printtab. Por ejemplo, para acceder a la
impresora HP_laserjet,losusuariosdeWindowsdeberaccedera \\smbserv\HP_laserjet.
Amododeresumen,enlatablasemuestranlosparmetrosutilizadosenlaseccin [printers].

Opcionesmsutilizadasdesmb.conf(seccinprinters).
Parmetro.
comment

Comentario.
Proporcionainformacinsobrelaseccin(noafectaalaoperacin).

path

Especificalarutadeaccesoalacoladeimpresinospool(quepordefecto
es/var/spool/samba).EsposiblecrearundirectoriodespoolparaSambayhacerqueapunte
al.

browseable

Comoconlosdirectoriosraz,siindicaNOseaseguradequeslopuedenverlasimpresoraslos
usuariosautorizados.

printable

SedebeponerYES,sinosehaceasnofuncionarnlasimpresoras.

public
writable

SiseponeYES,cualquierusuariopodrimprimir(enalgunasredesseponeNOparaevitarla
impresinexcesiva).
Lasimpresorasnosonescribibles,porlotantoescribaNO.

2.4.Asistentesdeconfiguracin.
Dado el gran uso que se realiza de Samba para compartir informacin entre sistemas Windows y GNU/Linux,
existenvariasinterfacesquefacilitanelprocesodeconfiguracindelsistema.Lasinterfacesmsimportantesson:
Swat.EsunainterfazwebespecficaparaadministrarSamba.Pararealizarlainstalacindebesejecutar:
#aptgetinstallswat

Finalmente, inicia el navegador y escribe la direccin http://127.0.0.1:901 y aparece la interfaz de


administracindeswat.
Webmin.Comosiemprewebminpermiteconfigurarcualquierserviciodelservidor.Paraaccederalmdulo
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

15/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

deconfiguracinpulseenServers.SambaWindowsFileSharing.

Administracindesambautilizandoswat.

systemconfigsamba. Por ltimo, tambin dispones de la herramienta de xWindows para administrar


samba.Parainstalarladebesejecutar:
#aptgetinstallsystemconfigsamba

Adems,esnecesarioinstalarlassiguientesdependencias:

#aptgetinstallgksupythongtk2pythonglade2

2.5.Cliente.
Ademsdeactuarcomoservidordeficheros,elequipopuedeutilizarsecomocliente
paraaccederalosrecursoscompartidosquehayenotrosservidores.
Existen varias formas para acceder desde GNU/Linux a carpetas e impresoras
compartidas. La forma ms sencilla es mediante dos programas cliente que vienen
en la instalacin de Samba: smbclient y smbprint. Aunque esta solucin funciona,
est algo limitada, particularmente en el acceso a ficheros. Smbclient proporciona
una forma similar a un servidor FTP para acceder a un recurso remoto compartido.
NopermiteelusodecomandosnormalesdeUnixcomo cpy mv para manipular los
ficheros y, por lo tanto, no permite acceder a los recursos compartidos de otras
aplicaciones (a diferencia de los sistemas de ficheros remotos montados
con
NFS, que aparecen para las aplicaciones GNU/Linux como sistemas de
ficheroslocales).
EsteproblemasepuedeevitarmontandoelsistemadeficheroscompartidossambaenGNU/Linux,comosehace
consistemasdeficherosNFSylocales.
La forma ms sencilla de acceder a un recurso compartido de Samba es montarlo en una carpeta y as poder
accederalcontenidodelrecursodelamismaformaquelohacesconcualquierotracarpetadelsistema.
Para montar el recurso primero hay que crear la carpeta donde se va a montar el recurso y luego ejecuta el
comando mount.

$mkdir/prueba
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

16/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

$mounttcifsouser=usuario,pass=contrasena//10.0.0.1/recurso/prueba

Donde:
tcifs.Indicaeltipodeficherosquesevaautilizarqueenestecasoescifs.
ouser=usuario,pass=contrasena.Indicaelnombredelusuarioylacontraseaconlaquiereacceder.
//10.0.0.1/recurso.IndicaladireccinIPyelnombredelrecursoalquequieresacceder.
/prueba.Eseldirectoriodondesevaamontarelrecursocompartido.
Para ver si se ha montado correctamente el recurso puedes ejecutar el comando mount o entrar en la
carpetayversucontenido.
Para que el recurso se monte automticamente al iniciar el equipo hay que aadir al fichero /etc/fstab la siguiente
lnea:

//10.0.0.1/recurso/pruebacifsrw,username=login,password=pass00

Donde usernamey passwordespecificanelnombreylacontraseadelusuarioconelqueaccederalservidor.

DatosmsimportantesdelservicioSamba.
Nombredelservicio:

samba4

Ficherodeconfiguracin:

/etc/samba/smb.conf

Comandosmsutilizados:

smbpasswdsmbclientpdbeditmount

Puertosutilizados:

137/UDP,138/UDP,139/TCPy445/TCP

3.NFS.

Casoprctico

AnavisitaaJuanporquetieneunproblema
Juan,tengoquehacerquedosservidorescompartaninformacinentre
syhepensadoenutilizarSAMBAtalycomomeenseastehacepoco.
Eslamejoropcin?
Samba esta pensado para compartir carpetas e impresoras entre
equipos Windows. Si ambos equipos son GNU/Linux lo mejor es que
utilices NFS que es un servicio mucho ms seguro. Mira te enseo a
utilizarlo,esmuyfcil!

NFS(NetworkFileSystem)esunservicioquepermitequelosequiposGNU/Linuxpuedancompartircarpetasentre
s.ElservicioNFSsebasaenelmodelocliente/servidordeformaqueunservidorcomparteunacarpetaparaque
losclientespuedanutilizarla.Deestaforma,unavezqueunclientemontaunacarpetacompartidapuedeutilizarla
normalmentecomosisetrataradeunacarpetadelsistemadeficheroslocal.
Parainstalarelservicionfsdebesejecutar:
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

17/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

#aptgetinstallnfskernelservernfscommonportmap

Antesdeiniciarlaconfiguracinhayqueiniciarelservicioejecutando:

#servicenfskernelservicestart

3.1.Compartirunacarpeta.
Para indicar los directorios que se desean compartir hay que modificar el fichero
/etc/exportsdelasiguienteforma:

<directorio><IP>(permisos)<IP>(permisos)...

Los permisos que se pueden establecer son: rw (lectura y escritura) y ro (lectura).


Porejemplo,paracompartirlacarpeta /datosparaqueelequipo192.168.20.9pueda
acceder en modo lectura y escritura, y el equipo 192.168.20.8 tan slo pueda
accederenmodolecturaseescribe:

/datos192.168.20.9(rw)192.168.20.8(ro)

LacarpetasecompartesolamentealaIPestablecidaenelfichero/etc/exportsporelusuario nfsnobody.
De forma que la carpeta que estas compartiendo tiene que tener los permisos para el usuario nfsnobody. Para
establecerlospermisosejecuta:

#chmod660/datosR
#chownnfsnobody/datosR
#chgrpnfsnobody/datosR

Como el usuario nfsnobody tiene un UID y GID diferente en cada equipo es recomendable asignarle el mismo
identificadormodificandolosficheros /etc/passwdy /etc/groupstantoenlosequiposclientescomoservidores.
Unavezcompartidalacarpeta,reiniciaelservicioejecutando:

#servicenfskernelservicerestart

3.2.Configuracindelcliente.
Para acceder al directorio que comparte el servidor hay que montarlo, ya sea
manualmente,oautomticamentealiniciarelequipo.
Paramontarelsistemadeficherosenelclientehayqueejecutar:

#mount192.168.20.100:/datos/prueba

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

18/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Donde:
192.168.20.100:/datoseslacarpetaquesehacompartidoenelservidorenelfichero/etc/exports.
/mnt/trabajoeslacarpetadondesemontalacarpetacompartida.
Sideseasmontarlacarpetaautomticamentealiniciarelsistema,hayquemodificarelfichero /etc/fstab aadiendo
lasiguientelnea:

192.168.20.100:/datos/pruebanfsrw,hard,intr00

Donde:
rw. Indica que se monta el directorio en modo lectura/escritura. Para montarlo slo en modo lectura
escribaro.
hard. Indica que si al copiar un fichero en la carpeta compartida se pierde la conexin con el servidor se
vuelvaainiciarlacopiadelficherocuandoelservidorseencuentreactivo.
intr. Evita que las aplicaciones se queden "colgadas" al intentar escribir en la carpeta si no se encuentra
activa.

DatosmsimportantesdelservicioNFS.
Nombredelservicio:
Carpetascompartidas:
Comandosmsutilizados:
Puertos:

nfs
/etc/exports
mount
2049/TCPy2049/UDP

Autoevaluacin

QuserviciospermitecompartirdatosconotroequipoLinux?
Telnet.
Samba.
NFS.

MostrarInformacin

4.Accesoremotoalsistema.

Casoprctico

Pufff, Hemos puesto el servidor en la planta de arriba y cada vez que tengo que instalar algo tengo
quesubirarealizarlatarea.Estoycansadadetantasescaleras!
Porqunolohacesdeformaremota?
Cmosehaceeso?
Muy fcil, nos conectamos por ssh o por vnc al equipo y lo utilizamos directamente desde cualquier
ordenador.Cuandoterminemoselcaf,vamosyteenseo.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

19/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

LosserviciosmsutilizadosparaaccederdeformaremotaaunsistemaGNU/Linuxson:
Telnet.Permiteaccederalsistemadeformaremotadeunamaneranosegura.
Open SSH. Permite acceder al sistema por terminal, pero de forma segura ya que se cifran las
comunicaciones.
VNC. Mientras que los servicios telnet y
SSH permiten conectarse al servidor por medio de un
terminal, el servidor VNC permite utilizar el servidor utilizando el escritorio instalado en el
sistema:GNOMEoKDE.

4.1.SSH.
SSH es un protocolo que permite conectarse de forma segura a un
servidorparapoderadministrarlo.Enrealidad,esmsqueeso,yaque
se ofrecen ms servicios como la transmisin de ficheros, el
protocoloFTPseguroe,incluso,sepuedeusarcomotransportedeotros
servicios.
ElprotocoloSSHgarantizaquelaconexinserealizadesdelosequipos
deseados (para lo que usa certificados) y establece una comunicacin
cifrada entre el cliente y el servidor, mediante un algoritmo
de
cifradorobusto (normalmente con 128 bits) que se utilizar para
todoslosintercambiosdedatos.

PginaoficialopenSSH.

AcontinuacinvasavercmoinstalaryconfigurarelservicioOpenSSHporserelservidorSSHmsutilizado.
AlserSSHelmecanismomsfrecuenteparaaccederaunservidor,OpenSSHseinstalapordefectoalrealizarla
instalacindelsistema.NoobstantepuedesrealizarlainstalacindeOpenSSHejecutando:

#aptgetinstallssh

Einiciarelservicioejecutando:

#servicesshstart

Finalmente,sideseasqueelservicioseejecuteautomticamentealiniciarelsistemaejecutars:

#chkconfigsshon

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

20/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Parasaberms

Para evitar los ataques de fuerza bruta, una de las mejores soluciones es utilizar fail2ban. Si
utilizas fail2ban cuando se realizan 5 intentos fallidos de autentificacin en el sistema, fail2ban se
comunicaconelcortafuegos iptablesybloqueatudireccinIP.
fail2ban.

Nosehapodi

4.1.1.Configuracin.
El servidor openSSH utiliza el fichero de configuracin /etc/ssh/sshd_config y
normalmentenoesnecesariomodificarlo.Losparmetrosmsimportantesson:
Port y ListenAdress. Por defecto el servicio ssh trabaja en el puerto 22 y
responde por todas las interfaces del sistema. Los siguientes parmetros
permitencambiarelpuertoyladireccin,enlasqueatenderpeticiones:
Port22
ListenAddress0.0.0.0

PermitRootLogin.Establecesisepermiteonoelaccesodelusuariorootalservidor.
PermitRootLoginno

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

21/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

AllowUsers. Permite restringir el acceso a los usuarios del


parmetroAllowUsersindicalosusuariosquepuedanaccederalsistema.

sistema.

Al

utilizar

el

AllowUserscesarsonia

Tambinesposibleindicarelequipoanfitrindesdeelquepuedenconectarse.Enelsiguienteejemploslo
losusuarioscesarysoniapuedenconectarsealservidordesdeelequipo10.0.0.2.

AllowUserscesar@10.0.0.2sonia@10.0.0.2

Mensajesdeentradayconexin:
PrintMotdyes
Banner/etc/issue.net

Configuracindeseguridadycontroldeacceso:
IgnoreUserKnownHostsno
GatewayPortsno
AllowTcpForwardingyes

Usodesubsistemasparaotrasaplicaciones,comoporejemplo,FTP.
Subsystemsftp/usr/lib/openssh/sftpserver

Unavezconfiguradoelservidor,paraqueseapliquenloscambios,debesejecutar:

#/etc/init.d/sshrestart

4.1.2.Clientessh.

Cuando se trabaja con servidores lo normal es administrarlos de forma


remotaatravsdeSSHoWebmin.SiutilizasunequipoLinuxyquieres
conectartealservidortanslohayqueejecutar:

$ssh<equipo>
ConexinremotaporSSHconPuTTY.

DondeequipopuedeindicarelnombredelequipooladireccinIPdelmismo.
SiutilizasWindowsyquieresconectartealservidorenGNU/LinuxlomejoresutilizarlaaplicacinPuTTY.
Putty.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

22/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Elcomando scppermitecopiarficherosenequiposremotosatravsdessh scp/etc/passwd10.0.0.2:/root.

Parasaberms

Esposibleconfigurarelservidorparapermitirlautilizacindeloscomandossshyscpsinnecesidadde
escribirlacontrasea.Paramsinformacinvisitalasiguientepgina.
SSHySCPsincontrasea.

DatosmsimportantesdelservicioSSH.
Nombredelservicio:
Ficherodeconfiguracin:
Hostalosqueselespermiteelacceso:
EquiposautorizadosparaaccederporSSHsincontrasea:
Comandosmsutilizados:

sshd
/etc/ssh/sshd_config
/etc/host.allow
$HOME/.ssh/authorized_keys
ssh,scpysftp
22/TCP

Puertoutilizado:

4.2.VNC.
VNC es un programa con licencia GPL que utiliza el modelo
cliente/servidor y permite acceder a un equipo remoto utilizando su
entornogrfico.
Pararealizarlainstalacindelservidorvncdebesrealizarlossiguientes
pasos:
Instalaelservidordevncejecutando:
#aptgetinstalltightvncserver

Indicalacontraseadelservidorvncejecutandoelcomando:
#vncpasswd

Ejecutaelsiguientecomandoparacrearautomticamentelosficherosdeconfiguracineiniciarelservicio:
#vncserver

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

23/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

DatosmsimportantesdelservicioVNC.
Nombredelservicio:
Ficherodeconfiguracin:
Comandosmsimportantes:
Puertos:

vncserver
/etc/sysconfig/vncservers
vncpasswdvncserver
6000/tcp,6001/tcp,6002/tcpy6003/tcp.

4.2.1.Cliente.
Para acceder al servidor puede utilizar cualquier cliente VNC. Por
ejemplo, en sistemas GNU/Linux puede utilizar
Vinagre y en
sistemasWindowspuedeutilizartightVNC.
Vinagre(GNU/Linux).
Si quieres acceder desde un equipo GNU/Linux a un servidor VNC, la
mejor opcin es utilizar el cliente vinagre. Para utilizar vinagre primero
debesinstalarloejecutando.
AccesoalservidorporVNCconVinagre.

#aptgetinstallvinagre

VealmenAplicaciones,Internetyejecutalaaplicacin Remote Desktop Viewer. Pulsa el botn Connect, indica


ladireccindelservidorVNC(porejemplo,10.0.0.1:5901)ypulsaConnectparaaccederalservidorVNC.
tightVNC(Windows).
tightVNC es un cliente/servidor VNC que se encuentra licenciado bajo GPL. Para acceder desde Windows al
servidorVNCdeberealizarlossiguientespasos:
DescargartetightVNC.
tightVNC.
InstalaenelequipoelvisortightVNC.
EjecutatightVNCViewerquepuedesencontrardentrodelmendeaplicacionestightVNC.
EntihgtVNCServerindicaladireccinIPdelservidoryelpuerto(porejemplo,10.0.0.1:5901).

Finalmente, pulsa el botn Connect, introduce la contrasea del servidor VNC establecida durante el
procesodeinstalacinyyatienesaccesoalescritoriodelservidor.

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

24/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Nosehapodi

Autoevaluacin

Indicalaopcinincorrecta.
ElservicioSSHpermiteelaccesoremotoatravsdeunterminal.
ElservicioVNCpermiteconectarmeaunequipodeformagrfica.
ElservicioTelnetesseguro.
ElprogramatightVNCpermiteconectarmeaunequipoWindows.

5.ServidorWeb.

Casoprctico

Para mejorar la imagen de la empresa vamos a tener nuestro


propio servidor web. Hasta ahora estbamos utilizando un servidor
externo pero como vamos a incorporar muchos nuevos servicios,
vamosautilizarelnuestro.Juannecesitoquehagastesatarea.
De acuerdo, pero he visto que hay muchos servidores web Cul
utilizo?
Aunque hay muchos servidores web, con diferencia, el ms
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

25/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

utilizado es Apache. As que lo mejor es instalar Apache en el servidor. Adems, es muy sencillo y
permiterealizarunmontndetareasconl.

ParainstalarelservidorApachefcilmente desde repositorios ejecuta el


comando:

#aptgetinstallapache2

Elservicioseiniciaautomticamente:
PginawebdepruebadeApache.

#chkconfigapache2on

Parainiciarahoraelservicio:

#serviceapache2start

Una vez instalado, apache publica automticamente el contenido del directorio /var/www. De esta forma, para
publicarunapginawebdebescrearlaendichodirectorio.
Paraaccederalawebprincipaldelservidorescribeenlabarradedirecciones http://localhost/o http://direccin_ip/:

Nosehapodi

5.1.Instalarmdulophp.
PHP es un lenguaje de programacin interpretado por el servidor de pginas web de forma que stas se
puedengenerardeformadinmica.PHPnosloseutilizaparaestepropsito,sinoqueademssepuedeutilizar
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

26/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

desdeunainterfazdelneadecomandosoparalacreacindeaplicacionesconinterfacesgrficas.

Parasaberms

Enladireccinweboficialdelproyectopuedesencontrarunaampliadocumentacinsobreellenguaje:
manuales,sintaxisutilizada,interfazparalaprogramacindelasaplicaciones,etctera.
SitiooficialdePHP.

ParainstalarPHPautomticamenteejecuta:

#aptgetinstallphp5

Para comprobar que PHP se ha instalado con xito puedes crear un


ficherophpyubicarloeneldirectoriorazdelservidorweb.Porejemplo
para mostrar toda la informacin til disponible y detalles sobre la
instalacinactualdePHP,editaelfichero /var/www//info.php.

Ejecucindephpinfo().

#nano/var/www/info.php

Elcontenidodelficheroincluyeunasentenciaparaejecutarlafuncinphpinfo()quepermiteobtenerlainformacin
sobreelmdulophp.

<?php
phpinfo();
?>

As,alejecutarelficheroenunapeticin
HTTPelservidorlanzalasentenciaymuestraelcontenidosolicitado,
deformadinmica.AntesdeprobaraejecutaresteficheroreiniciaelservidorApache:

#serviceapache2restart

Ahoras,iniciaunnavegadorwebyescribeenlabarradedirecciones http://localhost/info.php.Comopuedesveren
la siguiente figura, PHP se encuentra correctamente instalado. Si observas con detenimiento la informacin
mostradapuedesver,porejemplo,quetrabajaatravsdeApache,losmdulosactualmentehabilitados,etctera.

5.2.Configuracin.
Laconfiguracindeapachesealmacenaeneldirectoriodeconfiguracin /etc/apache2.Acontinuacinsevanaver
lasopcionesdeconfiguracinmsutilizadasparacadaunodelosficheros:
/etc/apache2/ports.conf.
Permite
establecer
los
puertos
de
escucha
comunicacioneshttpnormales(puerto80)ylascomunicacionesseguras
https(puerto443).

para

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

las

27/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Listen*:80
Listen*:443

/etc/apache2/apache2.conf.Unadelasopcionesmsimportantesesque
se puede establecer el usuario y grupo al que pertenecen los procesos que
ejecutaelservidor:
Userwwwdata
Groupwwwdata

Apachealmacenaenlacarpeta /etc/apache2/sitesavailablelaconfiguracindecadaunodelossitioswebdeapache.
Pordefectoseencuentranlossitios defaulty defaultssl.Cadasitiotienelasiguienteestructura:

<VirtualHost*:80>
ServerAdminservermaster@localhost
#Servernamewww.miempresa.com#comentadoendefault
DocumentRoot/var/www
DirectoryIndexindex.htmldefault.html
</VirtualHost>

Donde:
ServerAdmineselcorreoelectrnicodeladministradordelsitioweb.
ServernameeselnombreFQDNdelsitioweb.Paraeldominiodefaultnoseindicaningnnombre,pero
paraatenderpeticionesespecficasdedominios(porejemplo,www.miempresa.com)ssedebeestablecer.
DocumentRoot.Indicalaubicacindondeseencuentralaspginaswebdelsitio.
DirectoryIndex.Indicaelnombredelosficherosqueenvapordefectoelservidorweb.
Nuevositio
Pordefectoelservidorwebpublicaeldirectorio /var/www/para todos los dominios pero es posible personalizar de
forma independiente cada dominio. Por ejemplo, para aadir el dominio www.miempresa.com que se aloja en la
carpeta /portales/miempresa hay que crear el fichero /etc/apache2/sitesavailable/miempresa.com con el siguiente
contenido:

<virtualhost*:80>
ServerNamewww.miempresa.com
DocumentRoot/portales/miempresa
</virtualhost>

Activarelsitio

#a2ensitemiempresa.com

Yreiniciarelservidorweb

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

28/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

#serviceapache2restart

Lgicamente para que el servidor web atienda un determinado dominio la entrada DNS (por ejemplo,
www.miempresa.com)debeapuntaralservidorweb.
Sitioseguro(https).
Con el auge de los negocios en Internet se ha popularizado el uso de
comunicaciones cifradas entre los clientes y el servidor Web, siendo la
tecnologadeencriptacinmsutilizadaelSecuritySocketLayer(SSL).
Para poder utilizar una pgina segura bajo https hay que realizar los
siguientespasos:
Activarelmdulossl:a1
Activar el sitio defaultssl aunque si quieres puedes crear un
nuevositioweb:a2
Reiniciarelservidorweb:a3

Accesoalserviciohttps.

Unavezfinalizadoelproceso,accedeaunnavegadorwebyescribe https://IP_Servidor.

Puedesgenerartupropiocertificadodeseguridadutilizandoelcomando openssl.

Parasaberms

Para aprender a realizar ms operaciones sobre Apache es recomendable que consultes la web
ww.adminso.es
www.adminso.es

Porltimo,parainiciarypararelservidorwebpuedesutilizarelcomandoservicedeformaquesiquieresiniciarel
servicioejecuta:

#serviceapache2start

Adems,puedespararelservicio(stop),reiniciarlo(restart)ovolveracargarlaconfiguracin(reload).

DatosmsimportantesdelservidorApache.
Nombredelservicio:
Ficherodeconfiguracin:
Directorioweb:
Comandosmsutilizados:

apache2(Ubuntu)
/etc/httpd/conf/httpd.conf
/var/www(Ubuntu)
htpasswd

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

29/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Puertos:

80/tcpy443/tcp

6.ServidorFTP.

Casoprctico

CarlosvaaveraJuanporquetieneunproblema.
HojaJuan,mira,tengounproblemayesqueyahehecholawebdela
empresa pero no s cmo subirla al servidor. Cmo se hace? Te la
mandoporcorreo?
No,nohacefaltaelcorreo.Esmuchomsfcil!Mira,voyainstalarel
servidorFTP y as podrs conectarte y actualizar la web de la empresa
cuandoquieras,
Genial,vamosavercmolohaces!

Vsftpd (Very Secure FTP) es un servidor FTP muy pequeo y seguro.


Para instalar el servidor FTP en el sistema debes de instalar el
paquete vsftpd (Demonio FTP muy seguro). Puedes realizar la
instalacinatravsdelalneadecomandosoatravsdesynaptic.

#aptgetinstallvsfttpd

Unavezinstaladoelpaquetedebesiniciarelservicioejecutando:

#servicevsftpdstart

Paracomprobarqueelservidorestfuncionandocorrectamentepuedesconectartealservidor:

$ftplocalhost
Connectedtolocalhost(127.0.0.1).
220(vsFTPd2.3.0)
Name(localhost:root):usuario
331Pleasespecifythepassword.
Password:
230Loginsuccessful.Havefun.
RemotesystemtypeisUNIX.
Usingbinarymodetotransferfiles.
ftp>ls
200PORTcommandsuccessful.ConsiderusingPASV
150Herecomesthedirectorylisting.
rwrr110031003179Mar1518:00examples.desktop
226DirectorysendOK.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

30/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

ftp>quit
221Goodbye.

Sielservidorestcorrectamenteinstaladoperonopermiteelaccesodesdeelexterior,esmuyposible
quenotengaselrouterconfiguradoparadejarpasareltrficodelservidorFTP.

Parasaberms

Para aprender a configurar y a proteger el servidor vsftpd es recomendable que consultes la web
ww.adminso.es.
www.adminso.es

NuncaconfigureselservidorFTPparapermitirelaccesoannimonipermitaslaescriturasinenjaulara
losusuariosdelsistema.

Datosmsimportantesdelservidor
VSFTP.
Nombredelservicio:
Ficherodeconfiguracin:
Puertoutilizado:

vsftpd
/etc/vsftpd.conf
21/tcp

Nosehapodi

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

31/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Autoevaluacin

Indicalaopcinincorrecta.
ElservidorApachetrabajanormalmenteenlospuertos80y443.
ElservidorFTPtrabajanormalmenteenelpuerto21.
ElservidorApachetrabajanormalmenteenlospuertos80y445.
ElservidorFTPpuedetrabajarenelpuerto44.

AnexoI.Configuracindeiptables.
Iptablespuedemanejarvariastablas,perolasmsimportantesson:
Filter. Es la tabla predeterminada que permite el filtrado de las comunicaciones. La tabla Filter est
compuestaportrespilas:
INPUT.Referenciaeltrficodeentrada.
OUTPUT.Referenciaeltrficodesalida.
FORWARD.Referenciaeltrficoqueelrouterreenvaaotrosequipos.
NAT. El servicio que permite dar acceso a Internet a una red interna. Esta tabla permite definir el tipo de
comunicacionesentrelaredexternaylasredesinternas.LatablaNATtienedospilas:
POSTROUTING. Permite establecer las comunicaciones desde la red interna al exterior. Por
ejemplo,parahacerquelaredinternatengaInternet.
PREROUTING. Permite establecer las comunicaciones desde la red externa a la red interna. Por
ejemplo,seutilizaparaquedesdeelexteriorsetengaaccesoaunservidorinterno.
Loscomandosbsicosde iptablesson:
iptablesL.Muestraelestadodelatablapredeterminada(filter).SiquiereverelestadodelatablaNAT
ejecutaiptablestnatL.
iptablesA<parmetros>j<accin>.Permiteaadirunareglaparaqueelcortafuegosrealiceuna
accinsobreuntrficodeterminado.
iptablesD<parmetros>j<accin>.Permitequitarunaregladelcortafuegos.
iptablesF.Limpialatabladecortafuegos.SiquiereslimpiarlatablaNATejecutaiptablestnat
F.
iptablesP<cadena><accin>.Permiteestablecerpordefectounaaccindeterminadasobreunapila.
Por ejemplo, si quieres que por defecto el router deniegue todo el trfico de la pila FORWARD ejecuta el
comandoiptablesPFORWARDDROP.
Como se ha comentado antes, con el comando iptables A <parmetros> j <accin> puedes definir la accin que
quierasquerealiceelcortafuegosconundeterminadotrfico.Enlatabla101puedesverlosparmetrosquese
utilizanparaespecificareltrfico.
LasaccionesquesepuedenrealizarenlatablaFILTERson:
jACCEPT.Aceptaeltrfico.
jDROP.Eliminaeltrfico.
jREJECT.Rechazaeltrficoeinformaalequipodeorigen.
jLOGlogprefix"IPTABLES_L".Registraeltrficoquecumpleloscriteriosen/var/log.
LasaccionesquesepuedenrealizarenlatablaNATson:
jMASQUERADE.Haceenmascaramientodeltrfico(NAT)deformaquelaredinternasalealexteriorconla
direccinexternadelrouter.
jDNATto<ip>.Seutilizaparaquedesdeelexteriorsetengaaccesoaunservidorqueseencuentra
enlaredinterna.
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

32/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Tabla10.1.Parmetrosparaespecificarlasreglasdeiptables.

Tabla10.1.Parmetrosparaespecificarlasreglasdeiptables.
Elemento.

Sintaxis.

Ejemplo.

Descripcin.

i
<interfaz>

ieth0

Interfazdeentrada.

o
<interfaz>

oeth1

Interfazdesalida.

s
<dir_red>

s
10.0.0.0/24

Reddeorigen.

d
<dir_red>

d0/0

Reddedestino.

p<tipo>

pTCP

Tipodeprotocolo.Lasopcionesson:TCP,UDPoICMP.

dport
<puerto>

pTCP
dport80

Indicaelpuertodedestino.Enelejemplodehacereferenciaal
puertodedestinohttp(80/TCP).

sport
<puerto>

pUDP
sport53

Indicaelpuertodeorigen.Enelejemplosehacereferenciaal
puertodedestinoDNS(53/UDP).

Estado.

mstate
state
<tipo>

mstate
state
ESTABLISHED

Indicaelestadodelaconexin.Losposiblesestadosson:NEW,
INVALID,RELATEDyESTABLISHED.

Accin.

j
<accin>

jACCEPT

Indicalaaccinquesevaarealizarconundeterminadotrfico.
Lasposiblesaccionesson:ACCEPT,DROP,REJECT,LOG,
DNATyMASQUERADE.

Interfaz.

Direccin.

Puerto.

Deestaformapuedes"jugar"conlosparmetrosdeunadeterminadareglaparapoderespecificarlaaccinquese
aplica.Acontinuacinpuedesvertresreglas,parapermitireltrficoquereenvaelrouter, que van desde la ms
generalalamsespecfica:
iptablesAFORWARDjACCEPT.Permitetodoeltrfico.
iptables A FORWARD s 192.168.0.0/24 j ACCEPT. Permite slo el trfico de la red interna
192.168.0.0/24.
iptablesAFORWARDs192.168.0.0/24pTCPdport80jACCEPT.Permitesloeltrficodela
redinterna192.168.0.0/24enelpuerto80.

Parasaberms

Si deseas bloquear comunicaciones por su pas de origen te recomiendo que visites la pgina web
ipinfodb.com.
ipinfodb.com

Unavezconfiguradoelcortafuegosparaguardarlaconfiguracinejecuta:

#iptablessave>/etc/iptables.rules
data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

33/34

15/5/2015

DAM_SI:SI10Completa.Administracindelared(LinuxIII).

Dondeelfichero /etc//iptables.rulesguardalaconfiguracinde iptables.Silodeseaspuedesmodificarlodirectamente


ycargarsuconfiguracinejecutando:

#iptablesrestore<etc/iptables.rules

Finalmente,modificamoselfichero /etc/network/interfacesyescribimosalfinal:

preupiptablesrestore</etc/iptables.rules

Adems de configurar iptables mediante comandos o a travs del fichero de configuracin, existen interfaces
grficasquefacilitanelprocesodeconfiguracin.Enlasiguientetablasemuestraunlistadodelasinterfacesms
utilizadasentrelasquedestacaWebmin.
Tabla10.2.Interfacesgrficasparalaconfiguracindelfirewall.

Tabla10.2.Interfacesgrficasparala
configuracindelfirewall.
Dwall.
FireHOL.
Firestarter.
FirewallBuilder.
Guarddog.
KMyFirewall.
Shorewall.
Webmin.

http://dag.wieers.com/homemade/dwall/
http://firehol.sourceforge.net/
http://www.fssecurity.com/
http://www.fwbuilder.org/
http://www.simonzone.com/software/guarddog/
http://kmyfirewall.sourceforge.net/
http://shorewall.net/
http://www.webmin.com

data:text/htmlcharset=utf8,%3Cdiv%20class%3D%22node%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20fontfamily%3A

34/34