Linux PPP C�mo
Robert Hart,
[email protected]
Traducci�n: David Mar�n Carre�o
[email protected]
v3.0, 31 de Marzo de 1997. Traducci�n: 6 de Febrero de 1999
Este documento muestra c�mo conectar su PC Linux a un servidor PPP,
c�mo usar PPP para enlazar dos redes locales y da un m�todo para con�
figurar su ordenador Linux como un servidor PPP. El documento tambi�n
da ayuda para conexiones PPP que no funcionen debido a fallos.
______________________________________________________________________
�ndice general
1. Introducci�n
1.1 Clientes y Servidores
1.2 Diferencias entre las distribuciones Linux
1.3 Herramientas de configuraci�n PPP espec�ficas de cada distribuci�n
2. Direcciones IP
3. Metas de este documento
3.1 Configurar un cliente PPP
3.2 Conectar dos redes locales o una red local a Internet utilizando PPP
3.3 Configurar un servidor PPP
3.4 Utilizar PPP en una conexi�n con cable m�dem nulo
3.5 Este documento, por ahora, NO abarca temas como...
4. Versiones de Software tratadas
5. Otros documentos �tiles/importantes
5.1 Listas de correo �tiles
6. Resumen de c�mo hacer que PPP funcione como cliente
6.1 Obtener/Instalar el software
6.2 Compilar el soporte PPP en el n�cleo
6.3 Obtener informaci�n de su proveedor de servicios de Internet (ISP)
6.4 Configurar su m�dem y puerto serie
6.5 Configurar la resoluci�n de nombres (DNS)
6.6 PPP y los privilegios de root
6.7 Comprobar los ficheros PPP de su distribuci�n y configurar las opciones de PPP
6.8 Si su servidor PPP utiliza PAP (Protocolo de Autentificaci�n de Contrase�as)
6.9 Conectar con el servidor PPP manualmente
6.10 Automatizar su conexi�n PPP
6.11 Desconectar el enlace
6.12 Si tiene problemas
6.13 Tras realizar la conexi�n
6.14 Problemas de servicios de IP est�ndar con una conexi�n PPP de IP din�mica
7. Configurar su N�cleo Linux
7.1 Instalando el c�digo fuente del n�cleo Linux
7.2 Conocer su hardware
7.3 Compilaci�n del N�cleo - Los n�cleos 1.3.x y 2.x.x
7.4 Consideraciones generales de configuraci�n del n�cleo para PPP
8. Conseguir la informaci�n requerida del servidor PPP
9. Configurar su m�dem y puerto serie
9.1 A note about serial ports and speed capabilities
9.2 Nombres de puertos serie
9.3 Configurar su m�dem
9.4 Nota acerca del Control de Flujo Serie
9.5 Probar que su m�dem puede marcar
10. Configurando la resoluci�n de nombres (DNS)
10.1 El fichero /etc/resolv.conf
10.2 El fichero /etc/host.conf
11. Utilizaci�n de PPP y de privilegios de root
12. Configurar los ficheros de conexi�n PPP
12.1 El fichero options.tpl suministrado
12.2 �Qu� opciones deber�a usar? (No PAP/CHAP)
13. Si su servidor PPP utiliza PAP (Protocolo de Autentificaci�n de Contrase�as)
13.1 Utilizando MSCHAP
13.2 El fichero de secretos PAP/CHAP
13.3 El fichero de secretos PAP
13.4 El fichero de secretos CHAP
13.5 Manejar conexiones m�ltiples autentificadas con PAP
14. Estableciendo la conexi�n PPP de manera manual
15. Automatizando sus conexiones - Creando los scripts de conexi�n
15.1 Scripts de conexi�n para autentificaci�n tipo Nombre de usuario/Contrase�a
15.2 El script ppp-on
15.3 Editar los scripts de inicio PPP suministrados
15.3.1 El script ppp-on
15.3.2 El script ppp-on-dialer
15.4 Qu� quiere decir un script Chat...
15.4.1 Arrancando PPP en el lado del servidor
15.5 Un script chat para conexiones autentificadas por PAP/CHAP
15.6 Las opciones de pppd debug y file fichero_opciones
16. Comprobar su script de conexi�n
17. Desconectando la conexi�n PPP
18. Depurando
18.1 He compilado el soporte PPP en el n�cleo, pero...
18.1.1 �Est� arrancando el n�cleo correcto? Aunque usted haya recompilado el n�cleo para que de soporte a ppp, usted puede no estar arrancando el nuevo n�cleo. Esto puede suceder si no actualiza /etc/lilo.conf y vuelve a ejecutar lilo.
18.1.2 �Compil� el soporte ppp del n�cleo como m�dulo?
18.1.3 �Est� usted utilizando la versi�n correcta de PPP para su n�cleo?
18.1.4 �Est� ejecutando pppd como root?
18.2 Mi m�dem se conecta pero ppp no se inicia.
18.3 El registro de sistema dice ``serial line is not 8 bit clean...''
18.3.1 No ha entrado en el servidor de manera adecuada
18.3.2 No est� ejecutando PPP en el servidor
18.3.3 El proceso PPP remoto es lento al arrancarse
18.4 Camino por defecto no establecido
18.5 Otros Problemas
19. Consiguiendo ayuda cuando est� totalmente atascado
20. Problemas comunes una vez que el enlace funciona
20.1 No puedo ver m�s all� del servidor PPP con el que me conecto
20.2 Puedo enviar mensajes, pero no recibirlos
20.3 �Por qu� la gente no puede hacer finger, WWW, gopher, talk... a mi m�quina?
21. Utilizando servicios Internet con direcciones IP din�micas
21.1 Configurar el correo electr�nico
21.2 Configurar un servidor de nombres local
22. Enlazando dos redes mediante PPP
22.1 Configurando las direcciones IP.
22.2 Configurando el encaminamiento
22.3 Seguridad de red
23. Tras hacer que la conexi�n funcione - el script /etc/ppp/ip-up
23.1 Encaminamiento especial
23.2 Manejando colas de correo electr�nico
23.3 Un script /etc/ppp/ip-up de ejemplo
23.4 Manejando correo
24. Utilizando /etc/ppp/ip-down
25. Encaminamiento en una red local
25.1 Nota acerca de la Seguridad
26. Configurando un servidor PPP
26.1 Compilaci�n del N�cleo
26.2 Visi�n general del sistema servidor
26.3 Conseguir el todo el software
26.4 Configurar el acceso a cuentas por v�a telef�nica
26.5 Configurando los ficheros de opciones PPP
26.6 Configurar pppd para permitir que los usuarios puedan ejecutarlo
26.7 Configurando el alias global para pppd
27. Utilizar PPP a trav�s de una conexi�n m�dem nulo (serie directa)
______________________________________________________________________
CCooppyyrriigghhtt
Este documento est� distribuido bajo los t�rminos de la licencia GPL
(Licencia p�blica GNU).
DDiissttrriibbuuccii��nn
La versi�n original de este documento se enviar� a
comp.os.linux.answers tan pronto como se produzcan nuevas versiones.
Adem�s est� disponible en formato HTML en:
� _I_n_d_i_c_e _d_e _d_o_c_u_m_e_n_t_o_s _C_o_m_o _d_e _L_i_n_u_x
http://sunsite.unc.edu/mdw/linux.html#howto
� _P_P_P_-_C_�_m_o
http://www.interweft.com.au/other/ppp-howto/ppp-howto.html
Otros formatos (SGML, ASCII, postscript, DVI) est�n disponibles en
_D_o_c_u_m_e_n_t_o_s _c_�_m_o _- _o_t_r_o_s _f_o_r_m_a_t_o_s
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats.
Ya que sunsite.unc.edu suele tener gran carga, utilice un lugar
r�plica apropiado cercano a usted.
La �ltima versi�n traducida al castellano podr� siempre ser encontrada
en _L_a _p_�_g_i_n_a _W_e_b _d_e _D_a_v_e_F_X
http://www.bigfoot.com/~davefx
AAggrraaddeecciimmiieennttooss
Mucha gente me ha proporcionado asistencia a la hora de preparar este
documento. He de agradecer especialmente a Al Longyear por su tutor�a
acerca de PPP (si hay errores en este tema, son culpa m�a y no suya),
Greg Hankins (coordinador del sistema Como de Linux) y Debi Tackett
(de MaximumAccess.com) por las sugerencias tan �tiles en estilo, orden
de contenidos, l�gica y claridad de explicaciones...
Finalmente, mis agradecimientos a toda la gente que ha contactado
conmigo por correo electr�nico ofreciendo comentarios. Tambi�n a todos
los autores de los COMO: la satisfacci�n por ayudar es la �nica
recompensa que recibimos, y es suficiente. Escribiendo este COMO estoy
devolviendo un poco la deuda que yo - como todos los dem�s usuarios de
Linux - tengo con la gente que escribe y mantiene nuestro querido
sistema operativo.
11.. IInnttrroodduuccccii��nn
PPP (el Protocolo Punto a Punto) es un mecanismo que sirve para crear
y ejecutar IP (el protocolo Internet) y otros protocolos de red a
trav�s de un enlace serie, que puede ser una conexi�n serie directa
(utilizando un cable m�dem-nulo), o a trav�s de un telnet o a trav�s
de una conexi�n que utiliza m�dems y l�neas telef�nicas (y por
supuesto l�neas digitales como RDSI).
Utilizando PPP, usted puede conectar su PC Linux a un servidor PPP y
acceder a los recursos de la red a la que el servidor est� conectado
(casi) como si estuviera directamente conectado a esa red.
Tambi�n puede configurar su PC Linux como un servidor PPP, por lo que
otros ordenadores podr�an entrar en el suyo y acceder a los recursos
de su PC local y su red.
Como PPP es un sistema entre iguales, puede usar PPP en dos PCs Linux
para conectar dos redes (o una red local a Internet), creando una red
de �rea extensa (WAN).
Una de las mayores diferencias entre PPP y una conexi�n Ethernet es,
por supuesto, la velocidad: una conexi�n Ethernet est�ndar funciona a
una velocidad m�xima te�rica de 10 Mbs (millones de bits por segundo),
mientras que un m�dem anal�gico funciona como mucho a 56 kbps (miles
de bits por segundo).
Tambi�n, dependiendo del tipo de conexi�n PPP, pueden haber otras
limitaciones en el uso de algunas aplicaciones y servicios.
11..11.. CClliieenntteess yy SSeerrvviiddoorreess
PPP es, estrictamente, un protocolo eennttrree iigguuaalleess; esto quiere decir
(t�cnicamente) que no hay diferencia entre la m�quina que accede y la
m�quina que es accedida. Sin embargo, para aclarar las cosas, es �til
pensar en t�rminos de sseerrvviiddoorreess y cclliieenntteess.
Un ordenador ser� cclliieennttee cuando acceda a una m�quina para establecer
una conexi�n PPP. La m�quina a la que se conecta es el sseerrvviiddoorr.
Cuando se configure una m�quina Linux para que reciba y controle
conexiones PPP entrantes, se estar� configurando un sseerrvviiddoorr PPP.
Cualquier PC Linux puede ser tanto un servidor PPP como un cliente -
incluso simult�neamente si se tiene m�s de un puerto serie (y m�dems
si son necesarios). Como se coment� antes, una vez realizada la
conexi�n, no hay diferencia real entre clientes y servidores en lo que
a PPP respecta.
Este documento se refiere a la m�quina que inicia la llamada (que
accede) como el CCLLIIEENNTTEE, mientras que la m�quina que contesta el
tel�fono, comprueba la autenticidad de la petici�n de entrada (usando
nombres de usuario, contrase�as y posiblemente otros mecanismos) es
denominada SSEERRVVIIDDOORR.
El uso de PPP como cliente para conectar una o m�s m�quinas de un
cierto lugar a Internet es, probablemente, el uso en el que la mayor
parte de la gente est� interesada - es decir: utilizar su PC Linux
como cliente.
El procedimiento descrito en este documento le permitir� establecer y
automatizar su conexi�n a Internet.
Este documento tambi�n le dar� consejos acerca de c�mo configurar su
PC Linux como sseerrvviiddoorr PPP y para interconectar dos redes locales (con
encaminamiento completo) utilizando PPP (esto es a lo que se denomina
frecuentemente ``establecer un enlace WAN'' - red de �rea extensa).
11..22.. DDiiffeerreenncciiaass eennttrree llaass ddiissttrriibbuucciioonneess LLiinnuuxx
Hay muchas distribuciones Linux distintas y todas ellas tienen su
propia idiosincrasia y distintas maneras de hacer las cosas.
En particular, hay dos maneras distintas de inicializar un ordenador
Linux (o Unix), configurando sus interfaces y realizando otras tareas.
Estas son la iinniicciiaalliizzaaccii��nn ddee ssiisstteemmaa BBSSDD y la iinniicciiaalliizzaaccii��nn ddee
ssiisstteemmaa SSyysstteemm VV. Si pasa por un foro de noticias sobre Unix, podr�a
encontrarse con guerras de religi�n entre los partidarios de estos
sistemas. Si ese tipo de cosas le divierten, �puede pasar un buen rato
si se apunta a la pelea!
Posiblemente, las distribuciones m�s ampliamente extendidas son:
� Slackware
que usa la inicializaci�n de sistema estilo BSD
� Red Hat (y su antiguo socio Caldera)
que usa la inicializaci�n de sistema SysV (aunque ligeramente
modificada)
� Debian
que usa la inicializaci�n de sistema SysV
El estilo BSD de inicializaci�n suele guardar los archivos de
inicializaci�n en /etc/... y esos archivos son:-
______________________________________________________________________
/etc/rc
/etc/rc.local
/etc/rc.serial
(y posiblemente otros m�s)
______________________________________________________________________
En los �ltimos tiempos, algunos esquemas de inicializaci�n de sistema
BSD usan el directorio /etc/rc.d... para guardar los ficheros de
inicializaci�n en lugar de ponerlo todo bajo /etc.
La inicializaci�n System V mantiene sus ficheros de inicializaci�n en
el directorio /etc/... o /etc/rc.d/... y en varios subdirectorios
situados en este mismo directorio:-
______________________________________________________________________
drwxr-xr-x 2 root root 1024 Jul 6 15:12 init.d
-rwxr-xr-x 1 root root 1776 Feb 9 05:01 rc
-rwxr-xr-x 1 root root 820 Jan 2 1996 rc.local
-rwxr-xr-x 1 root root 2567 Jul 5 20:30 rc.sysinit
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc0.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc1.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc2.d
drwxr-xr-x 2 root root 1024 Jul 18 18:07 rc3.d
drwxr-xr-x 2 root root 1024 May 27 1995 rc4.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc5.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc6.d
______________________________________________________________________
Si intenta averiguar d�nde se configuran la interfaz Ethernet y las
rutas de red asociadas, deber� explorar estos ficheros buscando las
�rdenes que lo hacen.
11..33.. HHeerrrraammiieennttaass ddee ccoonnffiigguurraaccii��nn PPPPPP eessppeecc��ffiiccaass ddee ccaaddaa ddiiss��
ttrriibbuuccii��nn
En algunas distribuciones (como Red Hat y Caldera), hay un sistema de
marcado PPP configurado bajo X-Window. Este COMO no cubre esas
herramientas espec�ficas de distribuci�n. Si tiene problemas con
ellas, contacte con los autores.
Para los usuarios de Red Hat, existe una _G_u_�_a _P_P_P _R_e_d _H_a_t
http://www.interweft.com.au en el �rea de recursos de Linux y tambi�n
en _R_e_d _H_a_t _S_o_f_t_w_a_r_e
http://www.redhat.com en el �rea de servicio
t�cnico.
22.. DDiirreecccciioonneess IIPP
Cualquier dispositivo que se conecta a Internet debe tener su propia y
�nica direcci�n IP. Estas son asignadas en cada pa�s por una autoridad
central.
Si est� conectando una red de �rea local (LAN) a Internet, DDEEBBEE usar
una direcci�n IP de alcance local para todos y cada uno de los
dispositivos que tenga en la red. NNOO DDEEBBEE inventarse direcciones IP y
usarlas al conectarse con otra RED (aunque no sea Internet). Lo peor
que puede pasar es que simplemente nada funcione y el sistema se caiga
al comenzar a interferir su n�mero IP 'robado' con las comunicaciones
de otra m�quina que ya se encontraba usando el n�mero IP que se acaba
de inventar.
Dese cuenta de que las direcciones IP utilizadas a lo largo de este
documento (con algunas excepciones) son direcciones de "red no
conectada" que est�n reservadas para su uso en redes que no est�n
(jam�s) conectadas a la red de redes.
Estas son las direcciones IP que est�n espec�ficamente reservadas para
redes locales no conectadas a Internet (tambi�n llamadas redes
privadas). Las direcciones IP son:-
� Direcci�n de red clase uno A
10.0.0.0 (m�scara de red 255.0.0.0)
� Direcciones de red clase 16 B
172.16.0.0 - 172.31.0.0 (m�scara de red 255.255.0.0)
� Direcciones de red clase 256 C
192.168.0.0 - 192.168.255.0 (m�scara de red 255.255.255.0)
Si tiene una red local ssiinn direcciones IP reservadas por la autoridad
responsable en su pa�s, deber�a utilizar para sus m�quinas uno de
estos tipos de direcciones.
Estos n�meros nnuunnccaa deben ser utilizados en Internet.
Sin embargo, pueden usarse para la Ethernet local en una m�quina que
est� conectada a Internet. Esto es porque las direcciones IP se
refieren a interfaces de red, no a ordenadores. Su interfaz Ethernet
puede usar 10.0.0.1 (por ejemplo), mas cuando se conecte a Internet
usando PPP, su interfaz PPP conseguir� del servidor otra direcci�n IP
(que s� ser� v�lida). Su PC tendr� conectividad Internet, pero los
otros ordenadores de su red no.
Sin embargo, usando Linux, gracias a su capacidad para enmascaramiento
de IP (tambi�n conocido como NAT - Traducci�n de direcciones de red) y
mediante el software ipfwadm, podr� conectar su red local a Internet
(con alguna restricci�n de servicios), incluso sin llegar a tener
direcciones IP v�lidas para las m�quinas de su Ethernet.
Para m�s informaci�n sobre c�mo hacer esto lea el mini-Como de
Enmascaramiento de IP en _L_i_n_u_x _I_P _M_a_s_q_u_e_r_a_d_e _m_i_n_i _H_O_W_T_O
http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Masquerade
Para la mayor�a de usuarios, que conectan una sola m�quina a un
proovedor de servicios Internet v�a PPP, no ser� necesario obtener una
direcci�n IP (o m�s exactamente, una direcci�n de red).
Si desea conectar una peque�a red local a Internet, muchos proovedores
de servicios de Internet (ISPs) pueden conseguirle una subred dedicada
(una secuencia espec�fica de n�meros IP) a partir de su espacio de
direcciones IP. En otro caso, siempre puede usar el enmascaramiento de
IPs.
La mayor parte de los proveedores usan asignaci�n de direcciones IP
ddiinn��mmiiccaass para los usuarios que conectan un solo PC a Internet. Es
decir: el servicio PPP con el que se contacta comunicar� a su sistema,
como parte del proceso de conexi�n, qu� direcci�n IP se utilizar�
durante esa sesi�n para su interfaz PPP. Esa direcci�n no ser� la
misma cada vez que usted se conecte a su proovedor.
Con las direcciones IP din�micas, usted nnoo tendr� la misma direcci�n
IP cada vez que se conecte. Esto tiene consecuencias para aplicaciones
de tipo servidor existentes en su m�quina Linux tales como sendmail,
ftpd, httpd y algunas por el estilo. Estos servicios se basan en la
premisa de que el ordenador que ofrece el servicio est� accesible
siempre con la misma direcci�n IP (o al menos con un nombre fijo cuya
direcci�n IP est� disponible v�a DNS).
Las limitaciones de servicio debidas a la asignaci�n de direcciones IP
din�micas (y maneras de solucionarlas, siempre y cuando sea posible)
ser�n comentadas m�s tarde en este documento.
33.. MMeettaass ddee eessttee ddooccuummeennttoo
33..11.. CCoonnffiigguurraarr uunn cclliieennttee PPPPPP
Este documento da informaci�n a toda aquella gente que desee utilizar
Linux y PPP para conectarse con un servidor PPP y establecer una
conexi�n IP mediante PPP. Se asumir� que PPP ha sido compilado e
instalado en su sistema Linux (la integraci�n de soporte PPP en el
n�cleo mediante reconfiguraci�n y recompilaci�n se trata brevemente).
Aunque puede utilizar DIP (el m�todo est�ndar para crear una conexi�n
SLIP) para establecer una conexi�n PPP, los scripts de DIP son,
generalmente, bastante complejos. Por ello, este documento NO tratar�
el uso de DIP para establecer una conexi�n PPP.
En su lugar, este documento describe el software PPP est�ndar para
Linux (chat/pppd).
33..22.. CCoonneeccttaarr ddooss rreeddeess llooccaalleess oo uunnaa rreedd llooccaall aa IInntteerrnneett uuttiilliizzaannddoo
PPPPPP
Este documento da informaci�n (b�sica) acerca de la interconexi�n de
dos redes locales entre s�, o de una red local con Internet utilizando
PPP.
33..33.. CCoonnffiigguurraarr uunn sseerrvviiddoorr PPPPPP
Este documento da consejos acerca de c�mo configurar su PC Linux como
servidor PPP (permitiendo a otra gente conectarse a su PC Linux y
establecer una conexi�n PPP).
Debe tener en cuenta de que hay miles de maneras de configurar Linux
como servidor PPP. Este documento describe un m�todo - el usado por el
autor para configurar peque�os servidores PPP (cada uno con 16
m�dems).
Se sabe que este m�todo funciona bien. Sin embargo, no tiene por qu�
ser el mejor.
33..44.. UUttiilliizzaarr PPPPPP eenn uunnaa ccoonneexxii��nn ccoonn ccaabbllee mm��ddeemm nnuulloo
Este documento explica brevemente la utilizaci�n de PPP para conectar
dos PCs Linux mediante un cable m�dem nulo. Tambi�n es posible
conectar de esta manera PCs ejecutando otros sistemas operativos con
un PC Linux. Para hacerlo, necesitar� consultar la documentaci�n de
los sistemas operativos en los que usted est� interesado.
33..55.. EEssttee ddooccuummeennttoo,, ppoorr aahhoorraa,, NNOO aabbaarrccaa tteemmaass ccoommoo......
� La compilaci�n del demonio PPP
Vea la documentaci�n que acompa�a a la versi�n de pppd que est�
utilizando.
� Conectar y configurar un m�dem bajo Linux (en profundidad)
Lea el Serial-COMO y visite _M_o_d_e_m _S_e_t_u_p _I_n_f_o_r_m_a_t_i_o_n
http://www.in.net/info/modems/index.html para conseguir informaci�n
que pueda ayudarle a configurar su m�dem.
� Utilizar DIP para realizar conexiones PPP
Use chat en su lugar...
� Utilizar socks o enmascaramiento de IPs
Hay dos documentos maravillosos que tratan esos dos temas.
� Utilizar diald para configurar una conexi�n automatizada
Vea la documentaci�n de diald para conseguir informaci�n acerca de
ello.
� Utilizar EQL para conectar dos m�dems en un enlace PPP �nico.
� M�todos espec�ficos de conexi�n PPP (como la herramienta de
configuraci�n de red de Red Hat 4.x)
Busque en la documentaci�n de la distribuci�n ayuda acerca de los
m�todos utilizados.
� El creciente n�mero de herramientas disponibles para automatizar la
configuraci�n de PPP
Vea la documentaci�n adecuada a cada caso.
44.. VVeerrssiioonneess ddee SSooffttwwaarree ttrraattaaddaass
Este documento COMO asume que se encuentra utilizando un n�cleo Linux
1.2.x con el software 2.1.2 o Linux 1.3.x/2.x.x y PPP 2.2 o superior.
En el momento de escribir estas l�neas, la �ltima versi�n oficial de
PPP disponible para Linux era ppp-2.2f. La nueva versi�n (ppp-2.3)
estaba todav�a en fase beta.
Es posible utilizar PPP 2.2.0 con el n�cleo 1.2.13. Ello requiere
parchear el n�cleo. Se recomienda que los usuarios de la versi�n
1.2.13 del n�cleo se actualicen a ppp-2.2 ya que incluye bastantes
correcciones de errores y mejoras.
TTaammbbii��nn,, ddeebbee ssaabbeerr qquuee NNOO PPUUEEDDEE uuttiilliizzaarr llaa vveerrssii��nn 22..11..22 ddee PPPPPP ccoonn
nniinngguunnaa vveerrssii��nn ddee LLiinnuuxx 22..xx..xx
D�se cuenta de que este documento NNOO trata los problemas que puedan
surgir a partir de la utilizaci�n de m�dulos cargables para el n�cleo
de Linux 2.x.x. Por favor, lea el mini-C�MO kerneld y la documentaci�n
de los m�dulos del n�cleo 2.x.x (situados en
/usr/src/linux/Documentation/...).
CCoommoo eessttee ddooccuummeennttoo eesstt�� ddiissee��aaddoo ppaarraa aayyuuddaarr aa llooss uussuuaarriiooss nnoovvaattooss,,
ssee rreeccoommiieennddaa llaa uuttiilliizzaaccii��nn ddee uunnaa vveerrssii��nn ddeell nn��cclleeoo ddee LLiinnuuxx yy uunnaa
vveerrssii��nn aapprrooppiiaaddaa ddee PPPPPP,, ccuuyyoo uussoo ccoonnjjuunnttoo sseeaa eessttaabbllee..
55.. OOttrrooss ddooccuummeennttooss ��ttiilleess//iimmppoorrttaanntteess
Se recomienda que los usuarios lean :-
� la documentaci�n incluida con el paquete PPP;
� las p�ginas de manual de pppd y chat;
(utilice man chat y man pppd para explorarlas)
� la Gu�a del Administrador de Redes con Linux (GARL);
ver _P_�_g_i_n_a _o_f_i_c_i_a_l _d_e_l _p_r_o_y_e_c_t_o _L_u_C_A_S _(_L_i_n_u_x _e_n _C_a_s_t_e_l_l_a_n_o_)
http://lucas.ctv.es
� los documentos Red2-COMO y Red3-COMO;
ver _L_i_n_u_x _N_E_T_-_2_/_3_-_H_O_W_T_O
http://sunsite.unc.edu/mdw/HOWTO/NET-2-HOWTO.html
� La documentaci�n del n�cleo situada en /usr/src/linux/Documentation
tras instalar el c�digo fuente de Linux;
� La p�gina de configuraci�n del m�dem - ver _M_o_d_e_m _S_e_t_u_p _I_n_f_o_r_m_a_t_i_o_n
http://www.in.net/info/modems/index.html
� Los excelentes libros de Unix/Linux publicados por O'Reilly and
Associates. Vea (_O_'_R_e_i_l_l_y _a_n_d _A_s_s_o_c_i_a_t_e_s _O_n_-_L_i_n_e _C_a_t_a_l_o_g_u_e
http://www.ora.com/). Si usted es novato, ccoorrrraa (no vaya) a su
librer�a inform�tica y compre uno de estos libros inmediatamente.
� El PUF-PPP mantenido por Al Longyear, disponible en _L_i_n_u_x _P_P_P_-_F_A_Q
ftp://sunsite.unc.edu/pub/Linux/docs/faqs.
Este documento contiene mucha informaci�n en formato
pregunta/respuesta que es muy �til a la hora de averiguar por qu�
PPP no funciona (adecuadamente).
� El creciente n�mero de libros sobre Linux de muchas editoriales y
autores;
Le sugiero que compruebe la vigencia de estos libros. El desarrollo
de Linux y de las distribuciones tienden a evolucionar muy r�pido,
mientras que la actualizaci�n de los libros suele desarrollarse
m�cho m�s despacio. Comprar un libro excelente (y hay muchos) que
est� anticuado puede causar a los nuevos usuarios bastante
confusi�n y mucha frustraci�n.
El mejor punto de partida a la hora de buscar documentaci�n para Linux
es _l_a _W_e_b _d_e_l _P_r_o_y_e_c_t_o _d_e _D_o_c_u_m_e_n_t_a_c_i_�_n _d_e _L_i_n_u_x _(_L_D_P_)
http://sunsite.unc.edu/mdw/, o de su equivalente hispano _l_a _W_e_b _d_e_l
_P_r_o_y_e_c_t_o _L_u_C_A_S _(_L_i_n_u_x _e_n _C_a_s_t_e_l_l_a_n_o_)
http://lucas.ctv.es. Los
documentos COMO tienden a ser revisados de manera peri�dica.
Usted puede utilizar este documento para crear su conexi�n PPP sin
leer ninguno de los otros documentos, pero si los lee podr� comprender
mejor lo que sucede en su ordenador. Tambi�n podr� solucionar los
problemas usted mismo (o al menos podr� hacer preguntas m�s
inteligentes en los foros de noticias comp.os.linux... o las listas de
correo sobre Linux).
Estos documentos (al igual que otros varios, incluyendo las
referencias relevantes) dan una explicaci�n adicional y m�s detallada
a lo que se expone en este documento HOWTO.
Si conecta una red local a Internet v�a PPP, necesitar� tener una
cantidad considerable de conocimientos de redes TCP/IP. Adem�s de los
documentos anteriormente mencionados, encontrar� de gran ayuda los
libros de O'Reilly "TCP/IP Network Administration" y "Building
Internet Firewalls".
55..11.. LLiissttaass ddee ccoorrrreeoo ��ttiilleess
Hay muchas listas de correo sobre Linux que funcionan como un medio de
comunicaci�n entre usuarios de niveles distintos. Suscr�base a una de
ellas. Le interesar� y contribuir� a su experiencia.
UUnn ccoonnsseejjoo: algunas listas de correo est�n especialmente dirigidas a
gente con alto nivel de conocimientos. Mientras que nadie se quejar�
si usted "esp�a" (se suscribe pero no env�a mensajes), es probable que
se gane comentarios despectivos (cuando no insultos) si usted env�a
preguntas de "novato" a listas inadecuadas.
Esto no es debido a que los usuarios de alto nivel odien a los nuevos
usuarios, sino a que esas listas est�n ah� para gestionar temas de un
determinado nivel de dificultad.
Desde aqu� se le anima a que se adhiera a las listas que permiten
suscripci�n p�blica, pero mantenga sus comentarios de acuerdo con el
tema de la lista.
Un buen punto de partida para buscar listas de correo Linux es _L_i_n_u_x
_M_a_i_l_i_n_g _L_i_s_t _D_i_r_e_c_t_o_r_y
http://summer.snu.ac.kr/~djshin/linux/mail-
list/index.shtml.
66.. RReessuummeenn ddee cc��mmoo hhaacceerr qquuee PPPPPP ffuunncciioonnee ccoommoo cclliieennttee
Este documento contiene una gran cantidad de informaci�n, y con cada
versi�n crece.
Como consecuencia, esta secci�n intenta dar un resumen conciso de las
acciones que deben llevarse a cabo para hacer que su sistema Linux se
conecte como cliente a un servidor PPP.
66..11.. OObbtteenneerr//IInnssttaallaarr eell ssooffttwwaarree
Si su distribuci�n Linux no incluye el software PPP, necesitar�
obtenerlo: _e_l _d_e_m_o_n_i_o _P_P_P _p_a_r_a _L_i_n_u_x
ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/ppp/ppp-2.2.0f.tar.gz.
A la hora de escribir estas l�neas, esta era la �ltima versi�n
oficial. Sin embargo, escoja la �ltima versi�n disponible (ppp-2.3
estaba en fase beta a la hora de escribir esto, y deber�a ser lanzado
en un breve plazo).
El paquete PPP contiene instrucciones acerca de c�mo compilar e
instalar el software ppoorr lloo qquuee eessttee CCOOMMOO nnoo llaass iinncclluuyyee.
66..22.. CCoommppiillaarr eell ssooppoorrttee PPPPPP eenn eell nn��cclleeoo
Las operaciones PPP en Linux se dividen en dos partes
� el demonio PPP mencionado anteriormente
� el soporte de PPP en el n�cleo
Muchas distribuciones dan soporte PPP en el n�cleo en sus n�cleos de
instalaci�n por defecto, pero otras no lo hacen.
Si en el momento de iniciar Linux, el n�cleo da mensajes como
______________________________________________________________________
PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
______________________________________________________________________
su n�cleo tiene integrado el soporte PPP.
Sin embargo, es probable que desee compilar su propio n�cleo sea cual
sea su distribuci�n, para poder as� darle a los recursos de su sistema
el uso m�s eficiente dada su configraci�n particular de hardware. Es
valioso recordar que el n�cleo no puede ser guardado en el swap, por
lo que mantener el n�cleo lo m�s peque�o que sea posible tiene sus
ventajas en m�quinas de memoria limitada.
Este documento da unas instrucciones m�nimas de recompilaci�n del
n�cleo en la secci�n ``Configurar el N�cleo Linux''.
Para m�s detalles, busque el Kernel-COMO en _l_a _p_�_g_i_n_a _o_f_i_c_i_a_l _d_e_l
_p_r_o_y_e_c_t_o _I_n_s_f_l_u_g _(_t_r_a_d_u_c_c_i_o_n_e_s _d_e _d_o_c_u_m_e_n_t_o_s _C_O_M_O_) www.insflug.org
66..33.. OObbtteenneerr iinnffoorrmmaaccii��nn ddee ssuu pprroovveeeeddoorr ddee sseerrvviicciiooss ddee IInntteerrnneett
((IISSPP))
Hay casi un n�mero infinito de maneras en las que se puede configurar
un servidor PPP. Para conectarse a su ISP (o servidor PPP corporativo
para acceder a su intranet), deber� obtener informaci�n acerca de c�mo
funciona su servidor.
Debido a que usted est� utilizando Linux, puede tener algunos
problemas con los servicios de ayuda de algunos ISP (y servidores PPP
de intranet) que saben s�lo acerca de los clientes de MS Windows.
Sin embargo, un n�mero creciente de ISPs utilizan Linux para dar su
servicio - y Linux tambi�n est� penetrando en el entorno empresarial,
por lo que podr�a ser ayudado si tiene problemas.
En la secci�n ``Conseguir la informaci�n necesaria de su servidor
PPP'' se informa de lo que necesitar� saber acerca del servidor PPP al
que se va a conectar - y c�mo averiguar la informaci�n que necesita
saber.
66..44.. CCoonnffiigguurraarr ssuu mm��ddeemm yy ppuueerrttoo sseerriiee
Para conectar a un servidor PPP y obtener la mejor tasa de
transferencia posible, su m�dem necesita ser configurado
correctamente.
De manera similar, los puertos series de su m�dem y de su ordenador
necesitan estar configurados correctamente.
La secci�n ``Configurar el m�dem y el puerto serie'' da informaci�n
acerca de esto.
66..55.. CCoonnffiigguurraarr llaa rreessoolluuccii��nn ddee nnoommbbrreess ((DDNNSS))
Adem�s de los ficheros que ejecutan PPP y de realizar la conexi�n
automatizada al servidor PPP, hay un n�mero de ficheros de
configuraci�n que deben ser modificados para que el ordenador pueda
traducir nombres como www.interweft.com.au a la direcci�n IP realmente
utilizada para contactar con ese ordenador. Este proceso se denomina
resoluci�n de nombres. Los ficheros son:-
� /etc/resolv.conf
� /etc/host.conf
La secci�n ``Configurar la resoluci�n de nombres'' da m�s detalles
acerca de esto.
En particular, NNOO necesita ejecutar un servidor de nombres en su PC
Linux para conectarse a Internet (aunque pueda desearlo). Todo lo que
tiene que saber es conocer, al menos, la direcci�n IP de un servidor
de nombres que pueda utilizar (preferiblemente el de su ISP).
66..66.. PPPPPP yy llooss pprriivviilleeggiiooss ddee rroooott
Debido a que establecer un enlace PPP entre su ordenador Linux y otro
servidor PPP requiere la manipulaci�n de dispositivos de red (la
interfaz PPP es una interfaz de red) y de la tabla de encaminamiento
del n�cleo, pppd requiere privilegios de root.
Para m�s detalles acerca de esto, lea la secci�n ``Usar PPP y
privilegios de root''.
66..77.. CCoommpprroobbaarr llooss ffiicchheerrooss PPPPPP ddee ssuu ddiissttrriibbuuccii��nn yy ccoonnffiigguurraarr llaass
ooppcciioonneess ddee PPPPPP
Hay un n�mero de ficheros de configuraci�n que necesitan ser
configurados para hacer que PPP funcione. Hay ejemplos en la
distribuci�n PPP y esta secci�n muestra qu� ficheros deber�a tener:-
______________________________________________________________________
/etc/ppp/options
/etc/ppp/scripts/ppp-on
/etc/ppp/scripts/ppp-on-dialer
/etc/ppp/options.tpl
______________________________________________________________________
Puede que necesite crear algunos ficheros adicionales dependiendo de
ex�ctamente qu� desea alcanzar con PPP:-
______________________________________________________________________
/etc/ppp/options.ttyXX
/etc/ppp/ip-up
/etc/ppp/pap-secrets
/etc/ppp/chap-secrets
______________________________________________________________________
En suma, el demonio PPP puede utilizar un gran n�mero de opciones de
l�nea de �rdens y es importante utilizar las correctas; esta secci�n
le lleva a trav�s de las opciones est�ndar de PPP y le ayuda a escoger
las opciones que deber�a usar.
Para m�s detalles acerca de esto, lea ``Configurando los ficheros de
conexi�n PPP''.
66..88.. SSii ssuu sseerrvviiddoorr PPPPPP uuttiilliizzaa PPAAPP ((PPrroottooccoolloo ddee AAuutteennttiiffiiccaaccii��nn ddee
CCoonnttrraassee��aass))
Muchos ISPs y servidores PPP corporativos usan PAP. Si su servidor nnoo
requiere el uso de PAP (si puede conectarse manualmente y recibir las
preguntas est�ndar de nombre de usuario/contrase�a en modo texto
entonces no usa PAP), puede ignorar esta secci�n.
En lugar de conectarse a un servidor utilizando el nombre de usuario y
contrase�a cuando el servidor se lo pida, un servidor PPP que utilice
PAP no requiere un acceso basado en texto.
La informaci�n de autentificaci�n de usuario es intercambiada como
parte del protocolo de control de conexi�n (LCP) que es lo primero que
se realiza al establecer un enlace PPP.
La secci�n ``Si su servidor PPP utiliza PAP'' da informaci�n acerca de
los ficheros que necesita configurar para establecer un enlace PPP
utilizando PAP.
66..99.. CCoonneeccttaarr ccoonn eell sseerrvviiddoorr PPPPPP mmaannuuaallmmeennttee
Una vez configurados los ficheros b�sicos, es una buena idea probarlos
conectando (utilizando minicom o seyon) y arrancando pppd en su PC
Linux manualmente.
Vea la secci�n ``Establecer la conexi�n PPP manualmente'' para
conseguir los detalles completos acerca de esto.
66..1100.. AAuuttoommaattiizzaarr ssuu ccoonneexxii��nn PPPPPP
Una vez que puede conectarse manualmente, puede pasar a configurar una
serie de scripts que automatizaran el establecimiento de la conexi�n.
La secci�n ``Automatizar las conexiones - Crear los scripts de
conexi�n'' trata la creaci�n de los scripts necesarios, centr�ndose en
chat y realizando scripts para el proceso de entrada en el servidor
PPP.
Esta secci�n tambi�n trata los scripts para la autentificaci�n
nombre/contrase�a as� como los scripts para servidores con
autentificaci�n PAP/CHAP.
66..1111.. DDeessccoonneeccttaarr eell eennllaaccee
Una vez que el enlace est� establecido y funcionando, necesita poder
desactivar el enlace.
Esto es comentado en la secci�n ``Desactivar el enlace PPP''.
66..1122.. SSii ttiieennee pprroobblleemmaass
Mucha gente tiene problemas para conseguir que PPP funcione bien. La
variedad de servidores PPP y de c�mo requieren que se establezca la
conexi�n es enorme. De manera similar, hay muchas opciones de PPP - y
alguna combinaci�n de las mismas es posible que no funcione.
Adem�s de los problemas de conexi�n e inicio del servicio PPP, puede
haber problemas con los m�dems y con la propia l�nea telef�nica.
La secci�n ``Soluci�n de problemas'' da informaci�n b�sica acerca de
los errores m�s frecuentes, de c�mo aislarlos y de c�mo solucionarlos.
Esta secci�n NNOO est� orientada para tratar m�s que lo b�sico. Al
Longyear mantiene el PUF-PPP que contiene mucha m�s informaci�n acerca
de este tema.
66..1133.. TTrraass rreeaalliizzaarr llaa ccoonneexxii��nn
Una vez que el enlace PPP est� operativo (m�s concretamente, una vez
que la capa IP est� operativa), Linux PPP puede ejecutar
autom�ticamente (como usuario root), un script para realizar ccuuaallqquuiieerr
funci�n que pueda ser ejecutada mediante un script.
La secci�n ``Tras realizar la conexi�n'' da informaci�n acerca del
script /etc/ppp/ip-up, de los par�metros que recibe de PPP y de c�mo
utilizarlo para realizar cosas como recoger su correo de su cuenta en
el ISP, enviar cualquier correo que tenga una transmisi�n pendiente y
similares.
66..1144.. PPrroobblleemmaass ddee sseerrvviicciiooss ddee IIPP eesstt��nnddaarr ccoonn uunnaa ccoonneexxii��nn PPPPPP ddee
IIPP ddiinn��mmiiccaa
Tal y como se dijo en la introducci�n, las direcci�nes IP din�micas
afectan a la posibilidades de su PC Linux como servidor en Internet.
La secci�n ``Problemas de servicios IP est�ndar con una conex�on PPP
de IP din�mica'' da informaci�n acerca de los (principales) servicios
afectados y de lo que puede hacer (si es posible) para solucionarlo.
77.. CCoonnffiigguurraarr ssuu NN��cclleeoo LLiinnuuxx
Para usar PPP, su n�cleo Linux debe ser compilado para incluir soporte
PPP. Obtenga el c�digo fuente Linux para su n�cleo si no lo tiene ya
- se encuentra en /usr/src/linux en un sistema de ficheros est�ndar
Linux.
Compruebe este directorio - muchas distribuciones Linux instalan el
arbol fuente (ficheros y subdirectorios) como parte de su proceso de
instalaci�n.
Durante el arranque, su n�cleo Linux imprime una gran cantidad de
informaci�n. Entre ella est� la informaci�n acerca del soporte PPP que
incluya. Para visualizar esta informaci�n, lea su fichero syslog o
utilice dmesg | less para mostrar la informaci�n en la pantalla. Si su
n�cleo incluye soporte PPP, podr� ver l�neas como
______________________________________________________________________
PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
______________________________________________________________________
(esta es para las series de n�cleos Linux 2.0.x).
Los c�digos fuente de Linux pueden obtenerse por ftp de ftp.kernel.org
o de sus servidores r�plica.
77..11.. IInnssttaallaannddoo eell cc��ddiiggoo ffuueennttee ddeell nn��cclleeoo LLiinnuuxx
Estas son breves instrucciones para obtener e instalar los fuentes del
n�cleo Linux. Puede conseguir informaci�n completa acerca de esto de
_T_h_e _L_i_n_u_x _K_e_r_n_e_l _H_O_W_T_O
http://sunsite.unc.edu/mdw/HOWTO/Kernel-
HOWTO.html.
Para instalar y compilar el n�cleo Linux, necesita tener abierta una
cuenta como root.
1. Cambie al directorio /usr/src
cd /usr/src
2. Compruebe /usr/src/linux para ver si ya posee los fuentes
instalados.
3. Si no tiene los fuentes, cons�galos del _d_i_r_e_c_t_o_r_i_o _d_e _f_u_e_n_t_e_s _d_e
_n_�_c_l_e_o _L_i_n_u_x
ftp://ftp.kernel.org/pub/Linux/kernel/v2.2 o de su
lugar r�plica m�s cercano.
Si est� buscando versiones anteriores del n�cleo (como la 1.2.X),
�stas se guardan en _e_l _d_i_r_e_c_t_o_r_i_o _d_e _f_u_e_n_t_e_s _d_e _a_n_t_i_g_u_o_s _n_�_c_l_e_o_s
_L_i_n_u_x
ftp://sunsite.unc.edu/pub/Linux/kernel/old.
4. Escoja el n�cleo adecuado - normalmente el m�s reciente es el que
debe buscar. Cons�galo y ponga el fichero tar con los fuentes en
/usr/src.
NNoottaa: un fichero 'tar' es un archivo - posiblemente comprimido
(como los ficheros tar del n�cleo de Linux) que contiene muchos
ficheros en varios directorios. Es el equivalente Linux a un
fichero zip con varios directorios.
5. Si ya tiene el c�digo fuente instalado pero desea actualizar a un
nuevo n�cleo, debe eliminar los fuentes antiguos. Utilice la orden
rm -rf /usr/src/linux
6. Ahora descomprima y extraiga los fuentes utilizando la orden
tar xzf linux-2.2.XX.tar.gz
7. Ahora, cd /usr/src/linux y lea el fichero README. Contiene una
excelente informaci�n acerca de c�mo configurar y compilar un nuevo
n�cleo. Lea este fichero (es una buena idea imprimirlo y tener una
copia a mano mientras se compila hasta que esto se ha realizado un
n�mero suficiente de veces para saber c�mo funciona todo).
77..22.. CCoonnoocceerr ssuu hhaarrddwwaarree
Usted DDEEBBEE saber qu� tarjetas/dispositivos tiene en su PC si desea
recompilar el n�cleo. Para algunos dispositivos (como tarjetas de
sonido) tambi�n necesitar� saber otros ajustes (como IRQ's,
direcciones E/S y cosas por el estilo).
77..33.. CCoommppiillaaccii��nn ddeell NN��cclleeoo -- LLooss nn��cclleeooss 11..33..xx yy 22..xx..xx
Para comenzar el proceso de configuraci�n del n�cleo utilice
make menuconfig
Esto ejecutar� un sistema de configuraci�n basado en men�s con ayuda
en l�nea que le permite adelantarse o atrasarse en el proceso de
configuraci�n.
Hay tambi�n una interfaz basada en X Window muy recomendable:
make xconfig
Puede compilar el soporte PPP directamente dentro de su n�cleo o como
un m�dulo cargable.
Si usted s�lo utiliza PPP la m�nima parte del tiempo en el que su
m�quina Linux est� funcionando, se recomienda compilar el soporte PPP
como un m�dulo cargable. Utilizando 'kerneld', su n�cleo cargar�
autom�ticamente el/los m�dulo(s) requeridos para proveer soporte PPP
cuando arranque su proceso de conexi�n PPP. Esto ahorra un valioso
espacio en memoria: ninguna parte del n�cleo puede sacarse de la
memoria, pero los m�dulos cargables se eliminan autom�ticamente si no
se utilizan.
Para hacer esto, debe habilitar el soporte de m�dulos cargables:-
______________________________________________________________________
Enable loadable module support (CONFIG_MODULES) [Y/n/?] y
______________________________________________________________________
Para a�adir soporte PPP en el n�cleo, responda a la siguiente
pregunta:-
______________________________________________________________________
PPP (point-to-point) support (CONFIG_PPP) [M/n/y/?]
______________________________________________________________________
Para utilizar un m�dulo PPP cargable, responda MM. Para compilar el
soporte PPP de modo interno al n�cleo, responda YY.
77..44.. CCoonnssiiddeerraacciioonneess ggeenneerraalleess ddee ccoonnffiigguurraaccii��nn ddeell nn��cclleeoo ppaarraa PPPPPP
Si desea configurar su PC Linux como servidor PPP, debe compilar el
soporte de IP forwarding. Esto tambi�n es necesario si desea utilizar
Linux para enlazar dos redes locales o su red local a Internet.
Si est� enlazando una red local a Internet (o entrelazando dos redes
locales), deber�a preocuparse acerca de la seguridad. A�adir el
soporte para cortafuegos IP en el n�cleo es, probablemente, una
OBLIGACI�N.
Tambi�n necesitar� esto si desea utilizar enmascaramiento IP para
conectar una red local que utilice cualquiera de las direcciones IP
reservadas para redes locales desconectadas".
Una vez instalado y reiniciado el nuevo n�cleo, puede comenzar a
configurar y a probar su(s) enlace(s) PPP.
88.. CCoonnsseegguuiirr llaa iinnffoorrmmaaccii��nn rreeqquueerriiddaa ddeell sseerrvviiddoorr PPPPPP
Antes de que pueda establecer una conexi�n PPP con un servidor,
necesita obtener la siguiente informaci�n (del administrador de
sistema o de la gente de servicio t�cnico al usuario del servidor
PPP):-
� El n�mero de telefono a marcar para ese servicio
Si se encuentra detr�s de una centralita, deber� marcar el n�mero
de la centralita que le permite tener acceso exterior. Este suele
ser el cero (0) o el nueve (9).
� �Usa el servidor direcciones IP DIN�MICAS O EST�TICAS?
Si el servidor utiliza direcciones IP EST�TICAS, entonces pude que
necesite saber qu� direcci�n IP utilizar para su parte de la
conexi�n PPP. Si su ISP le proporciona un conjunto de direcciones
IP v�lidas, necesitar� saber qu� direcciones IP puede utilizar y
tambi�n necesitar� saber cu�l es la m�scara de red (netmask)
La mayor�a de los Proovedores de Servicio de Internet usan
direcciones IP DIN�MICAS. Tal y como se mencion� antes, esto
provoca que algunos servicios no puedan utilizarse en su plena
potencia.
Sin embargo, incluso si usted utiliza direcciones IP EST�TICAS, la
mayor�a de los servidores PPP nunca permitir�n al cliente
especificar una direcci�n IP, ya que esto es un agujero de
seguridad. Por ello, usted ddeebbee saber qu� direcci�n le ser�
asignada.
� �Qu� son las direcciones IP de los servidores de nombres de dominio
de los ISPs?
Deber�a haber al menos dos, aunque s�lo se necesita una.
Aqu� podr�a haber un problema. La configuraci�n PPP de MS Windows
95 permite que la direcci�n del servidor de nombres se transmita al
cliente como parte del proceso de conexi�n. Por lo que su ISP (o la
mesa de informaci�n de su empresa) puede decirle que usted no
necesita saber la direcci�n IP del servidor de nombres.
En Linux, usted NNEECCEESSIITTAA conocer la direcci�n de al menos un
servidor de nombres. La implementaci�n de PPP para Linux no permite
la configuraci�n durante la conexi�n de la direcci�n del servidor
de nombres - y es bastante posible que nunca lo haga.
NNoottaa: aunque Linux (como cliente PPP) no puede aceptar la direcci�n
del servidor de nombres transmitida desde un servidor, sin embargo,
cuando act�a como servidor, puede pasar esta informaci�n a clientes
utilizando la opci�n de pppd dns-addr.
� �Requiere el servidor el uso de PAP/CHAP?
Este es el caso en que se necesita saber las "id" y "secret" a usar
durante la conexi�n. (Estas son, probablemente, su nombre de
usuario y clave en el ISP).
� �El servidor inicia PPP autom�ticamente o debe enviarle �rdenes
para que inicie PPP una vez que se ha conectado?
Si debe utilizar una orden para iniciar PPP, �cu�l es?
� �Es el servidor un sistema MS Windows NT? Si lo es, �utiliza el
sistema MS PAP/CHAP?
Muchas redes corporativas utilizan MS Windows NT de esta manera
para, parece, incrementar la seguridad.
Apunte cuidadosamente esta informaci�n - �va a necesitarla!
99.. CCoonnffiigguurraarr ssuu mm��ddeemm yy ppuueerrttoo sseerriiee
Deber�a asegurarse de que su m�dem est� correctamente instalado y de
que sabe a qu� puerto serie est� conectado.
RReeccuueerrddee:-
� DOS com1: = Linux /dev/ttyS0
� DOS com2: = Linux /dev/ttyS1
etc�tera.
Es tambi�n importante recordar que is usted tiene 4 puertos serie, la
configuraci�n est�ndar de un PC es que com1 y com3 compartan la IRQ4 y
que com2 y com4 compartan la IRQ3.
Si tiene dispositivos en los puertos serie est�ndar que comparten IRQ
con su m�dem va a tener problemas. Necesita asegurarse de que su m�dem
de puerto serie tiene su propia y �nica IRQ. Muchas tarjetas modernas
de puerto serie (y controladoras de puertos integradas en placas base
de calidad) permiten mover las IRQs de los puertos.
Si est� ejecutando el un n�cleo Linux versi�n 2, puede comprobar el
uso de IRQs utilizando cat /proc/interrupts, lo que producir� una
salida como
______________________________________________________________________
0: 6766283 timer
1: 91545 keyboard
2: 0 cascade
4: 156944 + serial
7: 101764 WD8013
10: 134365 + BusLogic BT-958
13: 1 math error
15: 3671702 + serial
______________________________________________________________________
Esto muestra un puerto serie en IRQ4 (un rat�n) y un puerto serie en
IRQ15 (el m�dem permanente en el cual se basa la conexi�n PPP a
Internet. (Hay tambi�n un puerto serie en com2, IRQ3 y com4 est�n en
IRQ14, pero como no est�n en uso, no se muestran).
Atenci�n - usted necesita saber qu� es lo que est� haciendo si va a
jugar con sus IRQs. No solo tendr� que abrir su ordenador, sacar las
tarjetas y cambiar los puentes, pero sigue necesitando saber qu� hay
en cada IRQ. En mi caso, mi PC est� completamente basado en SCSI, por
lo que puedo desactivar las interfaces IDE de la placa base que
normalmente utilizan IRQ14 y 15.
Debe tambi�n recordar que si su PC arranca otro sistema operativo,
mover la IRQs puede provocar que otro sistema operativo no arranque
bien - �o no arranque en absoluto!
Si mueve sus puertos serie a IRQs no est�ndar, necesitar� decirle a
Linux qu� IRQ utiliza cada puerto. Esto se hace utilizando setserial y
es mejor hacerlo como parte del proceso de arranque en rc.local o
rc.serial que es llamado por rc.local como parte de la inicializaci�n
de SysV. Para el ejemplo ilustrado anteriormente, las �rdenes a
utilizar ser�an
______________________________________________________________________
/bin/setserial -b /dev/ttyS2 IRQ 11
/bin/setserial -b /dev/ttyS3 IRQ 15
______________________________________________________________________
Sin embargo, si utiliza m�dulos serie din�micament cargados cada vez
que se necesiten cada vez que hagan falta por el proceso kerneld, no
puede establecer y olvidar el IRQ etc establecido una vez durante el
arranque. Esto es porque si se descarga el m�dulo de serie, Linux
olvida los ajustes especiales.
Por lo que, si carga un m�dulo serial bajo petici�n, necesitar�
reconfigurar las iRQs cada vez que el m�dulo se cargue.
99..11.. AA nnoottee aabboouutt sseerriiaall ppoorrttss aanndd ssppeeeedd ccaappaabbiilliittiieess
Si utiliza un m�dem externo de alta velocidad (14.400 baudios o
superior), su puerto serie necesita ser capaz de manejar la salida que
dicho m�dem es capaz de producir, particularmente cuando los m�dems
comprimen datos.
Esto requiere que su puerto serie use un chip UART moderno, como el
16550(A). Si est� utilizando una m�quina algo antigua, es posible que
su puerto serie tenga s�lo un UART 8250, lo que causar� considerables
problemas a la hora de usarlo con un m�dem de alta velocidad.
Use la orden
setserial -a /dev/ttySx
para que Linux le informe del tipo de UART que posee. Si no tiene un
UART de tipo 16550A, adquiera una nueva tarjeta controladora de
puertos serie (disponible por menos de 50 euros). Cuando adquiera su
nueva tarjeta, aseg�rese de que puede cambiar las IRQ que vengan por
defecto.
Nota: las primeras versiones del chip UART 16550 ten�an un error. Esto
fue descubierto r�pidamente y se lanz� una revisi�n del chip: el UART
16550A. Sin embargo, un n�mero relativamente peque�o de chips
defectuosos salieron a la circulaci�n. No es probable que usted se
encuentre uno de ellos, pero siempre debe buscar una respuesta que
diga 16550A, particularmente en tarjetas series de prestigio
reconocido.
99..22.. NNoommbbrreess ddee ppuueerrttooss sseerriiee
Como tradici�n, Linux utilizaba los dispositivos cuaX para salida de
datos y ttySx para entrada.
El c�digo del n�cleo que requer�a esto fue eliminado en las versiones
2.x.x del n�cleo. Ahora se deber�an utilizar ttySx tanto para salida
como para entradas. Supongo que los dispositivos cuaX desaparecer�n en
versiones futuras del n�cleo.
99..33.. CCoonnffiigguurraarr ssuu mm��ddeemm
Es necesario que configure su m�dem correctamente para PPP - para
hacer esto, LEA EL MANUAL QUE ACOMPA�A A SU MODEM. La mayor parte de
los m�dems vienen de f�brica con una ccoonnffiigguurraaccii��nn ppoorr ddeeffeeccttoo que
selecciona las opciones requeridas para PPP. La configuraci�n m�nima
especifica:-
� Control de flujo hardware (RTS/CTS) (&K3 en muchos m�dems tipo
Hayes)
Otras configuraciones (entre los comandos est�ndar Hayes) que deber�a
investigar son:-
� E1 Command/usr/src/linux-2.0.27/include/linux/serial.h Echo ON
(necesario para que chat funcione)
� Q0 Informe de los c�digos de resultado (necesario para que chat
funcione)
� S0=0 Auto respuesta APAGADA (a menos que quiera que su m�dem
descuelgue y responda al tel�fono)
� &C1 Detecci�n de l�nea CONECTADA s�lo tras conectar
� &S0 Data Set Ready (DSR) siempre CONECTADA
� (seg�n) Terminal de datos lista
Hay una Web que ofrece configuraciones de m�dem para una enorme
variedad de marcas y modelos: _M_o_d_e_m _s_e_t_u_p _i_n_f_o_r_m_a_t_i_o_n
http://www.in.net/info/modems/index.html. Puede ayudarle en esto.
Tambi�n es valioso investigar c�mo funciona la conexi�n serie entre el
ordenador y el m�dem. La mayor parte de los m�dems modernos funcionan
con el puerto serie a una velocidad FIJA, y sin embargo permiten que
la conexi�n telef�nica cambie su velocidad a la m�s alta que puedan
manejar tanto �l como el m�dem remoto.
Esto es conocido como funcionamiento a velocidad partida. Si su m�dem
da soporte para ello, bloquee la conexi�n del puerto serie del m�dem a
la velocidad m�s alta que est� disponible (normalmente 115.200
baudios, pero 38.400 baudios pueden funcionar para m�dems de 14.400
baudios).
Utilice su software de comunicaciones (como minicom o seyon) para
averiguar la configuraci�n de su m�dem y ajustarla a los valores
requeridos por PPP. Muchos m�dems muestran su configuraci�n actual
tras el comando AT&V, pero deber�a consultar el manual de su m�dem.
Si se hace un l�o con los ajustes, puede volver a la tranquilidad
(normalmente) tecleando AT&F para poner la configuraci�n de f�brica.
(Para la mayor parte de los m�dems que he encontrado, la configuraci�n
de f�brica incluye todo lo que necesita para PPP, pero debe asegurarse
de ello).
Una vez que ha conseguido la cadena adecuada de configuraci�n del
m�dem, an�tela. Debe tomar una decisi�n: guardar esa configuraci�n en
la memoria no vol�til del m�dem para que pueda ser recuperada enviando
un comando AT adecuado a su m�dem, o pasar la configuraci�n correcta a
su m�dem como parte del proceso de marcado PPP.
Si s�lo utiliza su m�dem desde Linux para conectarse con su ISP o
servidor corporativo, lo m�s simple ser� guardar la configuraci�n de
su m�dem en la memoria RAM no vol�til.
Pero si utiliza su m�dem para otras aplicaciones y sistemas
operativos, es m�s seguro pasar la informaci�n al m�dem siempre que se
realice una llamada para que se garantice que el m�dem est� en el
estado correcto para la llamada. (Esto es siempre mejor que guardar la
cadena de configuraci�n en un m�dem que pierde los contenidos de la
RAM no vol�til).
99..44.. NNoottaa aacceerrccaa ddeell CCoonnttrrooll ddee FFlluujjoo SSeerriiee
Cuando los datos viajan por las l�neas de comunicaci�n, puede suceder
que los datos lleguen m�s r�pido que lo que el ordenador pueda manejar
(el ordenador puede estar ocupado haciendo alguna otra cosa -
recuerde: Linux es un sistema operativo multiusuario y multitarea).
Para asegurarse de que los datos no se pierdan (los datos no
sobrepasen el buffer de entrada y se pierdan), es necesario establecer
alg�n m�todo de control del flujo de datos.
Hay dos maneras de hacer esto en puertos serie:-
� Utilizar se�ales hardware (Clear To Send/Request to Send - CTS/RTS)
� Using se�ales software (control S y control Q, tambi�n conocidas
como XON/XOFF).
Mientras que las �ltimas pueden ir bien en una conexi�n de terminal de
texto, los datos en un enlace PPP utilizan los 8 bits - y es bastante
probable que en alg�n lugar de los datos habr� un byte que se traduzca
como control S y control Q. Entonces, si un m�dem est� configurado
para utilizar el control de flujo por software, �todo puede irse
r�pidamente al garete!
Para enlaces de alta velocidad que utilicen PPP (que usa los 8 bits de
datos) el control de flujo por hardware es vital y es por esta raz�n
por la que usted debe utilizar el control de flujo por hardware.
99..55.. PPrroobbaarr qquuee ssuu mm��ddeemm ppuueeddee mmaarrccaarr
Ahora que se ha conseguido una configuraci�n correcta para el puerto
serie y el m�dem, es una buena idea asegurarse de que esa
configuraci�n funciona para marcar el n�mero de su ISP y ver si puede
conectarse.
Utilice el paquete de comunicaciones por terminal (como minicom),
configure la inicializaci�n que su m�dem requiera para PPP y marque el
n�mero del servidor PPP con el que desee conectar en una sesi�n PPP.
(Nota: en esta fase NNOO estamos intentando hacer una conexi�n PPP, sino
simplemente establecer que tenemos el n�mero de tel�fono correcto y
tambi�n averiguar qu� es eexxaaccttaammeennttee lo que el servidor nos env�a para
conseguir conectarnos y arrancar PPP).
Durante este proceso, capture (guarde en un fichero) el proceso
completo o anote cuidadosamente (_m_u_y _c_u_i_d_a_d_o_s_a_m_e_n_t_e) y eexxaaccttaammeennttee en
texto con el que el servidor le da a entender que es el momento de
introducir su nombre de usuario y contrase�a (y cualquier otra orden
necesaria para establecer la conexi�n PPP).
Si su servidor utiliza PAP, no deber�a ver una pregunta de conexi�n,
pero deber�a ver, en su lugar, y esparcida por la pantalla, la
representaci�n en modo texto del protocolo de control de conexi�n (que
son caracteres extra�os sin sentido aparente).
Unas pocas advertencias:-
� algunos servidores son bastante inteligentes: puede conectarse
utilizando la secuencia nombre/contrase�a en modo texto O
utilizando PAP. Por lo que si su ISP o m�quina corporativa utiliza
PAP pero no ve aparecer inmediatamente en la pantalla los
caracteres sin sentido, usted no tiene por qu� haber hecho nada
mal.
� algunos servidores necesitan que usted introduzca inicialmente
texto y _d_e_s_p_u_�_s comienzan a enviar la secuencia PAP est�ndar.
� algunos servidores PPP son pasivos - esto es: simplemente se
sientan sin enviar nada hasta que el cliente que se est� conectando
les env�a un paquete v�lido de lcp. Si el servidor ppp con el que
est� conectando funciona en modo pasivo, �usted nunca podr� ver los
caracteres sin sentido!
� Algunos servidores no arrancar�n PPP hasta que pulse ENTER - por lo
que es valioso intentar esto si usted se conecta correctamente y no
ve los caracteres sin sentido.
Es valioso conectarse al menos dos veces: algunos servidores cambian
sus preguntas (por ejemplo, con la hora) cada vez que usted se
conecta. Las dos preguntas cr�ticas que su m�quina Linux necesita
identificar cada vez que se conecta son:- in are:-
� la pregunta que le pide que introduzca su nombre de usuario;
� la pregunta que le pide que introduzca su contrase�a;
Si tiene que ejecutar una orden para arrancar PPP en el servidor,
tambi�n deber� averiguar la l�nea de �rdenes que el servidor le da una
vez se ha conectado para comunicar a Linux que en ese momento puede
introducir la orden para arrancar ppp.
Si su servidor arranca PPP autom�gicamente, una vez que se ha
conectado, empezar� a ver basura en su pantalla - �sta es el servidor
PPP que env�a la informaci�n de su m�quina para comenzar y configurar
la conexi�n PPP.
Eso deber�a ser algo como esto :-
______________________________________________________________________
~y}#.!}!}!} }8}!}$}%U}"}&} } } } }%}& ...}'}"}(}"} .~~y}
______________________________________________________________________
(�y no dejar� de salir por pantalla!)
En algunos sistemas PPP debe ser expl�citamente arrancado en el
servidor. Esto ocurre normalmente porque el servidor ha sido
configurado para permitir accesos PPP y accesos de l�nea de �rdenes
utilizando el mismo par nombre/contrase�a. Si este es el caso, ejecute
esta orden una vez se ha conectado. De nuevo, ver� la basura en
pantalla cuando la parte PPP del servidor comience a funcionar.
Si usted no ve esto inmediatamente despu�s de conectarse (y, si es
necesario, haber introducido nombre/contrase�a y haber arrancado el
servidor PPP), pulse IInnttrroo para ver si as� comienza el servidor PPP...
En este punto, usted puede colgar su m�dem (normalmente, teclee +++
r�pidamente y despu�s ejecute el comando ATHO una vez que su m�dem
responda con OK).
Si no consigue hacer funcionar su m�dem, lea el manual del m�dem, las
p�ginas de manual de su software de comunicaciones y el COMO sobre
Puertos Serie. Una vez que lo ha conseguido, contin�e haciendo paso
por paso lo ya comentado.
1100.. CCoonnffiigguurraannddoo llaa rreessoolluuccii��nn ddee nnoommbbrreess ((DDNNSS))
Mientras que a los humanos nos gusta dar nombres a las cosas, a los
ordenadores, lo que les gusta, son los n�meros. En una red TCP/IP (que
es lo que Internet es), llamaremos a las m�quinas con un nombre
particular - y cada m�quina vive en un "dominio" particular. Por
ejemplo, mi m�quina Linux se llama aarrcchheennllaanndd y vive en el dominio
iinntteerrwweefftt..ccoomm..aauu. Su direcci�n humanamente legible es, por lo tanto,
archenland.interweft.com.au (lo que es conocido como el FQDN - nombre
de dominio totalmente cualificado).
Sin embargo, para que esta m�quina pueda ser encontrada por otros
ordenadores en Internet, es necesario que sea referenciada por su
direcci�n IP.
Traducir (resolver) los nombres de una m�quina (y dominio) a
direcciones IP utilizadas en Internet es el trabajo de m�quinas que
ofrecen el servicio de nombres de dominio (DNS).
Esto es lo que sucede:-
� su m�quina necesita saber la direcci�n IP de un ordenador en
particular. La aplicaci�n que necesita esta informaci�n pregunta al
"resolvente" de su PC Linux para que le d� esta informaci�n;
� el resolvente necesita el fichero de m�quinas locales (/etc/hosts
y/o los servidores de nombres de dominio acerca de los que sabe (el
comportamiento del resolvente est� determinado por el fichero
/etc/host.conf);
� si la respuesta se encuentra en el fichero de m�quinas, se devuelve
la respuesta;
� si se especifica un servidor de nombres de dominio, su PC pregunta
a esta m�quina;
� si la m�quina DNS ya sabe la direcci�n IP para el nombre
solicitado, la devuelve. Si no la sabe, pregunta a otro servidor de
nombres de dominio a trav�s de Internet para encontrar la
informaci�n. El servidor de nombres pasa la informaci�n al
resolvente que la solicita - el cual da la informaci�n a la
aplicaci�n que la solicita.
Cuando realiza una conexi�n PPP, necesita decirle a su m�quina Linux
d�nde puede encontrar la m�quina traductora de nombres a direcciones
IP (resoluci�n de direcciones), para que uusstteedd pueda utilizar nombres
de m�quina pero su oorrddeennaaddoorr pueda traducirlos a las direcciones IP
que necesita para hacer su trabajo.
Una manera es introducir cada m�quina con la que desee conectar en el
fichero /etc/hosts (lo que ser�a totalmente imposible si se conecta a
Internet); otra es utilizar direcciones IP en lugar de nombres (una
labor de memoria totalmente imposible de realizar m�s all� de peque�as
redes locales).
La mejor manera es configurar Linux para que sepa, autom�ticamente, a
d�nde ir para conseguir esa informaci�n de traducci�n nombre-
direcci�n. Este servicio lo da un sistema DNS (servidor de nombres de
dominio). Todo lo que necesita es introducir las direcciones IP de los
servidores de dominio dentro de su fichero /etc/resolv.conf.
1100..11.. EEll ffiicchheerroo //eettcc//rreessoollvv..ccoonnff
El servicio tecnico o al administrador de su servidor PPP deber�a
proporcionarle dos direcciones IP de DNS (s�lo una es necesaria, pero
dos dan seguridad en el caso de fallo de una de ellas).
Tal y como se mencion�, Linux no puede configurar la direcci�n IP del
servidor de nombres de la manera en la que MS Windows 95 lo hace. Es
necesario que usted iinnssiissttaa (educadamente) para que su ISP le d� esa
informaci�n.
Su /etc/resolv.conf deber�a ser algo como esto:-
______________________________________________________________________
domain your.isp.domain.name
nameserver 10.25.0.1
nameserver 10.25.1.2
______________________________________________________________________
Edite este fichero (cr�elo si es necesario) para que represente la
informaci�n que le ha proporcionado su ISP. Deber�a tener los permisos
siguientes :-
-rw-r--r-- 1 root root 73 Feb 19 01:46 /etc/resolv.conf
Si ya ha configurado un /etc/resolv.conf debido a que se encuentra en
una red local, simplemente a�ada las direcciones IP de los servidores
DNS PPP a su fichero existente.
1100..22.. EEll ffiicchheerroo //eettcc//hhoosstt..ccoonnff
Deber�a tambi�n comprobar que su /etc/host.conf est� correctamente
configurado. Este deber�a ser algo como
______________________________________________________________________
order hosts,bind
multi on
______________________________________________________________________
Esto le dice al resolvente que utilice la informaci�n del fichero host
antes de enviar preguntas de resoluci�n al DNS.
1111.. UUttiilliizzaaccii��nn ddee PPPPPP yy ddee pprriivviilleeggiiooss ddee rroooott
Debido a que PPP necesita configurar dispositivos de red, cambiar la
tabla de encaminamiento del n�cleo y m�s cosas, requiere privilegios
de root que permitan hacer todo esto.
Si un usuario distinto del root va a establecer conexiones PPP, el
programa PPP deber�a ser setuid root :-
-rwsr-xr-x 1 root root 95225 Jul 11 00:27 /usr/sbin/pppd
Si /usr/sbin/pppd no est� configurado de esta manera, entonces, ccoommoo
rroooott ejecute esta orden:-
chmod u+s /usr/sbin/pppd
Lo que esto hace es que pppd se ejecute con privilegios de root
iinncclluussoo si el programa es ejecutado por un usuario normal. Esto
permite al usuario normal ejecutar pppd con los privilegios necesarios
para establecer las interfaces de red y la tabla de encaminamiento del
n�cleo.
Programas que se ejecutan con 'set uid root' son agujeros de seguridad
en potencia, por lo que debe ser extremadamente cuidadoso a la hora de
hacer programas 'suid root'. Un n�mero contado de programas
(incluyendo pppd) han sido escritos cuidadosamente para minimizar el
peligro de ejecutarse con suid root, por lo que debe sentirse seguro
con �ste (pero sin garant�as).
Dependiendo de c�mo desee que funcione su sistema - espec�ficamente,
si desea que CUALQUIER usuario sea capaz de iniciar un enlace PPP,
deber�a hacer sus scripts de ppp-on/off de lectura y ejecuci�n
p�blica. (Esto est� probablemente bien si su PC es utilizado SOLO por
usted).
Sin embargo, si NO desea que cualquiera pueda arrancar una conexi�n
PPP (por ejemplo, sus hijos tienen cuentas en su PC Linux y no desea
que se conecten a Internet sin su supervisi�n), necesitar� establecer
un grupo PPP (como root, edite /etc/group) y :-
� Haga pppd suid root, con due�o root y grupo PPP, con los permisos
para "otros" vac�os. Deber�a ser como
-rwsr-x--- 1 root PPP 95225 Jul 11 00:27 /usr/sbin/pppd
� Haga que los scripts ppp-on/off de due�o root y grupo PPP
� De al grupo PPP permiso de lectura y ejecuci�n de los scripts ppp-
on/off
-rwxr-x--- 1 root PPP 587 Mar 14 1995 /usr/sbin/ppp-on
-rwxr-x--- 1 root PPP 631 Mar 14 1995 /usr/sbin/ppp-off
� Anule los derechos de acceso de los dem�s a ppp-on/off.
� a�ada los usuarios que podr�n usar PPP al grupo PPP en /etc/group
Incluso si hace esto, los usuarios normales NO podr�n desconectar la
conexi�n v�a software. Ejecutar ppp-off requiere privilegios de root.
Sin embargo, un usuario puede simplemente apagar el m�dem (o
desconectar el cable telef�nico en el caso de un m�dem interno).
Un m�todo alternativo (y mejor) para hacer esto es utilizar el
programa sudo. Este ofrece m�s seguridad y le permitir� configurar
todo para que cualquier usuario (autorizado) pueda activar desactivar
la conexi�n utilizando los scripts. Utilizar sudo permitir� a un
usuario autorizado activar/desactivar el enlace PPP de manera limpia y
segura.
1122.. CCoonnffiigguurraarr llooss ffiicchheerrooss ddee ccoonneexxii��nn PPPPPP
Usted necesita estar conectado como rroooott para crear los directorios y
editar los ficheros que necesita para configurar PPP, incluso si desea
que PPP sea accesible para todos los usuarios.
PPP utiliza un n�mero de ficheros para conectar y para configurar una
conexi�n PPP. La localizaci�n y el nombre de �stos var�a entre PPP
2.1.2 y PPP 2.2.
Para PPP 2.1.2 los ficheros son:-
______________________________________________________________________
/usr/sbin/pppd # el ejecutable PPP
/usr/sbin/ppp-on # el script de marcado/conexi�n
/usr/sbin/ppp-off # el script de desconexi�n
/etc/ppp/options # las opciones que pppd usa para todas las conexiones
/etc/ppp/options.ttyXX # las opciones espec�ficas para este puerto
______________________________________________________________________
Para PPP 2.2 los ficheros son:-
______________________________________________________________________
/usr/sbin/pppd # el ejecutable PPP
/etc/ppp/scripts/ppp-on # el script de marcado/conexi�n
/etc/ppp/scripts/ppp-on-dialer # parte 1 el script de marcado
/etc/ppp/scripts/ppp-off # el script real del propio programa chat
/etc/ppp/options # las opciones que pppd usa para todas las conexiones
/etc/ppp/options.ttyXX # las opciones espec�ficas para este puerto
______________________________________________________________________
Los usuarios de Red Hat Linux deber�an fijarse en que los lugares en
que Red Hat 5.X pone estos scripts es en el subdirectorio /scripts del
directorio de documentaci�n del paquete ppp (para la versi�n 2.2.0f de
este paquete es /usr/doc/ppp-2.2.0f-2/scripts).
En su directorio /etc deber�a existir un directorio ppp:-
drwxrwxr-x 2 root root 1024 Oct 9 11:01 ppp
Si no existe, cr�elo con esos permisos y propietario.
Si el directorio ya existe, deber�a contener una plantilla de opciones
denominada ooppttiioonnss..ttppll. Este fichero se incluye m�s abajo en caso de
que no lo contenga.
Imprimalo ya que contiene una explicaci�n de casi todas las opciones
PPP (son �tiles leerlas junto con las p�ginas de manual pppd). Aunque
usted pueda utilizar este fichero como base para su fichero
/etc/ppp/options, es probablemente mejor crear su propio fichero de
opciones que no contenga ning�n comentario de la plantilla. Ser� mucho
m�s corto y m�s f�cil de leer/mantener.
Si tiene varios m�dems/puertos serie (caso t�pico de servidores PPP),
cree un fichero general /etc/ppp/options que contenga las opciones
comunes para todos los puertos serie en los que de soporte de entrada
salida y configure ficheros de opciones individuales con los ajustes
necesarios para cada puerto serie en el que desee establecer una
conexi�n PPP.
Estos ficheros de opciones espec�ficas de puertos options.ttx1,
tt/options.ttyx2/ y as� (donde x es la letra apropiada para sus
puertos serie).
Sin embargo, para una �nica conexi�n PPP, puede usar sin problemas el
fichero /etc/ppp/options. De manera alternativa puede poner todas las
opciones como argumentos de la propia orden pppd.
Es m�s sencillo mantener una configuraci�n que utilice ficheros
/etc/ppp/options.ttySx. Si utiliza PPP para conectar con varios
servidores, puede crear ficheros de opciones para cada uno de ellos en
/etc/ppp/options.servidor y entonces especificar el fichero de
opciones como un par�metro de la orden PPP mientras conecta
(utilizando la opci�n file fichero-de-opciones de pppd en la l�nea de
�rdenes).
1122..11.. EEll ffiicchheerroo ooppttiioonnss..ttppll ssuummiinniissttrraaddoo
Algunas distribuciones de PPP parecen haber perdido el fichero
options.tpl, por lo que aqu� est� el fichero completo. Le sugiero que
NO edite este fichero para crear su(s) fichero(s) /etc/ppp/options. En
su lugar, copie este a un nuevo fichero y entonces ed�telo. Si se hace
un l�o con las ediciones, siempre podr� volver al original y comenzar
de nuevo.
______________________________________________________________________
# /etc/ppp/options -*- sh -*- opciones generales para pppd
# creado 13-Jul-1995 jmk
# traducido 5-Feb-1999 davefx
# autodate: 01-Aug-1995
# autotime: 19:45
# Usar el ejecutable u orden especificado para configurar el puerto serie
# Esta orden usar�a t�picamente el programa "chat" para hacer que el m�dem
# marque y conectar la sesi�n ppp remota.
#connect "echo Necesita instalar un comando connect."
# Ejecutar el programa u orden especificado despu�s de que pppd haya
# finalizado la conexi�n. Este script podr�a, por ejemplo, mandar �rdenes
# al m�dem para que cuelgue si las se�ales de control hardware del mismo no
# est�n disponibles.
#disconnect "chat -- \d+++\d\c OK ath0 OK"
# mapa de caracteres async -- 32-bit hex; cada bit es un car�cter que
# necesita ser asincronizado para que pppd lo reciba. 0x00000001 representa
# '\x01', y 0x80000000 representa '\x1f'.
#asyncmap 0
# Obligar a la pareja a que se autentifique antes de permitir que los
# paquetes de red se env�en o se reciban.
#auth
# Usar el flujo de paquetes hardware (como RTS/CTS) para controlar el flujo
# de datos del puerto serie.
#crtscts
# Usar el flujo de paquetes sotware (como XON/XOFF) para controlar el flujo
# de datos en el puerto serie.
#xonxoff
# A�adir un camino por defecto a las tablas de encaminamiento del sistema,
# utilizando a la pareja como pasarela, una vez que la negociaci�n IPCP sea
# completada con �xito. Esta entrada se elimina cuando la conexi�n PPP
# finaliza.
#defaultroute
# Especifica que ciertos caracteres deben ser puestos en secuencia de escape
# en la transmisi�n (sin importar el hecho de que la pareja pida que sean
# mapeados por el control async). Los caracteres que han de ser puestos en
# secuencia de escape se especifican como una lista de n�meros hexadecimales
# separados por comas. F�jese de que casi todos los caracteres pueden ser
# especificados por la opci�n escape, no como con la opci�n asyncmap que
# s�lo permite hacerlo a los caracteres de control. Los caracteres que no
# pueden ser puestos en secuencia de escape son aquellos con valores
# situados entre 0x20 - 0x3f o 0x5e.
#escape 11,13,ff
# No usar las l�neas de control del m�dem.
#local
# Especificar que pppd deber�a utilizar el bloqueo modo UUCP del dispositivo
# serie para asegurarse un acceso exclusivo al dispositivo.
#lock
# Usar las l�neas de control del m�dem. En Ultrix, esta opci�n implica
# control de flujo por hardware, al igual que la opci�n crtscts. (Esta
# opci�n no est� implementada por completo.)
#modem
# Ajustar el valor de MRU (Unidad de recepci�n m�xima) a <n> para la
# negociaci�n. pppd pedir� a la pareja que no env�e paquetes de m�s de <n>
# bytes. El valor m�nimo de MRU es 128. El valor por defecto es 1500. Un
# valor recomendado para enlaces lentos es 296 (40 bytes para cabecera
# TCP/IP + 256 bytes de datos).
#mru 542
# Establecer la m�scara de red de la interfaz a <n>, una m�scara de red en
# notaci�n "punto-decimal" (como 255.255.255.0).
#netmask 255.255.255.0
# Desabilitar el comportamiento por defecto cuando no se especifica una
# direcci�n IP local, que es determinar (si es posible) la direcci�n IP
# local de la m�quina. Con esta opci�n, la pareja deber� proveer la
# direcci�n local IP durante la negociaci�n IPCP (a menos que se especifique
# expl�citamente en la l�nea de �rdenes o en un fichero de opciones).
#noipdefault
# Habilita la opci�n "pasiva" en la LCP. Con esta opci�n, pppd intentar�
# iniciar una conexi�n; si no se recibe ninguna r�spuesta de la pareja,
# pppd esperar� de manera pasiva un paquete LCP de la pareja (en lugar de
# salir, que es lo que har�a sin esta opci�n).
#passive
# Con esta opci�n, pppd no transmitir� paquetes LCP para iniciar una
# conexi�n hasta que un paquete LCP v�lido sea recibido de la pareja (como
# la opci�n "passive" con antiguas versiones de pppd).
#silent
# No solicitar o permitir negociaci�n de ninguna opci�n para LCP y IPCP
# (usar valores por defecto).
#-all
# Deshabilitar la compresi�n en la negociaci�n de Direcci�n/control (usa
# la configuraci�n por defecto, como desabilitar el campo
# direcci�n/control).
#-ac
# Deshabilitar la necociaci�n asyncmap (usa el asyncmap por defecto, que es
# poner en secuencia de escape todos los caracteres de control).
#-am
# No transformarse en un proceso en segundo plano (si no, pppd lo har� si
# se especifica un dispositivo serie).
#-detach
# Desabilitar la negociaci�n de direcci�n IP (con esta opci�n, la IP remota
# debe especificarse con una opci�n en la l�nea de �rdenes o en un fichero
# de opciones).
#-ip
# Deshabilitar la negociaci�n de n�mero m�gico. Con esta opci�n, pppd no
# puede detectar una l�nea con recepci�n de paquetes enviados.
#-mn
# Deshabilitar la negociaci�n MRU (unidad de m�xima recepci�n) (utilizar el
# valor por defecto, p.e. 1500).
#-mru
# Deshabilitar la negociaci�n de compresi�n de campo de protocolo (usar el
# valor por defecto, p.e. compresi�n de campo de protocolo inhabilitada).
#-pc
# Obligar a que la pareja se autentifique utilizando PAP.
# Esto require autentificaci�n de DOBLE SENTIDO. NO UTILICE esto para una
# conexi�n est�ndar PAP con un ISP ya que esto requerir� que la m�quina ISP
# se autentifique ante su m�quina (y no podr� hacerlo).
#+pap
# No autentificar utilizando PAP.
#-pap
# Requerir que la pareja se autentifique utilizando CHAP [Protocolo de
# Autentificaci�n de Saludo Criptogr�fico].
# Esto require autentificaci�n de DOBLE SENTIDO. NO UTILICE esto para una
# conexi�n est�ndar CHAP con un ISP ya que esto requerir� que la m�quina ISP
# se autentifique ante su m�quina (y no podr� hacerlo).
#+chap
# No autentificar utilizando CHAP.
#-chap
# Deshabilitar la negociaci�n de la compresi�n de cabeceras IP estilo Van
# Jacobson (utilizar la configuraci�n por defecto, p.e. sin compresi�n).
#-vj
# Incrementar el nivel de depuraci�n (lo mismo que -d). Si se da esta opci�n,
# pppd guardar� los contenidos de todos los paquetes de control enviados o
# o recibidos de forma legible. Los paquetes se guardan a trav�s de syslog
# con las formas de demonio y nivel. Esta informaci�n puede ser
# direccionada a un fichero configurando /etc/syslog.conf de manera adecuada
# (ver syslog.conf(5)). (Si pppd se compila con la opci�n de extra
# depuraci�n, mostrar� mensajes utilizando local2 en lugar de demonio).
#debug
# A�adir el nombre de dominio <d> al de la m�quina local en prop�sitos de
# autentificaci�n. Por ejemplo, si gethostname() devuelve el nombre porche,
# pero el nombre de dominio completamente cualificado es
# porsche.Quotron.COM, se deber�a usar la opci�n de dominio para establecer
# el nombre de dominio a Quotron.COM.
#domain <d>
# Habilitar el c�digo de depuraci�n en el controlador nivel-n�cleo PPP. El
# argumento n es un n�mero que es la suma de los siguientes valores:
# 1 para habilitar los mensajes de depuraci�n generales, 2 para solicitar
# que el contenido de los paquetes recibidos sea impreso, y 4 para solicitar
# que el contenido de los paquetes enviados sea impreso.
#kdebug n
# Ajustar el valor de MTU (Unidad m�xima de transmisi�n) a <n>. A menos que
# la pareja requiera un menor valor v�a negociaci�n MRU, pppd necesitar� que
# el c�digo de red del n�cleo env�e paquetes de no mas de n bytes a trav�s
# de la interfaz de red PPP.
#mtu <n>
# Cambiar a <n> el nombre del sistema local para prop�sitos de
# autentificaci�n. Esto probablemente deba ser cambiado al nombre almacenado
# en la base de datos de nombres de su servidor ISP si est� utilizando
# PAP/CHAP.
#name <n>
# Cambiar el nombre de usuario a <u> para autentificar esta m�quina con la
# pareja con la que se utiliza PAP.
# NO use esto si ya utiliza la opci�n 'name' anteriormente.
#user <u>
# Forzar el uso del nombre de servidor como el nombre del sistema local
# en prop�sitos de autentificaci�n (sobreescribe la opci�n name).
#usehostname
# Cambiar el nombre asumido del sistema remoto para prop�sitos de
# autentificaci�n a <n>
#remotename <n>
# A�adir una entrada a la tabla del protocolo de resoluci�n de direcciones
# (ARP) de este sistema con la direcci�n IP de la pareja y la direcci�n
# Ethernet de su sistema.
#proxyarp
# Usar la base de datos de contrase�as del sistema para autentificar a la
# pareja al utilizar PAP.
#login
# Si se habilita esta opci�n, pppd enviar� un marco de petici�n de eco LCP
# a la pareja cada n segundos. Bajo Linux, la petici�n de eco se env�a
# cuando no se recibe ning�n paquete de la pareja durante n segundos.
# Normalmente, la pareja deber�a responder a la petici�n de eco con una
# respuesta de eco. Esta opci�n puede utilizarse con la opci�n lcp de fallo
# de eco para detectar que la pareja no est� conectada.
#lcp-echo-interval <n>
# Si se da esta opci�n, pppd presupondr� que la pareja est� muerta si
# tras enviar n peticiones de eco no se ha recibido ninguna respuesta v�lida
# de eco. Si esto sucede, pppd finalizar� la conexi�n. El uso de esta
# opci�n requiere un valor distinto de 0 para el par�metro
# lcp-echo-interval.
# Esta opci�n puede utilizarse para posibilitar que pppd finalice despu�s de
# que la conexi�n f�sica se haya roto (p.e., el modem ha colgado) en
# en situaciones en las que no est� disponible el control de l�neas del
# m�dem por v�a hardware.
#lcp-echo-failure <n>
# Ajustar el intervalo de reinicio de LCP a <n> segundos (3 por defecto).
#lcp-restart <n>
# Ajustar el m�ximo n�mero de transimisiones de petici�n de finalizaci�n de
# LCP a <n> (3 por defecto).
#lcp-max-terminate <n>
# Ajustar el m�ximo n�mero de transmisiones de petici�n de configuraci�n de
# LCP a <n> (10 por defecto).
# Algunos servidores PPP son lentos al inicializarse. Puede que necesite
# incrementar esto si sigue consiguiendo errores de "l�nea serie en bucle" y
# usted est� seguro de haber conectado correctamente y de que PPP se deber�a
# estar iniciando en el servidor.
#lcp-max-configure <n>
# Ajustar a <n> el m�ximo n�mero de NAKs de configuraci�n LCP devueltos antes
# de comenzar a enviar Denegaciones de configuraci�n. (10 por defecto).
#lcp-max-failure <n>
# Ajustar el intervalo de reinicializaci�n de IPCP (retardo de
# retransmisi�n) a <n> segundos (3 por defecto).
#ipcp-restart <n>
# Ajustar el m�ximo n�mero de transmisiones petici�n de finalizaci�n de IPCP
# a <n> (3 por defecto).
#ipcp-max-terminate <n>
# Ajustar el m�ximo n�mero de peticiones de configuraci�n IPCP a <n> (10 por
# defecto).
#ipcp-max-configure <n>
# Ajustar a <n> el m�ximo n�mero de NAKs de configuraci�n IPCP devueltos antes
# de comenzar a enviar Denegaciones de configuraci�n. (10 por defecto).
#ipcp-max-failure <n>
# Ajustar el intervalo de reinicializaci�n PAP (retardo de retransmisi�n) a
# <n> segundos. (3 por defecto).
#pap-restart <n>
# Ajustar el m�ximo n�mero de transmisiones de petici�n de autentificaci�n
# PAP a <n> (10 por defecto).
#pap-max-authreq <n>
# Ajustar el intervalo de reinicializaci�n CHAP (retardo de retransmisi�n de
# intentos) a <n> segundos. (3 por defecto).
#chap-restart <n>
# Ajustar el m�ximo n�mero de transmisiones de intentos CHAP a <n>
# (10 por defecto).
#chap-max-challenge
# Si se da esta opci�n, pppd recomprobar� la autenticidad de la pareja cada
# <n> segundos.
#chap-interval <n>
# Con esta opci�n, pppd aceptar� la direcci�n IP dada por la pareja como la
# IP propia, incluso aunque se haya especificado la direcci�n IP local como
# una opci�n.
#ipcp-accept-local
# Con esta opci�n pppd aceptar� la direcci�n IP dada por la pareja como su
# IP, incluso aunque la direcci�n IP remota se ha especificado como opci�n.
#ipcp-accept-remote
______________________________________________________________________
1122..22.. ��QQuu�� ooppcciioonneess ddeebbeerr��aa uussaarr?? ((NNoo PPAAPP//CCHHAAPP))
Bien, como dice la canci�n, todo depende. Las opciones especificadas
aqu� deber�an funcionar con la mayor�a de los servidores.
Sin embargo, si NO funciona, LEA EL FICHERO DE PLANTILLA
(/etc/ppp/options.tpl) yy las p�ginas de manual de pppd yy hable con el
administrador/servicio t�cnico que llevan el servidor al que se est�
conectando.
Deber�a darse cuenta de que los scripts de conexi�n presentados aqu�
tambi�n utilizan algunas opciones de l�nea de �rdenes para hacer las
cosas algo m�s sencillas de cambiar.
______________________________________________________________________
# /etc/ppp/options (NO PAP/CHAP)
#
# Evitar que pppd trabaje en segundo plano
-detach
#
# utilizar las l�neas de control del m�dem
modem
# utilizar bloqueos de tipo uucp para asegurar acceso exclusivo a los
# dispositivos serie
lock
# usar control de flujo hardware
crtscts
# crear un camino por defecto para esta conexi�n en la table de
# encaminamiento
defaultroute
# NO establecer ninguna secuencia de control en forma de cadena de escape
asyncmap 0
# transmitir paquetes de 552 bytes de tama�o m�ximo
mtu 552
# recibir paquetes de 552 bytes de tama�o m�ximo
mru 552
#
#-------FIN DE EJEMPLO /etc/ppp/options (no PAP/CHAP)
______________________________________________________________________
1133.. SSii ssuu sseerrvviiddoorr PPPPPP uuttiilliizzaa PPAAPP ((PPrroottooccoolloo ddee AAuutteennttiiffiiccaaccii��nn ddee
CCoonnttrraassee��aass))
Si el servidor al que usted se conecta requiere autentificaci�n PAP o
CHAP, tiene que trabajar un poco m�s.
A las opciones arriba indicadas, a�ada las siguientes l�neas
______________________________________________________________________
#
# obligar a que pppd utilice su nombre de usuario en el ISP como 'nombre
# de m�quina' durante el proceso de autentificaci�n
name <su nombre de usuario en el ISP> # debe editar esta l�nea
#
# Si est� ejecutando un *servidor* PPP y necesita obligar a PAP o CHAP
# quite el comentario a una de las siguientes l�neas. NO utilice estas
# l�neas si usted es un cliente que se conecta a un servidor PPP (aunque
# el servidor utilice PAP o CHAP) ya que esto obligar� al SERVIDOR a
# autentificarse ante su m�quina (lo que casi con toda seguridad no puede
# hacer - y har� que la conexi�n sea fallida).
#+chap
#+pap
#
# Si utiliza secretos ENCRIPTADOS en el fichero /etc/ppp/pap-secrets
# entonces quite el comentario a la l�nea siguiente.
# Nota: esto NO es lo mismo que utilizar contrase�as encriptadas Micro$oft
# tal y como se puede configurar MS RAS en Windows NT.
#+papcrypt
______________________________________________________________________
1133..11.. UUttiilliizzaannddoo MMSSCCHHAAPP
Microsoft Windows NT RAS puede configurarse para usar una variaci�n
del protocolo CHAP. En el paquete tar de c�digo fuente de PPP,
encontrar� un fichero denominado README.MSCHAP80 que trata sobre esto.
Usted puede determinar si un servidor solicita autentificaci�n
mediante este protocolo habilitando el modo de depuraci�n para pppd.
Si el servidor solicita autentificaci�n MS CHAP, ver� l�neas como
______________________________________________________________________
rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap 80> <magic
0x46a3>]
______________________________________________________________________
La informaci�n importante es aauutthh cchhaapp 8800.
Para hacer que utilice MS CHAP, necesitar� recompilar pppd para dar
soporte a esto. Por favor, lea las instrucciones en el fichero
README.MSCHAP80 del c�digo fuente para m�s instrucciones acerca de
c�mo compilar y utilizar esta variaci�n.
Debe darse cuenta de que de momento este c�digo s�lo da soporte a
clientes PPP Linux que se conecten a un servidor MS Windows NT. NNOO
permite que un servidor PPP Linux utilice autentificaci�n MSCHAP80 con
sus clientes.
1133..22.. EEll ffiicchheerroo ddee sseeccrreettooss PPAAPP//CCHHAAPP
Si utiliza autentificaci�n pap o chap, tambi�n necesitar� crear un
fichero de secretos. Estos son:
______________________________________________________________________
/etc/ppp/pap-secrets
/etc/ppp/chap-secrets
______________________________________________________________________
Deben pertenecer al usuario root, grupo root y tener permisos de
fichero 740 por seguridad.
Lo primero de lo que debe darse cuenta acerca de PAP y CHAP es que
est�n dise�ados para autentificar ssiisstteemmaass iinnffoorrmm��ttiiccooss y no uussuuaarriiooss.
"�C�mo? �Cu�l es la diferencia?" le escucho preguntar.
Bien. Una vez que su ordenador ha realizado una conexi�n PPP con el
servidor, CCUUAALLQQUUIIEERR usuario de su sistema puede utilizar esa conexi�n
- no s�lo usted. Esto es lo que le permite configurar un enlace de red
de �rea extensa (WAN) que interconecte dos redes locales utilizando
PPP.
PAP puede requerir autentificaci�n bidireccional (y CHAP LLAA RREEQQUUIIEERREE)
- esto es: en cada ordenador son necesarios un nombre v�lido y un
secreto para el otro ordenador implicado. Sin embargo, esta NNOO es la
manera en la que la mayor�a de los servidores PPP ofrecen conexiones
PPP autentificadas con PAP.
Lo m�s probable es que su ISP le haya proporcionado un nombre de
usuario y una contrase�a para permitirle conectar a su sistema y, una
vez all�, a Internet. Su ISP no est� en absoluto interesado en el
nombre de su ordenador, por lo que probablemente necesite utilizar el
nombre de usuario de su ISP como nombre de su ordenador.
Esto se realiza utilizando la opci�n name user name de pppd. Por lo
que si va a utilizar como nombre de usuario el que su ISP le ha
proporcionado, a�ada la l�nea
______________________________________________________________________
name su_usuario nombre_en_el_ISP
______________________________________________________________________
a su fichero /etc/ppp/options.
T�cnicamente, deber�a usar user usuario nombre_en_su_ISP para PAP,
pero pppd es lo suficientemente inteligente para interpretar name como
user si se utiliza PAP. La ventaja de utilizar name es que tambi�n es
v�lida para CHAP.
Ya que PAP es para autentificar oorrddeennaaddoorreess, t�cnicamente necesita
tambi�n especificar un nombre de ordenador remoto. Sin embargo, como
la mayor�a de la gente s�lo tiene un ISP, puede utilizar un comod�n
(*) como nombre de m�quina remota en el fichero de secretos.
Tambi�n es valioso recordar que muchos ISP funcionan con bancos
m�ltiples de m�dems conectados a servidores distintos - cada uno con
un nombre diferente, pero ACCEDIDOS desde un n�mero de tel�fono �nico.
Puede ser a veces bastante dif�cil en algunas circunstancias saber en
ese momento cu�l es el nombre del ordenador remoto, ya que depende de
a que servidor de terminales est� usted conectado.
1133..33.. EEll ffiicchheerroo ddee sseeccrreettooss PPAAPP
El fichero /etc/ppp/pap-secrets tiene este aspecto
______________________________________________________________________
# Secretos para autentificaci�n utilizando PAP
# cliente servidor secreto direcciones_IP_locales_aceptables
______________________________________________________________________
Los cuatro campos se delimitan con un espacio en blanco y el �ltimo
puede estar vac�o (lo que es deseable para una asignaci�n de IP
din�mica de su ISP).
Supongamos que su ISP le ha proporcionado el nombre de usuario de
pedro y la contrase�a de picapiedra por lo que establecer�a la opci�n
name pedro en /etc/ppp/options[.ttySx] y establecer�a su fichero
/etc/ppp/pap-secrets como sigue:
______________________________________________________________________
# Secretos para la autentificaci�n utilizando PAP
# cliente servidor secreto direcciones_IP_locales_aceptables
pedro * picapiedra
______________________________________________________________________
Esto hace que para el nombre de m�quina local pedro (el cual hemos
hecho que pppd use incluso aunque no sea nuestro nombre de m�quina
local) y para CCUUAALLQQUUIIEERR servidor, se utilice la contrase�a (secreto)
picapiedra.
F�jese en que se necesita especificar una direcci�n local IP, a menos
que sea necesario FORZAR una direcci�n IP local y est�tica. Incluso
aunque intente hacer esto, no es probable que funcione en la mayor�a
de servidores PPP (por razones de seguridad) que no permiten que el
sistema remoto establezca la direcci�n IP que desea tener.
1133..44.. EEll ffiicchheerroo ddee sseeccrreettooss CCHHAAPP
Este m�todo requiere una autentificaci�n mutua - esto es: usted debe
permitir que su m�quina se autentifique ante el servidor YY que el
servidor se autentifique ante su m�quina.
Por lo que, si su m�quina es pedro y la remota es pablo, en su m�quina
debe configurar name pedro remotename pablo y en la m�quina remota
debe configurarse name pablo nombreRemoto pedro en sus respectivos
ficheros /etc/ppp/options[.ttySx].
El fichero /etc/chap-secrets de pedro tendr�a este aspecto
______________________________________________________________________
# Secretos para autentificaci�n mediante CHAP
# cliente servidor secreto direcciones_IP_locales_aceptables
pedro pablo picapiedra
pablo pedro marmol
______________________________________________________________________
y para pablo
______________________________________________________________________
# Secretos para autentificaci�n mediante CHAP
# cliente servidor secreto direcciones_IP_locales_aceptables
pablo pedro picapiedra
pedro pablo marmol
______________________________________________________________________
Fijese en que ambas m�quinas deben tener entradas para la
autentificaci�n bidireccional. Esto permite que la m�quina local se
autentifique ante la remota YY que la remota se autentifique ante la
local.
1133..55.. MMaanneejjaarr ccoonneexxiioonneess mm��llttiipplleess aauutteennttiiffiiccaaddaass ccoonn PPAAPP
Algunos usuarios tienen m�s de un servidor al que conectarse con PAP.
Si su nombre de usuario es distinto para cada m�quina a la que desea
conectarse no hay ning�n problema.
Pero muchos usuarios tienen el mismo nombre de usuario en dos (o m�s -
incluso en todos) sistemas a los que se conecta. Esto entonces es un
problema a la hora de seleccionar la l�nea correcta de /etc/ppp/pap-
secrets
Como podr�a imaginar, PPP da un mecanismo para solucionar esto. PPP
permite establecer un 'nombre asumido' para el servidor remoto de la
conexi�n utilizando la opci�n rreemmootteennaammee de pppd.
Supongamos que se conecta a dos servidores PPP utilizando como nombre
de usuario pedro. Debe establecer su fichero /etc/ppp/pap-secrets de
m�s o menos como sigue:
______________________________________________________________________
pedro servidorppp1 pablo
pedro servidorppp2 wilma
______________________________________________________________________
Ahora, para conectarse al servidorppp1 deber�a utilizar name pedro
remotename servidorppp1 en su ppp-optiones y para el servidorppp2 name
pedro remotename servidorppp2.
Como puede selecionar el fichero de opciones ppp a usar con pppd
utilizando la opci�n file fichero, puede establecer un script para
conectarse a cada uno de sus servidores PPP, escogiendo el fichero de
opciones correcto a utilizar, y una vez all� seleccionando la opci�n
remotename adecuada.
1144.. EEssttaabblleecciieennddoo llaa ccoonneexxii��nn PPPPPP ddee mmaanneerraa mmaannuuaall
Ahora que ha creado sus ficheros /etc/ppp/options y /etc/resolv.conf
(y, si son necesarios, el fichero /etc/ppp/pap|chap-secrets), puede
probar la configuraci�n manualmente estableciendo una conexi�n PPP.
(Una vez que tengamos funcionando la conexi�n manual, automatizaremos
el proceso).
Para hacer esto, su software de comunicaciones debe ser capaz de salir
sin reiniciar el m�dem. Minicom puede hacer esto - ALT Q (o en
versiones m�s antiguas CTRL A Q).
Aseg�rese de tener una cuenta de root abierta.
Arranque su software de comunicacions (como minicom), marque el
tel�fono del servidor PPP y entre en el sistema como suele hacer. Si
necesita ejecutar una orden para hacer que se inicie el servidor PPP,
h�galo. Ver� aparecer los caracteres sin sentido que vio antes.
Si est� utilizando pap o chap, entonces simplemente conectandose al
sistema remoto se iniciar� ppp en el servidor y podr� ver los
caracteres sin sentido sin ni siquiera haber entrado en el sistema
(aunque esto no sucede en algunos servidores - pruebe a pulsar EEnntteerr
para que los caracteres sin sentido comiencen a mostrarse).
Salga del programa de comunicaciones _s_i_n _r_e_i_n_i_c_i_a_r _e_l _m_�_d_e_m (ALT Q o
CTL A Q en minicom) y, en la l�nea de �rdenes de Linux (como root)
teclee
______________________________________________________________________
pppd -d -detach /dev/ttySx 38400 &
______________________________________________________________________
La opci�n -d conecta el modo de depuraci�n - la conversaci�n de
inicializaci�n de la conexi�n ppp se enviar� al registro del sistema -
lo cual es �til si se tienen problemas.
Las luces de su m�dem deber�an parpadear mientras se establece la
conexi�n PPP. Realizar la conexi�n PPP tardar� un breve rato.
En ese momento puede mirar a la interfaz PPP, tecleando la orden
______________________________________________________________________
ifconfig
______________________________________________________________________
Adem�s de cualquier dispositivo Ethernet y de bucle que posea, ver�
algo como :-
______________________________________________________________________
ppp0 Link encap:Point-Point Protocol
inet addr:10.144.153.104 P-t-P:10.144.153.51 Mask:255.255.255.0
UP POINTOPOINT RUNNING MTU:552 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0
TX packets:0 errors:0 dropped:0 overruns:0
______________________________________________________________________
Donde
� inet addr:10.144.153.10 es la direcci�n IP de su lado de la
conexi�n.
� P-t-P:10.144.153.5 es la direcci�n IP del SERVIDOR.
(Naturalmente, ifconfig no informar� estas mismas direcciones IP, pero
mostrar� las de su servidor PPP.)
Nota: ifconfig tambi�n notifica que el enlace esta ACTIVO y
EJECUT�NDOSE.
Si no hay ning�n dispositivo ppp listado o hay algo como
______________________________________________________________________
ppp0 Link encap:Point-Point Protocol
inet addr:0.0.0.0 P-t-P:0.0.0.0 Mask:0.0.0.0
POINTOPOINT MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0
TX packets:0 errors:0 dropped:0 overruns:0
______________________________________________________________________
la conexi�n PPP no ha sido realizada... Vea la �ltima secci�n acerca
de la depuraci�n.
Tambi�n deber�a poder ver un camino a la m�quina remota (y m�s all�).
Para hacer esto, teclee la orden
______________________________________________________________________
route -n
______________________________________________________________________
Deber�a ver algo como esto:-
______________________________________________________________________
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
10.144.153.3 * 255.255.255.255 UH 1500 0 1 ppp0
127.0.0.0 * 255.0.0.0 U 3584 0 11 lo
10.0.0.0 * 255.0.0.0 U 1500 0 35 eth0
default 10.144.153.3 * UG 1500 0 5 ppp0
______________________________________________________________________
Aqu� hay algo de bastante importancia: d�se cuenta de que hay DOS
entradas apuntando a su interfaz ppp.
La primera es un camino HOST (indicada por la marca H) y que nos
permite ver la m�quina a la que estamos conectados, pero no m�s all�.
La segunda es el camino por defecto (establecido al dar a pppd la
opci�n defaultroute. Este es el camino que dice a nuestro PC Linux que
env�e cualquier paquete NO destinado a las redes locales - para las
que tenemos caminos espec�ficos - al propio servidor PPP. El servidor
PPP es entonces responsable de encaminar nuestros paquetes a internet
y de traernos los paquetes que vengan hacia nosotros.
Si no ve una tabla de encaminamiento con dos entradas, algo va mal. En
particular si su registro de sistema muestra un mensaje diciendo que
ppd no est� reemplazando ning�n camino existente por defect, cuando
tiene un camino por defecto apuntando a su interfaz Ethernet - el cual
DDEEBBEE ser reemplazado por un camino espec�fica de red: SS��LLOO PPUUEEDDEE TTEENNEERR
UUNN CCAAMMIINNOO PPOORR DDEEFFEECCTTOO.
Necesitar� explorar los ficheros de inicializaci�n de su sistema para
averiguar d�nde se establece la ruta por defecto (usar� una orden
route add default...). C�mbielo a algo como route add net....
Ahora probemos el enlace haciendo pings a la direcci�n IP del
servidor, tal y como se nos informa en la salida de ifconfig, por
ejemplo:
______________________________________________________________________
ping 10.144.153.51
______________________________________________________________________
Deber�a recibir mensajes como
______________________________________________________________________
PING 10.144.153.51 (10.144.153.51): 56 data bytes
64 bytes from 10.144.153.51: icmp_seq=0 ttl=255 time=328.3 ms
64 bytes from 10.144.153.51: icmp_seq=1 ttl=255 time=190.5 ms
64 bytes from 10.144.153.51: icmp_seq=2 ttl=255 time=187.5 ms
64 bytes from 10.144.153.51: icmp_seq=3 ttl=255 time=170.7 ms
______________________________________________________________________
Esta lista podr�a durar indefinidamente. Para pararla utilice CTRL C,
en ese momento recibir� algo m�s de informaci�n :-
______________________________________________________________________
--- 10.144.153.51 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 170.7/219.2/328.3 ms
______________________________________________________________________
Hasta ahora la cosa va bien.
Ahora intentemos hacer un ping a un sitio por nombre (que no sea el
propio nombre del servidor, pero que sea de una m�quina que usted SEPA
est� encendida y funcionando). Por ejemplo
______________________________________________________________________
ping sunsite.unc.edu
______________________________________________________________________
En ese momento habr� una pausa mientras Linux obtiene del servidor de
nombres que usted especific� en /etc/resolv.conf la direcci�n IP
correspondiente al nombre de la m�quina a la que ha hecho un ping. No
se preocupe por la espera (ver� que las luces del m�dem parpadean). En
breve plazo recibir� una respuesta como
______________________________________________________________________
PING sunsite.unc.edu (152.2.254.81): 56 data bytes
64 bytes from 152.2.254.81: icmp_seq=0 ttl=254 time=190.1 ms
64 bytes from 152.2.254.81: icmp_seq=1 ttl=254 time=180.6 ms
64 bytes from 152.2.254.81: icmp_seq=2 ttl=254 time=169.8 ms
64 bytes from 152.2.254.81: icmp_seq=3 ttl=254 time=170.6 ms
64 bytes from 152.2.254.81: icmp_seq=4 ttl=254 time=170.6 ms
______________________________________________________________________
De nuevo, pare la salida pulsando CTRL C y consiga las estad�sticas...
______________________________________________________________________
--- sunsite.unc.edu ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 169.8/176.3/190.1 ms
______________________________________________________________________
Si no consigue respuesta, intente hacer un ping a la direcci�n IP del
servidor de nombres de su ISP. Si recibe respuesta, entonces puede que
tenga un problema con su /etc/resolv.conf.
Si no funciona, hay un problema de encaminamiento, o su ISP tien un
problema a la hora de devolverle a usted los paquetes. Compruebe su
tabla de encaminamiento tal y como se describi� m�s arriba, y si todo
est� bien, contacte con su ISP. Una buena manera de probar si su ISP
funciona es utilizar otro sistema operativo para conectar. Si puede
conectar a su ISP con ese otro sistema, entonces el problema ser� de
usted.
Si todo funciona, corte la conexi�n tecleando
______________________________________________________________________
ppp-off
______________________________________________________________________
Tras una breve pausa, el m�dem colgar�.
Si eso no funciona, apague su m�dem o arranque su programa de
comunicaciones e interrumpa el m�dem con +++ y luego cuelgue con ATH0
cuando reciba la notificaci�n del m�dem OK.
Puede que tambi�n necesite eliminar el fichero de bloqueo creado por
pppd
______________________________________________________________________
rm -f /var/lock/LCK..ttySx
______________________________________________________________________
1155.. AAuuttoommaattiizzaannddoo ssuuss ccoonneexxiioonneess -- CCrreeaannddoo llooss ssccrriippttss ddee ccoonneexxii��nn
Aunque usted pueda seguir conect�ndose a mano tal y como se mostr�
antes, es mucho mejor configurar algunos scripts que permitan hacer
esto autom�ticamente.
Un conjunto de scripts automatiza la conexi�n y el arranque de PPP de
manera que todo lo que tenga que hacer (como root o como miembro del
grupo PPP) es ejecutar una �nica orden que inicie su conexi�n.
1155..11.. SSccrriippttss ddee ccoonneexxii��nn ppaarraa aauutteennttiiffiiccaaccii��nn ttiippoo NNoommbbrree ddee
uussuuaarriioo//CCoonnttrraassee��aa
Si su ISP no necesita el uso de PAP/CHAP, estos son los scripts para
usted.
Si el paquete ppp est� instalado correctamente, deber�a tener dos
ficheros de ejemplo. Para PPP 2.1.2 est�n situados en /usr/sbin y para
PPP 2.2 est�n en /etc/ppp/scripts. En Red Hat Linux se encuentran en
el subdirectorio /scripts del directorio de documentaci�n del paquete
ppp (/usr/doc/ppp-x.x.x/) Se denominan
en PPP-2.1.2
ppp-on
ppp-off
en PPP-2.2 o superiores
ppp-off
ppp-on
ppp-on-dialer
Ahora, si utiliza PPP 2.1.2, le recomiendo que borre los ficheros de
ejemplo. Hay grandes problemas potenciales con ellos - (y no me diga
que funcionan bien). Yo los us� durante a�os (incluso los recomendaba
en las primeras versiones de este documento COMO).
Para el beneficio de los usuarios PPP 2.1.2, aqu� dejo disponibles
versiones de plantilla MEJORES, tomadas de la distribuci�n PPP 2.2. Le
sugiero que los copie y utilice estos scripts eenn lluuggaarr ddee los antiguos
scripts de PPP-2.1.2.
1155..22.. EEll ssccrriipptt pppppp--oonn
Este es el primero de un PAR de scripts que inicializan la conexi�n.
______________________________________________________________________
#!/bin/sh
#
# El script para iniciar la conexi�n PPP. Esta es la primera parte del
# par de scripts. No es un par de scripts seguro ya que los c�digos son
# visibles con la orden 'ps'. Sin embargo, es simple.
#
# Estos son los par�metros. Modif�quelos seg�n lo necesite.
TELEPHONE=555-1212 # El n�mero de tel�fono para la conexi�n
ACCOUNT=george # La cuenta de acceso para la conexi�n
PASSWORD=gracie # La clave para esta cuenta de acceso
LOCAL_IP=0.0.0.0 # Direcci�n IP local, si se conoce. Din�mica = 0.0.0.0
REMOTE_IP=0.0.0.0 # Direcci�n IP remota, si desea. Usualmente = 0.0.0.0
NETMASK=255.255.255.0 # La m�scara de red si es necesaria
#
# Exportar las necesarias para que esten disponibles por 'ppp-on-dialer'
export TELEPHONE ACCOUNT PASSWORD
#
# Esta es la parte del script que marca el tel�fono y se conecta. Por favor,
# utilice el nombre de fichero absoluto ya que la variable $PATH no se usa
# la opci�n de conexi�n. (Hacer esto con una cuenta de root ser�a un agujero
# de seguridad).
#
DIALER_SCRIPT=/etc/ppp/ppp-on-dialer
#
# Iniciar la conexi�n
#
#
exec /usr/sbin/pppd debug /dev/ttySx 38400 \
$LOCAL_IP:$REMOTE_IP \
connect $DIALER_SCRIPT
______________________________________________________________________
Este es el c�digo del script ppp-on-dialer:-
______________________________________________________________________
#!/bin/sh
#
# Esta es la segunda parte del script ppp-on. Realiza el protocolo de
# conexi�n para la conexi�n deseada
#
/usr/sbin/chat -v \
TIMEOUT 3 \
ABORT '\nBUSY\r' \
ABORT '\nNO ANSWER\r' \
ABORT '\nRINGING\r\n\r\nRINGING\r' \
'' \rAT \
'OK-+++\c-OK' ATH0 \
TIMEOUT 30 \
OK ATDT$TELEPHONE \
CONNECT '' \
ogin:--ogin: $ACCOUNT \
assword: $PASSWORD
______________________________________________________________________
Para PPP-2.2, el script ppp-off tiene este aspecto:-
______________________________________________________________________
#!/bin/sh
##############################################################
########
#
# Determina el dispositivo a finalizar
#
if [ "$1" = "" ]; then
DEVICE=ppp0
else
DEVICE=$1
fi
##############################################################
########
#
# Si el fichero pid de ppp0 est� presente cuando el programa se ejecuta,
# pararlo.
if [ -r /var/run/$DEVICE.pid ]; then
kill -INT `cat /var/run/$DEVICE.pid`
#
# Si la detenci�n no funcion� entonces no hab�a ning�n proceso ejecut�ndose
# con ese pid. Puede tambi�n significar que el fichero de bloqueo
# permanecer�. Puede desear eliminar el fichero de bloqueo al mismo tiempo.
if [ ! "$?" = "0" ]; then
rm -f /var/run/$DEVICE.pid
echo "ERROR: Eliminado fichero de bloqueo hu�rfano"
exit 1
fi
#
# Exito. Hagamos que pppd quite sus cosas de enmedio.
echo "Enlace PPP a $DEVICE finalizado."
exit 0
fi
#
# El proceso ppp no est� ejecut�ndose para ppp0
echo "ERROR: El enlace PPP no est� activo para $DEVICE"
exit 1
______________________________________________________________________
1155..33.. EEddiittaarr llooss ssccrriippttss ddee iinniicciioo PPPPPP ssuummiinniissttrraaddooss
Ya que los nuevos scripts vienen en dos partes, los editaremos por
turnos.
1155..33..11.. EEll ssccrriipptt pppppp--oonn
Necesitar� editar el script para que refleje SU nombre de usuario en
su ISP, SU contrase�a en su ISP y el n�mero de tel�fono de su ISP.
Cada una de las l�neas como TELEPHONE= realmente establecen variables
que contienen la informaci�n a la derecha de '=' (excluyendo los
comentarios, por supuesto). Edite cada uno de esos ficheros para que
sea correcto para su ISP y conexi�n.
As� mismo, como usted configura la direcci�n IP (si necesita hacerlo)
en el fichero /etc/ppp/options, BORRE la l�nea que dice
______________________________________________________________________
$LOCAL_IP:$REMOTE_IP \
______________________________________________________________________
Tambi�n, aseg�rese de que la variable DIALER_SCRIPT apunta a la ruta y
nombre completos del script de marcado que realmente va a utilizar.
Por tanto, si ha movido o renombrado este script, aseg�rese de que
edita esta l�nea correctamente en el script ppp-on.
1155..33..22.. EEll ssccrriipptt pppppp--oonn--ddiiaalleerr
Este es el segundo de los scripts que arranca la conexi�n ppp
Nota: un script chat suele escribirse en una sola l�nea. Las barras
inversas se emplean para permitir continuaciones a lo largo de varias
l�neas f�sica (para permitir legibilidad humana) y no forman parte del
script mismo.
Sin embargo, es muy util mirarlo en detalle para que entendamos qu� es
lo que (se supone que) hace.
1155..44.. QQuu�� qquuiieerree ddeecciirr uunn ssccrriipptt CChhaatt......
Un script chat es una secuencia de parejas "cadena esperada " "cadena
enviada". En particular, f�jese que SSIIEEMMPPRREE esperamos aallggoo antes de
enviar nada.
Si vamos a enviar algo SSIINN recibir nada antes, debemos usar una cadena
esperada vac�a (indicada por "") y de manera similar al esperar algo
sin enviar nada. Tambi�n, si una cadena est� formada por varias
palabras (como NO CARRIER), debe entrecomillar la cadena para que sea
vista como una sola por chat.
La l�nea de chat en nuestra plantilla es:-
______________________________________________________________________
exec /usr/sbin/chat -v
______________________________________________________________________
Al llamar a chat, la opci�n -v hace que chat copie toda su I/O al
registro del sistema (normalmente /var/log/messages). Una vez que sabe
que el script chat funciona bien, edite esa l�nea para quitar la -v y
ahorrar informaci�n innecesaria de su syslog.
______________________________________________________________________
TIMEOUT 3
______________________________________________________________________
Esto ajusta el retardo para la recepci�n de entradas esperadas a tres
segundos. Puede necesitar incrementar esta a 5 o 10 segundos si uti�
liza un m�dem realmente lento.
______________________________________________________________________
ABORT '\nBUSY\r'
______________________________________________________________________
Si se recibe la cadena BUSY, abortar la operaci�n.
______________________________________________________________________
ABORT '\nNO ANSWER\r'
______________________________________________________________________
Si se recibe la cadena NO ANSWER, abortar la operaci�n.
______________________________________________________________________
ABORT '\nRINGING\r\n\r\nRINGING\r'
______________________________________________________________________
Si se recibe la cadena (repetida) RINGING, abortar la operaci�n. Eso
es porque alguien esta llamando a su tel�fono.
______________________________________________________________________
" \rAT
______________________________________________________________________
No esperar nada del m�dem y enviar la cadena AT.
______________________________________________________________________
OK-+++\c-OK ATH0
______________________________________________________________________
Esto es algo m�s complicado ya que utiliza alguna de las capacidades
de recogida de errores de chat.
Lo que quiere decir es... Esperar OK. Si no se recibe (porque el m�dem
no est� en modo de �rdenes) entonces enviar +++ (la cadena que hace
que un m�dem compatible con el est�ndar Hayes pase a modo de �rdenes)
y esperar un OK. Entonces enviar ATH0 (el m�dem descuelga). Esto
permite a su script tomar la situaci�n si su modem estaba atascado en
l�nea.
______________________________________________________________________
TIMEOUT 30
______________________________________________________________________
Ajustar el retardo a 30 segundos para el resto del script. Si
experimenta problemas con el script chat que aborta debido a
finalizaciones del tiempo de espera, incremente esto a 45 segundos o
m�s.
______________________________________________________________________
OK ATDT$TELEPHONE
______________________________________________________________________
Esperar OK (la respuesta del m�dem al comando ATH0) y marcar el n�mero
de tel�fono al que deseamos llamar.
______________________________________________________________________
CONNECT ''
______________________________________________________________________
Esperar CONNECT (que es lo que nuestro m�dem env�a cuando el m�dem
remoto contesta) y no enviar nada como respuesta.
______________________________________________________________________
ogin:--ogin: $ACCOUNT
______________________________________________________________________
De nuevo, tenemos una tecnolog�a de recuperaci�n de errores. Esperamos
el la petici�n de entrada al sistema (...ogin:) pero si no recibimos
esto debido a la finalizaci�n del tiempo de espera, enviar un retorno
de carro y entonces buscar de nuevo la petici�n de entrada al sistema.
Cuando se �sta se reciba, enviar el nombre de usuario (guardado en la
variable $ACCOUNT).
______________________________________________________________________
assword: $PASSWORD
______________________________________________________________________
Esperar la petici�n de contrase�a y enviar nuestra contrase�a (otra
vez, guardada en una variable).
Este script chat tiene una capacidad razonable de recuperaci�n de
errores. Chat tiene muchas m�s caracter�sticas que las aqu�
demostradas. Para m�s informaci�n consulte la p�gina de manual de chat
(man 8 chat).
1155..44..11.. AArrrraannccaannddoo PPPPPP eenn eell llaaddoo ddeell sseerrvviiddoorr
Aunque el script ppp-on-dialer es adecuado para los servidores que
arrancan autom�ticamente pppd una vez que usted ha entrado en el
sistema, algunos servidores requieren que usted arranque
expl�citamente PPP.
Si necesita ejecutar una orden para arrancar PPP en el servidor,
TAMBIEN necesita editar el script ppp-on-dialer.
Al FINAL del script (despu�s de la l�nea de contrase�a) a�ada un par
adicional eessppeerraaddoo eennvviiaaddoo - este deber�a ser como su l�nea de �rdenes
(cuidado con los caracteres que tienen un significado especial en el
shell Bourne - como el $ y [ o ] (los corchetes).
Una vez que chat haya encontrado la l�nea de �rdenes de su shell,
deber� ejecutar la orden que arranque ppp en el servidor PPP de su
ISP.
En mi caso, mi servidor PPP utiliza la l�nea de �rdenes est�ndar de
Bash para Linux
______________________________________________________________________
[hartr@kepler hartr]$
______________________________________________________________________
y requiere que teclee
______________________________________________________________________
ppp
______________________________________________________________________
para arrancar PPP en el servidor.
Es una buena idea permitir aqu� una recuperaci�n de errores, por lo
que en mi caso utilizo
______________________________________________________________________
hartr--hartr ppp
______________________________________________________________________
Esto es, si no recibo la l�nea de �rdenes en el tiempo del retardo,
env�o un retorno de carro y busco de nuevo la l�nea de �rdenes.
Una vez que se recibe la l�nea de �rdenes, env�o la cadena ppp.
Nota: no olvide a�adir una \ al final de la l�nea anterior para que
chat todav�a piense que el script chat est� en una sola l�nea.
Desafortunadamente, algunos servidores producen un juego muy variable
de l�neas de �rdenes. Puede que necesite conectar muchas veces
utilizando minicom para comprender qu� sucede y escoger las cadenas
"esperadas" estables.
1155..55.. UUnn ssccrriipptt cchhaatt ppaarraa ccoonneexxiioonneess aauutteennttiiffiiccaaddaass ppoorr PPAAPP//CCHHAAPP
Si su ISP utiliza PAP/CHAP, su script chat es mucho m�s simple. Todo
lo que el script chat debe hacer es marcar el tel�fono, esperar la
conexi�n y dejar que pppd maneje la entrada en el sistema.
______________________________________________________________________
#!/bin/sh
#
# Esta es la segunda parte del script ppp-on. Realiza el protocolo de
# conexi�n para la conexi�n deseada.
#
exec /usr/sbin/chat -v \
TIMEOUT 3 \
ABORT '\nBUSY\r' \
ABORT '\nNO ANSWER\r' \
ABORT '\nRINGING\r\n\r\nRINGING\r' \
'' \rAT \
'OK-+++\c-OK' ATH0 \
TIMEOUT 30 \
OK ATDT$TELEPHONE \
CONNECT '' \
______________________________________________________________________
1155..66.. LLaass ooppcciioonneess ddee ppppppdd ddeebbuugg yy ffiillee ffiicchheerroo__ooppcciioonneess
Como ya hemos visto, puede conectar la informaci�n de registro de
depuraci�n si arranca pppd con la opci�n -d. La opci�n "debug" es
equivalente a esta.
Ya que estamos estableciendo una nueva conexi�n con un nuevo script,
deje la opci�n de depuraci�n por ahora. (Atenci�n: si tiene poco
espacio en el disco duro, registrar los intercambios de pppd puede
hacer ampliar su fichero de registro de sistema y meterle en problemas
- pero para hacerlo debe fallar su conexi�n y seguir intent�ndolo
durante bastantes minutos).
Una vez que usted sabe que todo funciona adecuadamente, usted puede
eliminar esta opci�n.
Si ha llamado a su fichero de opciones ppp de alguna manera distinta a
/etc/ppp/options o /etc/ppp/options.ttySx, especifique el nombre de
fichero a pppd con la opci�n file.
______________________________________________________________________
exec /usr/sbin/pppd debug file options.miservidor /dev/ttyS0 38400 \
______________________________________________________________________
1166.. CCoommpprroobbaarr ssuu ssccrriipptt ddee ccoonneexxii��nn
Abrir un nuevo Xterm (si se encuentra en X) o abra una nueva consola
virtual y introd�zcase en el sistema como root.
En esta nueva sesi�n, ejecute la orden
tail -f /var/log/messages
(o cualquiera que se el fichero de su registro de sistema).
En la primera ventana (o consola virtual) ejecute la orden
ppp-on &
(o como quiera que haya llamado a la versi�n que ha editado de
/etc/ppp/scripts/ppp-on). Si no pone el script a trabajar en segundo
plano con el signo & al final de la orden, no tendr� la l�nea de
�rdenes de vuelta hasta que ppp finalice (cuando la conexi�n se
acabe).
Ahora cambie a la ventana que est� registrando el registro del
sistema.
Podr� ver algo como esto (siempre y cuando haya especificado -v a chat
y -d a pppd)....esto son el script chat y las respuestas que son
enviadas al registro del sistema seguida de la informaci�n de
inicializaci�n de pppd :-
______________________________________________________________________
Oct 21 16:09:58 hwin chat[19868]: abort on (NO CARRIER)
Oct 21 16:09:59 hwin chat[19868]: abort on (BUSY)
Oct 21 16:09:59 hwin chat[19868]: send (ATZ^M)
Oct 21 16:09:59 hwin chat[19868]: expect (OK)
Oct 21 16:10:00 hwin chat[19868]: ATZ^M^M
Oct 21 16:10:00 hwin chat[19868]: OK -- got it
Oct 21 16:10:00 hwin chat[19868]: send (ATDT722298^M)
Oct 21 16:10:00 hwin chat[19868]: expect (CONNECT)
Oct 21 16:10:00 hwin chat[19868]: ^M
Oct 21 16:10:22 hwin chat[19868]: ATDT722298^M^M
Oct 21 16:10:22 hwin chat[19868]: CONNECT -- got it
Oct 21 16:10:22 hwin chat[19868]: send (^M)
Oct 21 16:10:22 hwin chat[19868]: expect (ogin:)
Oct 21 16:10:23 hwin chat[19868]: kepler login: -- got it
Oct 21 16:10:23 hwin chat[19868]: send (hartr^M)
Oct 21 16:10:23 hwin chat[19868]: expect (ssword:)
Oct 21 16:10:23 hwin chat[19868]: hartr^M
Oct 21 16:10:23 hwin chat[19868]: Password: -- got it
Oct 21 16:10:23 hwin chat[19868]: send (??????^M)
Oct 21 16:10:23 hwin chat[19868]: expect (hartr)
Oct 21 16:10:24 hwin chat[19868]: [hartr -- got it
Oct 21 16:10:24 hwin chat[19868]: send (ppp^M)
Oct 21 16:10:27 hwin pppd[19872]: pppd 2.1.2 started by root, uid 0
Oct 21 16:10:27 hwin pppd[19873]: Using interface ppp0
Oct 21 16:10:27 hwin pppd[19873]: Connect: ppp0 <--> /dev/cua1
Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(LCP): Sent code 1, id 1.
Oct 21 16:10:27 hwin pppd[19873]: LCP: sending Configure-Request, id 1
Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfreq(LCP): Rcvd id 1.
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd MRU
Oct 21 16:10:27 hwin pppd[19873]: (1500)
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd ASYNCMAP
Oct 21 16:10:27 hwin pppd[19873]: (0)
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd MAGICNUMBER
Oct 21 16:10:27 hwin pppd[19873]: (a098b898)
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd PCOMPRESSION
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd ACCOMPRESSION
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: returning CONFACK.
Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(LCP): Sent code 2, id 1.
Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfack(LCP): Rcvd id 1.
Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 1, id 1.
Oct 21 16:10:27 hwin pppd[19873]: IPCP: sending Configure-Request, id 1
Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfreq(IPCP): Rcvd id 1.
Oct 21 16:10:27 hwin pppd[19873]: ipcp: received ADDR
Oct 21 16:10:27 hwin pppd[19873]: (10.144.153.51)
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: ipcp: received COMPRESSTYPE
Oct 21 16:10:27 hwin pppd[19873]: (45)
Oct 21 16:10:27 hwin pppd[19873]: (ACK)
Oct 21 16:10:27 hwin pppd[19873]: ipcp: returning Configure-ACK
Oct 21 16:10:28 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 2, id 1.
Oct 21 16:10:30 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 1, id 1.
Oct 21 16:10:30 hwin pppd[19873]: IPCP: sending Configure-Request, id 1
Oct 21 16:10:30 hwin pppd[19873]: fsm_rconfreq(IPCP): Rcvd id 255.
Oct 21 16:10:31 hwin pppd[19873]: ipcp: received ADDR
Oct 21 16:10:31 hwin pppd[19873]: (10.144.153.51)
Oct 21 16:10:31 hwin pppd[19873]: (ACK)
Oct 21 16:10:31 hwin pppd[19873]: ipcp: received COMPRESSTYPE
Oct 21 16:10:31 hwin pppd[19873]: (45)
Oct 21 16:10:31 hwin pppd[19873]: (ACK)
Oct 21 16:10:31 hwin pppd[19873]: ipcp: returning Configure-ACK
Oct 21 16:10:31 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 2, id 255.
Oct 21 16:10:31 hwin pppd[19873]: fsm_rconfack(IPCP): Rcvd id 1.
Oct 21 16:10:31 hwin pppd[19873]: ipcp: up
Oct 21 16:10:31 hwin pppd[19873]: local IP address 10.144.153.104
Oct 21 16:10:31 hwin pppd[19873]: remote IP address 10.144.153.51
______________________________________________________________________
(Nota - Yo utilizo direcci�n IP ESTATICA - mi m�quina la env�a al
servidor PPP - usted no ver� esto si utiliza una direcci�n IP
DIN�MICA.) Adem�s, este servidor requiere una orden espec�fica para
iniciar ppp.
Esto tiene buen aspecto - pru�belo como antes con pings a direcciones
IP y a nombres de m�quina.
Arranque su navegador web o lo que sea, y navegue por la red - Ya est�
conectado.
1177.. DDeessccoonneeccttaannddoo llaa ccoonneexxii��nn PPPPPP
Cuando haya terminado con la conexi�n PPP, utilice la orden est�ndar
ppp-off para finalizarlo (recuerde - debe ser root o un miembro del
grupo ppp).
En el registro de sistema ver� algo como:-
______________________________________________________________________
Oct 21 16:10:45 hwin pppd[19873]: Interrupt received: terminating link
Oct 21 16:10:45 hwin pppd[19873]: ipcp: down
Oct 21 16:10:45 hwin pppd[19873]: default route ioctl(SIOCDELRT): Bad address
Oct 21 16:10:45 hwin pppd[19873]: fsm_sdata(LCP): Sent code 5, id 2.
Oct 21 16:10:46 hwin pppd[19873]: fsm_rtermack(LCP).
Oct 21 16:10:46 hwin pppd[19873]: Connection terminated.
Oct 21 16:10:46 hwin pppd[19873]: Exit.
______________________________________________________________________
No se preocupe acerca de SIOCDELRT - es simplemente pppd d�ndose
cuenta de que est� finalizando y no pasa nada por lo que haya que
preocuparse.
1188.. DDeeppuurraannddoo
Hay un buen n�mero de razones por la que su conexi�n puede no
funcionar - chat no ha conseguido completarse correctamente, usted
tiene una l�nea con mucho ruido, etc. Compruebe su registro de sistema
para m�s indicaciones.
1188..11.. HHee ccoommppiillaaddoo eell ssooppoorrttee PPPPPP eenn eell nn��cclleeoo,, ppeerroo......
Un problema muy com�n es que la gente compila el soporte PPP en el
n�cleo y despu�s, cuando intentan ejecutar pppd, el n�cleo se queja
diciendo que no soporta ppp. Hay unas cuantas razones por la que esto
puede ocurrir.
1188..11..11.. ��EEsstt�� aarrrraannccaannddoo eell nn��cclleeoo ccoorrrreeccttoo?? AAuunnqquuee uusstteedd hhaayyaa
rreeccoommppiillaaddoo eell nn��cclleeoo ppaarraa qquuee ddee ssooppoorrttee aa pppppp,, uusstteedd ppuueeddee nnoo eessttaarr
aarrrraannccaannddoo eell nnuueevvoo nn��cclleeoo.. EEssttoo ppuueeddee ssuucceeddeerr ssii nnoo aaccttuuaalliizzaa
//eettcc//lliilloo..ccoonnff yy vvuueellvvee aa eejjeeccuuttaarr lliilloo..
Una buena manera de comprobar el n�cleo es ejecutando la orden uname
-a, que deber�a producir una l�nea como
______________________________________________________________________
Linux archenland 2.0.28 #2 Thu Feb 13 12:31:37 EST 1997 i586
______________________________________________________________________
Esto da la versi�n del n�cleo y la fecha en la que el n�cleo se
compil� - lo cual deber�a dar una idea clara de qu� es lo que sucede.
1188..11..22.. ��CCoommppiill�� eell ssooppoorrttee pppppp ddeell nn��cclleeoo ccoommoo mm��dduulloo??
Si compil� el soporte ppp como m�dulo, pero no rehizo e instal� los
m�dulos, puede conseguir este error. Compruebe el N�cleo-COMO y el
fichero README en /usr/src/linux.
Otra posibilidad en este caso es que usted puede esperar que los
m�dulos requeridos se carguen autom�ticamente, pero puede no estar
ejecutando el demonio kerneld (que carga y descarga autom�ticamente
m�dulos en tiempo real). Lea el kerneld mini-HOWTO para m�s
informaci�n acerca de la configuraci�n de kerneld.
1188..11..33.. ��EEsstt�� uusstteedd uuttiilliizzaannddoo llaa vveerrssii��nn ccoorrrreeccttaa ddee PPPPPP ppaarraa ssuu
nn��cclleeoo??
Usted ddeebbee utilizar ppp-2.2 o superior con las versiones de n�cleo
2.x.x. Puede utilizar ppp-2.2 con la versi�n de n�cleo 1.2.x (si
parchea el n�cleo). Si no, utilice ppp-2.1.2.
1188..11..44.. ��EEsstt�� eejjeeccuuttaannddoo ppppppdd ccoommoo rroooott??
Si no ejecuta pppd como usuario root (y ppd no es su id root) puede
recibir este mensaje.
1188..22.. MMii mm��ddeemm ssee ccoonneeccttaa ppeerroo pppppp nnoo ssee iinniicciiaa..
Hay infinitas variaciones sobre esto (eche un vistazo a
comp.os.linux...).
Un fallo MMUUYY com�n es que haya errado al transcribir algo en sus
scripts. Lo �nico que debe hacer aqu� es asegurarse de que registra la
conversaci�n chat entre su PC Linux y el servidor en el registro de
sistema (/var/log/messages) y entonces ir _l_�_n_e_a _p_o_r _l_�_n_e_a
examin�ndolo. Puede que necesite conectarse al servidor ppp
manualmente para comprobarlo todo de nuevo.
Debe comprobar el registro de las l�neas de �rdenes muy cuidadosamente
- y tenga en cuenta de que los humanos tenemos la tendencia de leer lo
que CREEMOS que hemos escrito - �no lo que hemos escrito de veras!
1188..33.. EEll rreeggiissttrroo ddee ssiisstteemmaa ddiiccee ```` sseerriiaall lliinnee iiss nnoott 88 bbiitt cclleeaann
......''''
Tambi�n hay variaciones sobre esto - como serial line looped back,
etc., y la causa puede ser varias cosas.
Para entender qu� es lo que pasa es necesario profundizar un poco en
qu� es lo que sucede tras el proceso de pppd.
Cuando pppd arranca, env�a paquetes LCP (protocolo de control de
conexi�n) a la m�quina remota. Si recibe una respuesta v�lida entonces
pasa a la siguiente fase (utilizar IPCP - paquetes de protocolo de
control de IP) y s�lo cuando esa negociaci�n finaliza se inicializa la
capa IP de manera que pueda utilizar su conexi�n PPP.
Si no hay un servidor ppp funcionando al otro lado de la l�nea cuando
su PC env�a paquetes lcp, �stos son reflejados por el proceso de
entrada en el sistema de la m�quina remota. Como estos paquetes
utilizan 8 bits, el reflejo corta el octavo bit (recuerde que ASCII es
un c�digo de 7 bits). PPP ve esto y se queja de acuerdo con ello.
Hay bastantes razones por las que este reflejo puede ocurrir.
1188..33..11.. NNoo hhaa eennttrraaddoo eenn eell sseerrvviiddoorr ddee mmaanneerraa aaddeeccuuaaddaa
Cuando su script chat finaliza, pppd arranca en su PC. Sin embargo, si
no ha completado el proceso de entrada en el sistema (incluyendo el
env�o de cualquier orden necesaria para arrancar PPP en el servidor),
PPP no se iniciar�.
Por lo tanto, los paquetes lcp se reflejar�n y recibir� este error.
Necesita comprobar cuidadosamente y corregir (si es necesario) su
script chat (ver m�s arriba).
1188..33..22.. NNoo eesstt�� eejjeeccuuttaannddoo PPPPPP eenn eell sseerrvviiddoorr
Algunos servidores requieren que introduzca una orden o un retorno de
carro tras completar el proceso de entrada en el sistema antes de
arrancar ppp.
Compruebe su script chat (ver m�s arriba).
Si entra en el sistema manualmente y se encuentra con que necesita
enviar un retorno de carro para que arranque PPP, simplemente a�ada un
par esperado/enviado en blanco al final de su script chat (una cadena
de env�o vac�a env�a realmente un retorno de carro).
1188..33..33.. EEll pprroocceessoo PPPPPP rreemmoottoo eess lleennttoo aall aarrrraannccaarrssee
Este es algo m�s raro.
Por defecto, pppd est� compilado para enviar un m�ximo de 10
peticiones de configuraci�n lcp. Si el servidor es un poco lento al
arrancar, las 10 peticiones puede ser enviadas antes de que el PPP
remoto este listo para recibirlas.
En su m�quina, pppd ve las 10 peticiones reflejadas (con el octavo bit
eliminado) y finaliza.
Hay dos maneras de evitar esto:-
A�ada lcp-max-configure 30 a su fichero de opciones ppp. Esto
incrementa el m�ximo n�mero de paquetes de configuraci�n lcp que pppd
env�a antes de dejarlo. Para un servidor realmente lento, puede que
necesite incluso m�s que esto.
De manera alternativa, puede trabajar la soluci�n algo m�s. Se habr�
dado cuenta de que cuando se conect� a mano al servidor PPP y PPP
arranc�, el ppp era siempre el car�cter del gurru�o (~).
Utilizando este conocimiento podemos a�adir un nuevo par
esperado/enviado al final de nuestro script chat que espere una tilde
y no env�e nada. Esto ser�a algo como:-
______________________________________________________________________
\~ ''
______________________________________________________________________
Nota: como el car�cter tilde tiene un significado especial en el
shell, debe ser mostrado con un car�cter de escape (por eso la barra
inversa inicial).
1188..44.. CCaammiinnoo ppoorr ddeeffeeccttoo nnoo eessttaabblleecciiddoo
Si pppd rehusa a establecer un camino por defecto, esto es porque
(bastante correctamente) deniega la eliminaci�n/reemplazo del camino
por defecto existente.
La raz�n m�s normal de este error es que algunas distribuciones
configurar una camino por defecto v�a tarjeta Ethernet que es
contraria a establecer una ruta espec�fica de red.
Vea el Manual GARL y los COMOs Net2/3 para m�s informaci�n acerca de
c�mo configurar su tarjeta Ethernet y las rutas asociadas.
Una alternativa a esto es que su red local utilice una
pasarela/encaminador y que la tabla de encaminamientos de su PC haya
sido configurada para apuntar como camino por defecto a la pasarela.
Solucionar esta �ltima situaci�n requiere algo m�s de conocimientos IP
y queda fuera de los objetivos de este COMO. Le sugiero que obtenga un
consejo de alguien m�s experto (v�a foros de noticias o de alguien a
quien pueda preguntar).
1188..55.. OOttrrooss PPrroobblleemmaass
Hay otras muchas razones aparte de estas por las que ppp no puede
conectar y/o funcionar bien.
Lea el PUF PPP (que son realmente una serie de preguntas y
respuestas). Es un documento mucho m�s intuitivo y las respuestas
ESTAN all�. Desde mi triste experiencia, si la respuesta a sus
problemas no est� all�, el problema no es fallo de ppp. En mi caso yo
estaba utilizando un n�cleo ELF para el que no hab�a actualizado los
m�dulos de n�cleo apropiados. Desperdici� s�lo 2 d�as y una casi toda
una noche modificando lo que hab�a sido un perfecto servidor PPP antes
del ligero error.
1199.. CCoonnssiigguuiieennddoo aayyuuddaa ccuuaannddoo eesstt�� ttoottaallmmeennttee aattaassccaaddoo
Si no puede hacer que su conexi�n PPP funcione, vuelva a este
documento y compru�belo todo - junto con la salida creada por "chat-
v..." y "pppd -d" en su registro de sistema.
Tambi�n consulte la documentaci�n de PPP y el PUF adem�s de los otros
documentos aqu� mencionados.
Si sigue atascado, intente escribir a los grupos de noticias
comp.os.linux.misc y comp.os.linux.networking que son le�dos por gente
que pueda ayudarle con PPP como comp.protocols.ppp
Puede intentar enviarme un mensaje personal, pero ha de saber que
tengo un trabajo (y una vida) y que no garantizo que responda
r�pidamente (si es que respondo) ya que todo depende de la cantidad de
trabajo y del estado de mi vida privada.
En particular - NNOO EENNVV��EE SSAALLIIDDAASS DDEE DDEEPPUURRAACCII��NN AA LLOOSS GGRRUUPPOOSS DDEE
NNOOTTIICCIIAASS NNII MMEE LLAASS EENNVVIIEE PPOORR CCOORRRREEOO EELLEECCTTRROONNIICCOO - lo primero consume
un valioso ancho de banda de red y lo �ltimo ser� autom�ticamente
enviado a /dev/null (a menos que yo se lo pidiera espec�ficamente).
2200.. PPrroobblleemmaass ccoommuunneess uunnaa vveezz qquuee eell eennllaaccee ffuunncciioonnaa
Un problema que puede encontrarse es que muchos proovedores s�lo dan
servicio t�cnico al paquete de programas que distribuyen con las
nuevas cuentas. Esto es (t�picamente) para Microsoft Windows :-( - y
muchos servicios de ayuda de ISPs no parecen saber nada acerca de Unix
(ni sobre Linux). Por lo tanto, prep�rese a recibir una asistencia
limitada por su parte.
Siempre podr�a hacer a todos un favor y mostrarles el funcionamiento
de Linux (cualquier persona de un servicio t�cnico deber�a estar al
d�a en t�rminos de Internet y eso quiere decir que deber�a tener un
ordenador con Linux en casa).
2200..11.. NNoo ppuueeddoo vveerr mm��ss aallll�� ddeell sseerrvviiddoorr PPPPPP ccoonn eell qquuee mmee ccoonneeccttoo
Bien - su conexi�n PPP est� establecida y ejecut�ndose y puede hacer
ping al servidor PPP por direcci�n IP (la segunda direcci�n IP
(remota) mostrada por ifconfig ppp0), pero no puede alcanzar nada m�s
all� de esto.
Antes de nada, intente hacer un ping a las direcciones IP
especificadas en /etc/resolv.conf como servidores de nombres. Si
funciona, usted ppuueeddee ver m�s alla de su servidor PPP (a menos que
tenga la misma direcci�n IP que la direcci�n IP remota para su
conexi�n). Ahora intentemos hacer un ping al nombre completo de
Internet de su proovedor de servicios. Por ejemplo
ping mi.proveedor.net.au
Si NO funciona, tiene un problema con la resoluci�n de nombres.
Probablemente por un error tipogr�fico en su /etc/resolv.conf.
Compruebe este cuidadosamente con la informaci�n que ha adquirido al
telefonear a su proovedor de servicio. Si todo tiene buen aspecto,
telefonee a su proovedor de servicio y compruebe que anot� los n�meros
IP correctamente.
Si SIGUE sin funcionar (y su proovedor confirma que tiene sus
servidores de nombres encendidos y funcionando), usted tendr� un
problema en alg�n otro sitio - le sugioero que compruebe
cuidadosamente su instalaci�n Linux (examinando particularmente los
permisos de los ficheros).
Si sigue sin poder hacer ping a los servidores de nombres de su
proovedor mediante direcci�n IP, o est�n apagados (haga una llamada
telef�nica y compruebelo) o hay un problema de encaminamiento en la
parte de su proovedor. De nuevo, ll�meles y compru�belo.
Una posibilidad es que la parte remota sea un servidor PPP Linux en la
que la opci�n de reenv�o de IPs no haya sido especificada en le
n�cleo.
Una buena prueba general es intentar conectar con su proovedor
utilizando el software que deben haber suminstrado para (cielos)
Microsoft Windows. Si todo funciona desde otro sistema operativo con
la misma cuenta, entonces el problema es con su sistema Linux, y NO
con su proovedor de servicios.
2200..22.. PPuueeddoo eennvviiaarr mmeennssaajjeess,, ppeerroo nnoo rreecciibbiirrllooss
Si utiliza direcci�n IP din�mica, esto es perfectamente normal. Vea
"Configurar los servicios" m�s abajo.
2200..33.. ��PPoorr qquu�� llaa ggeennttee nnoo ppuueeddee hhaacceerr ffiinnggeerr,, WWWWWW,, ggoopphheerr,, ttaallkk...... aa
mmii mm��qquuiinnaa??
De nuevo, si est� utilizando direcciones IP din�micas, esto es
perfectamente normal. Vea "Configurando servicios" m�s abajo.
2211.. UUttiilliizzaannddoo sseerrvviicciiooss IInntteerrnneett ccoonn ddiirreecccciioonneess IIPP ddiinn��mmiiccaass
Si est� utilizando direcciones IP din�micas (y muchos proovedores s�lo
le dar�n una direcci�n IP din�mica a menos que pague mucho m�s por su
conexi�n), entonces deber� reconocer las limitaciones que esto impone.
Antes de nada, las peticiones de servicio hacia fuera funcionar�n.
Esto es, podr� enviar mensajes utilizando sendmail (siempre que tenga
bien configurado sendmail), enviar/recibir ficheros v�a ftp, hacer
finger a usuarios en otras m�quinas, navegar por la Web, etc.
En particular, puede responder al correo electr�nico que haya recibido
en su m�quina aunque est� desconectado. El correo simplemente esperar�
en su cola de mensajes hasta que vuelva a conectarse con su ISP.
Sin embargo, su m�quina NO est� conectada a Internet las 24 horas del
d�a, ni tiene la misma IP cada vez que se conecta. Por lo que es
imposible que reciba correo direccionado a su m�quina, y muy dif�cil
configurar un servidor web o ftp de manera que sus amigos puedan
acceder.
Por lo menos, en lo que a Internet se refiere, su m�quina no es una
�nica m�quina contactable permanentemente ya que no tiene una �nica
direcci�n IP (recuerde - otras m�quinas utilizar�n la misma direcci�n
IP que usted ha utilizado alguna otra vez).
Si configura un servidor Web (u otro servidor), ser� completamente
desconocido por otro usuario en la Red A MENOS QUE sepan que su
m�quina est� conectada y su direcci�n IP actual. Hay un n�mero de
modos de los que pueden conseguir esta informaci�n, que abarcan desde
que usted les llame, les env�e un correo electr�nico o utilice
ficheros ".plan" en una cuenta shell en su proovedor de servicios
(siempre y cuando su proovedor permita el acceso a shell y finger).
Pero, para la mayor�a de los usuarios, este no es un problema. Lo que
la mayor�a de la gente quiere es recibir y enviar correo (utilizando
su cuenta en su proovedor de servicios) y hacer conexiones a
servidores externos WWW, ftp en Internet. Si DEBE permitir conexiones
internas, deber�a conseguir una IP est�tica. De manera alternativa
puede explorar los m�todos comentados anteriormente...
2211..11.. CCoonnffiigguurraarr eell ccoorrrreeoo eelleeccttrr��nniiccoo
Incluso para direcciones IP din�micas, puede configurar sendmail en su
m�quina para que env�e hacia afuera cualquier correo que escriba
localmente. La configuraci�n de sendmail puede ser oscura y dif�cil -
por lo que este documento no intentar� decir c�mo hacer esto. Sin
embargo, deber�a configurar sendmail para que su proovedor de
servicios Internet sea designado como su m�quina "smart relay" (la
opci�n DDSS de sendmail.cf. (Para m�s informaci�n acerca de la
configuraci�n de sendmail, lea los documentos sendmail - y mire las
configuraciones m4 que vienen con sendmail. Casi seguro que haya una
acorde con sus necesidades).
Hay tambi�n libros excelentes sobre Sendmail (como la "biblia" de
O'Reilly and Associates), pero es casi seguro que sobrecargar�an al la
mayor parte de los usuarios.
Una vez que tiene sendmail configurado, probablemente desee que
sendmail mande todos los mensajes que han estado esperando en la cola
de salida de mensajes tan pronto como la conexi�n se efect�e. Para
hacer esto, a�ada la orden
sendmail -q &
a su script /etc/ppp/ip-up (ver m�s abajo).
La recepci�n de correo es un problema para las direcciones IP
din�micas. La manera de configurar esto es:-
� configurar su programa gestor de correo de manera que todos los
mensajes enviados salgan con una cabecera "reply to" direccionada a
su direcci�n de correo en el proovedor.
Si puede, podr�a tambi�n ajustar su direcci�n FROM para que sea
tambi�n la su direcci�n en su ISP.
� usar los programas popclient y fetchmail para descargar el correo
de su proovedor de servicios. De manera alternativa, si su ISP
utiliza IMAP, usted puede usar un gestor de correo con soporte IMAP
(como por ejemplo, pine).
Puede automatizar este proceso en el momento de conexi�n poniendo las
�rdenes necesarios en el script /etc/ppp/ip-up (ver m�s abajo).
2211..22.. CCoonnffiigguurraarr uunn sseerrvviiddoorr ddee nnoommbbrreess llooccaall
Aunque usted pueda utilizar f�cilmente los servidores de nombres
localizados en su ISP, puede tambi�n instalar un servidor de nombres
local de cach� (secundario) que sea iniciado en el script ip-up. La
ventaja de ejecutar un servidor de nombres local (de cach�) es que le
ahorrar� tiempo (y ancho de banda) si contacta frecuentemente con las
mismas m�quinas durante una sesi�n de larga duraci�n.
La configuraci�n DNS para un servidor de nombres cach� (que utiliza
una linea "forwarders" en el fichero named.boot que apunta al servidor
de nombres de su ISP) es relativamente simple. El libro de O'Really
(DNS and Bind) explica todo lo que desea saber sobre esto.
Hay tambi�n un DNS-COMO disponible.
Si est� ejecutando una peque�a red local que permita el acceso a
Internet a trav�s de su PC Linux (utilizando enmascaramiento IP, por
ejemplo), puede que sea una buena idea ejecutar un servidor de nombres
local (con una directiva forwarders) aunque la conexi�n est� activada,
ya que esto minimizar� el ancho de banda y los retardos asociados a la
resoluci�n de nombres.
Un consejo de cortes�a: pida permiso a su ISP antes de empezar a usar
un servidor de nombres secundario de cach� en el dominio de su
servidor. Si est� bien configurado, su servidor de nombres no causar�
ning�n problema a su ISP, pero si las cosas van mal, puede causar
problemas.
2222.. EEnnllaazzaannddoo ddooss rreeddeess mmeeddiiaannttee PPPPPP
No hay ninguna diferencia b�sica entre enlazar un s�lo PC Linux a un
servidor PPP y entrelazar dos redes locales utilizando PPP en una
m�quina de cada red local. Recuerde que PPP es un protocolo eennttrree
iigguuaalleess, entre parejas iguales.
Sin embargo, usted necesita entender DDEE MMAANNEERRAA PPRREECCIISSAA c�mo se
establece el encaminamiento. Lea el c�mo RED-2 y la Gu�a del
Administrador de Redes en Linux (GARL). Tambi�n encontrar� de gran
ayuda " TCP/IP Network Administration" (publicado por O'Reilly and
Associates - ISBN 0-937175-82-X).
Si va a haber direcciones IP de red local no conectada en cada lado
del enlace, deber�a leer el minihowto sub networking de Linux. Est�
disponible en _L_i_n_u_x _S_u_b _n_e_t_w_o_r_k_i_n_g _m_i_n_i_-_H_O_W_T_O
http://www.interweft.com.au/other/.
Para enlazar dos redes locales, ddeebbee utilizar direcciones IP de red
distintas (o subredes con la misma direcci�n de red) y necesitar�
utilizar direcciones IP est�ticas - o utilizar enmascaramiento IP. Si
desea utilizar enmascaramiento IP, lea el mini-como de enmascaramiento
IP para buscar instrucciones para hacerlo funcionar.
2222..11.. CCoonnffiigguurraannddoo llaass ddiirreecccciioonneess IIPP..
Acuerde con el administrador de red de la otra red local qu�
direcciones IP van a utilizarse para cada lado de la interfaz PPP. Si
utiliza direcciones IP est�ticas, esto tambi�n requerir� que marque un
n�mero de tel�fono espec�fico.
Ahora edite el fichero /etc/ppp/options[.ttyXX] apropiado - es una
buena idea tener un m�dem y un puerto espec�fico en su ordenador para
esta conexi�n. Esto puede que requiera que cambie su fichero de
opciones /etc/ppp/options - y que cree los ficheros options.ttyXX para
cualesquiera otras conexiones.
Especifique las direcciones IP de su extremo de la conexi�n PPP con
las opciones adecuadas exactamente como se mostr� para las direcciones
IP est�ticas anteriormente.
2222..22.. CCoonnffiigguurraannddoo eell eennccaammiinnaammiieennttoo
Debe hacer que los paquetes de su red local se encaminen a trav�s de
la interfaz que establece la conexi�n PPP. Esto es un proceso de dos
fases.
Primero, necesitar� establecer un camino desde la m�quina que ejecute
la conexi�n PPP hasta la red remota. Si la conexi�n es a Internet,
esto puede manejarse con una ruta por defecto establecida por el
propio pppd en su extremo de conexi�n utilizando la opci�n
'defaultroute' con pppd.
Si, sin embargo, la conexi�n entrelaza dos redes locales, entonces
deber� a�adirse un camino espec�fico de red para cada red que sea
accesible a trav�s de la conexi�n. Esto se consigue utilizando la
orden 'route' para cada red existente en el script /etc/ppp/ip-up (ver
Tras establecer la conexi�n... para averiguar c�mo hacer esto).
Lo segundo que necesita hacer es decir a los otros ordenadores de su
red local que su ordenador Linux es, realmente, la pasarela para la
red situada al otro lado del enlace ppp.
Por supuesto, el administrador de la red remota tambi�n debe hacer
esto. Sin embargo, como el/ella encaminar� paquetes hacia nuestra red,
ser� necesario establecer un ccaammiinnoo eessppeecc��ffiiccoo ddee rreedd, no un camino
por defecto (a menos que la red local remota se conecte con usted para
acceder a Internet mediante su conexi�n).
2222..33.. SSeegguurriiddaadd ddee rreedd
Si enlaza su red local a Internet utilizando PPP - o incluso solo si
la conecta a una red local "extra�a", necesitar� saber de temas de
seguridad. Le sugiero que piense en instalar un cortafuegos.
Usted deber�a hablar con el administrador de su red local de AANNTTEESS de
que comience a conectar con redes locales extra�as o con Internet de
esta manera. Un fallo a la hora de hacer esto podr�a producir desde
que nada funcionara hasta que todo fuera seriamente problem�tico.
2233.. TTrraass hhaacceerr qquuee llaa ccoonneexxii��nn ffuunncciioonnee -- eell ssccrriipptt //eettcc//pppppp//iipp--uupp
Una vez que la conexi�n PPP se ha establecido, pppd busca un fichero
/etc/ppp/ip-up. Si este script existe y es ejecutable, el demonio PPP
ejecutar� el script. Esto le permite automatizar cualquier orden de
encaminamiento que pueda ser necesaria y cualesquiera otras acciones
que puede desear que sucedan cada vez que conecte el enlace PPP.
Esto es s�lo un script de shell y puede hacer cualquier cosa que un
script de shell pueda hacer (esto es, casi todo lo que quiera).
Por ejemplo, puede hacer que sendmail env�a cualquier mensaje situado
en la cola de mensajes a enviar.
De manera similar, puede insertar en ip-up las �rdenes para recoger
(utilizando pop) cualquier email disponible para usted en su ISP.
Hay restricciones en /etc/ppp/ip-up:-
� Se ejecuta en un entorno deliberadamente restringido para mejorar
la seguridad. Esto quiere decir que debe proporcionar la ruta
completa de los ejecutables, etc...
� T�cnicamente, /etc/ppp/ip-up es un _p_r_o_g_r_a_m_a, no un script. Esto
quiere decir que puede ser ejecutado directamente - y por ello
requiere que el fichero m�gico est�ndar (#!/bin/bash) de la primera
l�nea debe ser legible y ejecutable por el root.
2233..11.. EEnnccaammiinnaammiieennttoo eessppeecciiaall
Si est� interconectando dos redes locales, necesitar� establecer
caminos espec�ficos para las redes externas. Esto se puede hacer
f�cilmente utilizando el script /etc/ppp/ip-up. La �nica diferencia
estriba en si su m�quina maneja varias conexiones PPP.
Esto es debido a que /etc/ppp/ip-up se ejecuta para CADA conexi�n ppp
que se realiza, por lo que necesita ejecutar cuidadosamente las
�rdenes de encaminamiento correctos para el enlace particular que se
realiza - y no cuando se lleva a cabo cualquier otra conexi�n.
2233..22.. MMaanneejjaannddoo ccoollaass ddee ccoorrrreeoo eelleeccttrr��nniiccoo
Cuando se establece la conexi�n entre dos redes locales, puede que
desee asegurarse de que el correo electr�nico que est� esperando en
cada lado de la conexi�n sea _e_n_v_i_a_d_o a su destino. Esto se hace
a�adiendo la invocaci�n adecuada de sendmail.
Utilizar la funci�n 'case' de bash con un par�metro apropiado que pppd
pase al script puede servir para esto. Por ejemplo, este es el script
/etc/ppp/ip-up que utilizo para manejar nuestras conexiones WAN y la
conexi�n a mi Ethernet dom�stico (tambi�n manejado con el mismo
servidor ppp).
2233..33.. UUnn ssccrriipptt //eettcc//pppppp//iipp--uupp ddee eejjeemmpplloo
Este ejemplo da informaci�n acerca de una variedad amplia de usos.
______________________________________________________________________
#!/bin/bash
#
# Script que maneja las tablas de encaminamiento de la manera necesaria para
# pppd
# S�lo requiere este manejamiento el enlace a Newman.
#
# Cuando la conexi�n ppp se establece, se llama a este script con los
# siguientes par�metros
# $1 el nombre de interfaz utilizado por pppd (como ppp3)
# $2 el nombre de dispositivo tty
# $3 la velocidad del dispositivo tty
# $4 la direcci�n IP local para la interfaz
# $5 la direcci�n IP remota
# $6 el par�metro especificado para pppd en la opci�n 'ipparam'
#
case "$5" in
# Manejar el encaminamiento al servidor del Campus de Newman
202.12.126.1)
/sbin/route add -net 202.12.126.0 gw 202.12.126.1
# y enviar la cola de mensajes para que su correo se distribuya.
/usr/sbin/sendmail -q &
;;
139.130.177.2)
# Nuestro enlace Internet
# Cuando �ste se ejecuta, arrancar el servidor de tiempo y sincronizarlo con
# mundo en el caso de que no est� ya ejecut�ndose
if [ ! -f /var/lock/subsys/xntpd ]; then
/etc/rc.d/init.d/xntpd.init start &
fi
# Arrancar el servidor de noticias (si no estaba ejecut�ndose)
if [ ! -f /var/lock/subsys/news ]; then
/etc/rc.d/init.d/news start &
fi
;;
203.18.8.104)
# Descargar el correo a mi m�quina dom�stica tan pronto como se efectue el
# enlace. No se requiere encaminamiento ya que mi Ethernet dom�stico est�
# manejado por enmascaramiento IP y encaminamiento proxyarp.
/usr/sbin/sendmail -q &
;;
*)
esac
exit 0
______________________________________________________________________
Como resultado de llevar a cabo el enlace a nuestro campus de Newman y
este script, hemos obtenido la siguiente tabla de encaminamiento (esta
m�quina tambi�n es nuestro servidor general PPP y TAMBIEN maneja
nuestra conexi�n a Internet. He intercalado comentarios en la salida
para ayudar a explicar qu� es cada entrada) :-
______________________________________________________________________
[root@kepler /root]# route -n
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
# el camino de MAQUINA a nuestra pasarela remota a Internet
139.130.177.2 * 255.255.255.255 UH 1500 0 134 ppp4
# el camino de MAQUINA a nuestro servidor en el campus de Newman
202.12.126.1 * 255.255.255.255 UH 1500 0 82 ppp5
# el camino de MAQUINA a mi ethernet dom�stica
203.18.8.104 * 255.255.255.255 UH 1500 0 74 ppp3
# dos de nuestras l�neas generales de marcado PPP
203.18.8.64 * 255.255.255.255 UH 552 0 0 ppp2
203.18.8.62 * 255.255.255.255 UH 552 0 1 ppp1
# el camino espec�fico de red a la red local del campus de Newman
202.12.126.0 202.12.126.1 255.255.255.0 UG 1500 0 0 ppp5
# el camino a nuestra Ethernet local (metaconectar dos clases C adyacentes)
203.18.8.0 * 255.255.254.0 U 1500 0 1683 eth0
# el camino al dispositivo de bucle
127.0.0.0 * 255.0.0.0 U 3584 0 483 lo
# el camino por defecto a Internet
default 139.130.177.2 * UG 1500 0 3633 ppp4
______________________________________________________________________
2233..44.. MMaanneejjaannddoo ccoorrrreeoo
La secci�n anterior le muestra el modo de manejar el correo saliente -
simplemete enviando la cola de correo una vez que la conexi�n est�
establecida.
Si se encuentra ejecutando una conexi�n WAN, puede hacer que el
administrador de la red remota haga exactamente lo mismo. Por ejemplo,
en el extremo del Campus de Newman de nuestra conexi�n WAN, el script
/etc/ppp/ip-up ser�a como :-
______________________________________________________________________
#!/bin/bash
#
# Script que maneja las tablas de encaminamiento de la manera necesaria para
# pppd
# S�lo requiere esto la conexi�n con Hedland
#
# Cuando la conexi�n ppp se establece, se llama a este script con los
# siguientes par�metros
# $1 el nombre de interfaz utilizado por pppd (como ppp3)
# $2 el nombre de dispositivo tty
# $3 la velocidad del dispositivo tty
# $4 la direcci�n IP local para la interfaz
# $5 la direcci�n IP remota
# $6 el par�metro especificado para pppd en la opci�n 'ipparam'
#
case "$5" in
203.18.8.4)
/usr/sbin/sendmail -q
;;
*)
esac
exit 0
______________________________________________________________________
Si, sin embargo usted s�lo tiene un enlace PPP de IP din�mica,
necesitar� recoger el correo de su cuenta en la m�quina de su
proovedor. Esto suele realizarse utilizando POP (Protocolo de Oficina
de Correos). Este proceso puede manejarse utilizando el programa
'popclient' - y el script ip-up puede tambi�n automatizar este proceso
por usted.
Simplemente, cree un script /etc/ppp/ip-up que contenga la llamada
correcta a popclient. Para mi port�til, que ejecuta Red Hat Linux, el
script es
______________________________________________________________________
popclient -3 -c -u hartr -p <password> kepler.hedland.edu.au |formail -s procmail
______________________________________________________________________
Usted podr�a utilizar usar slurp u otro programa para hacer lo mismo
con las noticias, y as�. Recuerde, el script ip-up es s�lo un script
est�ndar bash y por lo tanto puede ser usado para automatizar
CUALQUIER funci�n que necesite ser realizada cada vez que se lleve a
cabo la conexi�n PPP.
2244.. UUttiilliizzaannddoo //eettcc//pppppp//iipp--ddoowwnn
Puede crear un script que sea ejecutado una vez que se ha terminado la
conexi�n. Este se almacena en /etc/ppp/ip-down. Puede ser utilizado
para deshacer cualquier cosa especial que usted pudiera hacer en el
script /etc/ppp/ip-up correspondiente.
2255.. EEnnccaammiinnaammiieennttoo eenn uunnaa rreedd llooccaall
Si est� conectado a una red pero todav�a desea utilizar PPP en su
m�quina personal Linux, necesita configurar algunos asuntos acerca del
encaminar paquetes. Esto es necesario para que su m�quina pueda
acceder a su red local (a trav�s de la interfaz Ethernet) y tambi�n al
servidor PPP y m�s all�.
Esta secci�n NO intenta ense�ar nada acerca de encaminamiento - s�lo
trata un caso especial y sencillo de encaminamiento est�tico.
Le recomiendo que lea la Gu�a del Administrador de Redes Linux (GARL)
si NO est� familiarizado con el encaminamiento. El libro de O'Reilly
"TCP/IP Network Administration" trata este tema de una manera muy
comprensible.
El norma b�sica del encaminamiento est�tico es que la ruta por defecto
deber�a ser la que apunta a la MAYORIA de las direcciones de red. Para
otras redes, introduzca rutas espec�ficas a la tabla de
encaminamiento.
La UNICA situaci�n que voy a tratar aqu� es en la que su PC Linux est�
en una red local que no est� conectada a Internet - y desea conectarse
v�a PPP a Internet para uso personal mientras permanece conectado a la
red local.
Antes de nada, aseg�rese de que su camino Ethernet est� configurado
para ser la direcci�n espec�fica de red a trav�s de su red local y NO
est� configurada para ser el camino por defecto.
Compruebe esto tecleando una orden route. Deber�a ver algo como lo
siguiente:-
[root@hwin /root]# route -n
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
loopback * 255.255.255.0 U 1936 0 50 lo
10.0.0.0 * 255.255.255.0 U 1436 0 565 eth0
Si su interfaz Ethernet (eth0) est� apuntada como camino por defecto
(la primera columna mostrar� "default" en la l�nea eth0) necesitar�
cambiar los scripts de inicializaci�n Ethernet para hacer que apunte a
n�meros espec�ficos de red (consulte el COMO Redes2 y GARL).
Esto le permitir� que pppd ajuste el camino por defecto como se aqu�
se muestra:-
[root@hwin /root]# route -n
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
10.144.153.51 * 255.255.255.255 UH 488 0 0 ppp0
127.0.0.0 * 255.255.255.0 U 1936 0 50 lo
10.1.0.0 * 255.255.255.0 U 1436 0 569 eth0
default 10.144.153.51 * UG 488 0 3 ppp0
Como puede ver, tenemos un camino de HOST al servidor PPP (
10.144.153.51) v�a ppp0 y tambi�n un camino de red por defecto que
utiliza el servidor PPP como pasarela.
Si su configuraci�n necesita ser m�s compleja que esto - lea los
documentos de encaminamiento ya mencionados y consulte a un experto.
Si su red local tiene encaminadores, ya tendr� pasarelas establecidas
hacia las redes m�s anchas disponibles. PERO deber�a tener apuntando
su camino por defecto a la interfaz PPP - y hacer que los otros
caminos sean espec�ficos de las redes a las que sirven.
2255..11.. NNoottaa aacceerrccaa ddee llaa SSeegguurriiddaadd
Cuando configura un ordenador Linux de una red existente para
conectarlo a Internet, est� potencialmente abriendo toda su red local
a Internet - y a los malos que residen aqu�. Antes de hacer esto, le
sugiero que consulte con el administrador de su red y la pol�tica de
seguridad de su empresa/universidad/sitio donde se encuentra. Si su
conexi�n PPP a Internet es utilizada para atacar con �xito su red
local, ser� el destino del odio de los usuarios de la red y de los
administradores de sistemas y de red. Tambi�n puede encontrarse con
un problema mucho m�s serio.
Antes de conectar una red local a Internet, deber�a considerar las
implicaciones de segurdad que tiene incluso una conexi�n DIN�MICA -
para ello sirva la referencia al "Building Internet Firewalls" de
O'Reilly.
2266.. CCoonnffiigguurraannddoo uunn sseerrvviiddoorr PPPPPP
Como se mencion� antes, hay muchas maneras de hacer esto. La que
presento es la manera de hacerlo con una tarjeta serie multipuerto
Cyclades y una centralita rotativa que proporciona un juego de l�neas
telef�nicas.
Si no le gusta el m�todo que presento aqu�, si�ntase libre de hacerlo
a su manera. Sin embargo, estar�a encantado de incluir m�todos
adicionales en versiones futuras de este documento. Por lo que env�eme
sus comentarios y m�todos.
F�jese en que esta secci�n s�lo concierne a configurar Linux como un
servidor PPP. No pretendo incluir informaci�n acerca de la
configuraci�n de servidores de terminales especiales.
Tambi�n, todav�a he de experimentar con contrase�as shadow (pero lo
har� dentro de poco). La informaci�n aqu� presentada NO incluye, por
lo tanto, ninguna de las campanas ni silbatos requeridos por el juego
de aplicaciones shadow.
2266..11.. CCoommppiillaaccii��nn ddeell NN��cclleeoo
Todos los comentarios anteriores acerca de la compilaci�n del n�cleo y
de las versiones pppd frente a las del n�cleo siguen siendo v�lidos.
Esta secci�n asume que usted ha leido tambi�n las otras secciones de
este documento.
Para un servidor PPP, DDEEBBEE incluir el soporte de autoenv�o IP
(forwarding) en su n�cleo. Tambi�n puede desear incluir otras
capacidades (tales como cortafuegos IP, cuentas, etc).
Si est� utilizando una tarjeta serie multipuerto, entoces deber�
incluir, obviamente, los controladores necesarios en su n�cleo.
2266..22.. VViissii��nn ggeenneerraall ddeell ssiisstteemmaa sseerrvviiddoorr
Se ofrecer� cuentas de acceso PPP (y SLIP) y cuentas de shell
utilizando el mismo par nombre/contrase�a. Esto tiene las ventajas
(para nosotros) de que el usuario s�lo necesita una cuenta y puede
utilizarla para todo tipo de conectividad.
como somos una organizaci�n educacional, no cobramos el acceso de
nuestra plantilla ni de los estudiantes, por lo que no tenemos que
preocuparnos de la tarificaci�n y de contadores.
Levantaremos un cortafuegos entre nuestra m�quina e Internet, y esto
restringir� el acceso a algunos usuarios debido a que las l�neas de
conexi�n se encuentran dentro del cortafuegos (por razones obvias, los
detalles de nuestros cortafuegos internos no se presentan aqu� y no
son relevantes en ning�n caso).
El proceso por el que un usuario pasa para establecer una conexi�n PPP
a nuestro servidor (una vez que tiene una cuenta v�lida, por supuesto)
es:-
� Conectarse con nuestra centralita rotatoria (esto es un n�mero
telef�nico �nico que est� conectado a un banco de m�dems. El primer
m�dem libre es el utilizado).
� Introducirse en el sistema mediante un par v�lido de nombre-
contrase�a.
� En la l�nea de �rdenes, ejecutar la orden ppp para arrancar PPP en
el servidor.
� Arrancar PPP en el PC de ellos (puede estar ejecutando Windows,
DOS, Linux, MAC OS o lo que sea - ese es su problema).
El servidor utiliza ficheros /etc/ppp/options.ttyXX individuales para
cada m�dem, cada uno con su propia direcci�n IP de manera que los
usuarios remotos consigan una direcci�n din�mica. El servidor utiliza
encaminamiento proxyarp para los clientes remotos (configurado
mediante la opci�n adecuada de pppd). Esto evita la necesidad de
routed o de gated.
Cuando el usuario cuelga por su parte, pppd lo detecta y dice al m�dem
que cuelgue, desconectando la conexi�n PPP a la vez.
2266..33.. CCoonnsseegguuiirr eell ttooddoo eell ssooffttwwaarree
Necesitar� el siguiente software:-
� Linux, compilado adecuadamente para incluir las opciones
necesarias.
� La versi�n apropiada de pppd para su n�cleo.
� Un programa 'getty' que maneje las comunicaciones del m�dem
inteligentemente.
Utilizamos getty_ps2.0.7h, pero mgetty es tami�n muy v�lido. Se que
mgetty puede detectar una llamada que utilice pap/chap (pap es el
est�ndar de Windows95) y llamar a pppd autom�ticamente, pero
todav�a tengo que investigar esto.
� Un servidor de nombres de dominio (DNS) que funcione y que sea
accesible para los usuarios que se conecten.
Deber�a estar ejecutando su propio DNS si es posible...
2266..44.. CCoonnffiigguurraarr eell aacccceessoo aa ccuueennttaass ppoorr vv��aa tteelleeff��nniiccaa
Antes de que pueda configurar su servidor PPP, su PC Linux debe ser
capaz de manejar accesos de conexi�n est�ndar.
EEssttee ddooccuummeennttoo NNOO ttrraattaa eessttaa ccoonnffiigguurraaccii��nn.. PPoorr ffaavvoorr,, lleeaa llaa
ddooccuummeennttaaccii��nn ddeell pprrooggrraammaa ggeettttyy ddee ssuu eelleeccccii��nn yy ddeell sseerriiaall HHOOWWTTOO
ppaarraa mm��ss iinnffoorrmmaaccii��nn aacceerrccaa ddee eessttoo..
2266..55.. CCoonnffiigguurraannddoo llooss ffiicchheerrooss ddee ooppcciioonneess PPPPPP
Necesitar� establecer un /etc/ppp/options general con las opciones
comunes para todos los puertos de conexi�n. Las opciones que
utilizamos son:-
______________________________________________________________________
asyncmap 0
netmask 255.255.254.0
proxyarp
lock
crtscts
modem
______________________________________________________________________
Nota - no utilizamos ning�n encaminamiento (obvio) y en particular no
hay ninguna opci�n defautroute. La raz�n de esto es que todo lo que
usted (como servidor PPP) debe hacer es encaminar paquetes ddeessddee el
cliente ppp a su red local/Internet y encaminar paquetes hhaacciiaa el
cliente desde la red local o m�s all�.
Todo lo necesario para esto es un un camino de m�quina a la m�quina
del cliente y el uso de la opci�n 'proxyarp' con pppd
La opci�n 'proxyarp' establece (sorpresa) una entrada proxy ARP en la
tabla ARP del servidor que b�sicamente dice 'env�enme todos los
paquetes destinados al cliente'. Esta es la manera m�s sencilla de
configurar el encaminamiento para un solo cliente PPP - pero usted no
puede utilizar esta opci�n si est� encaminando entre dos redes locales
- debe a�adir rutas adecuadas de red por lo que no puede utilizar
proxy ARP.
Casi seguro que desea dar una direcci�n IP din�mica a los usuarios de
su servicio de conexi�n. Puede conseguir esto fijando una direcci�n IP
a cada puerto de recepci�n de llamadas. Ahora, cree un
/etc/ppp/options.ttyXX para cada puerto de conexi�n.
En este, simplemente ponga la direcci�n IP del servidor local y la
direcci�n IP que debe ser utilizada para ese puerto. Por ejemplo
______________________________________________________________________
kepler:slip01
______________________________________________________________________
En concreto, f�jese en que usted puede utilizar nombres de m�quinas
v�lidos en este fichero (s�lo soy capaz de recordar las direcciones IP
de las m�quinas importantes y de los dispositivos de mis redes - los
nombres tienen m�s sentido).
2266..66.. CCoonnffiigguurraarr ppppppdd ppaarraa ppeerrmmiittiirr qquuee llooss uussuuaarriiooss ppuueeddaann eejjeeccuu��
ttaarrlloo
Ya que arrancar un enlace ppp implica la reconfiguraci�n de un
dispositivo del n�cleo (una interfaz de red) y la manipulaci�n de las
tablas de encaminamiento del n�cleo, se necesitan privilegios
especiales - de hecho se necesitan privilegios totales de root.
Afortunadamente, pppd ha sido dise�ado para ser 'seguro' mientras se
ejecuta como root. Necesitar�
______________________________________________________________________
chmod u+s /usr/sbin/pppd
______________________________________________________________________
Cuando pida un listado del fichero, debr�a aparecer como
______________________________________________________________________
~
-rwsr-xr-x 1 root root 74224 Apr 28 07:17 /usr/sbin/pppd
______________________________________________________________________
Si no lo hace, los usuarios no podr�n establecer su conexi�n ppp.
2266..77.. CCoonnffiigguurraannddoo eell aalliiaass gglloobbaall ppaarraa ppppppdd
Para simplificar las cosas a los usuarios de su servicio de conexi�n
PPP, crearemos un alias global (en /etc/bashrc) para que una orden
simple arranque ppp en el servidor una vez que se han conectado.
Esto debe ser como
______________________________________________________________________
alias ppp="exec /usr/sbin/pppd -detach"
______________________________________________________________________
Lo que hace es
� exec : quiere decir que reemplace el programa en ejecuci�n (en este
caso el shell) con el programa que est� ejecutando.
� pppd -detach : comienza pppd y no se parte en el segundo plano.
Esto asegura que cuando pppd salga no queden procesos colgando por
ah�.
Cuando un usuario se introduce en un sistema como este, aparecer� en
la salida de 'w':-
______________________________________________________________________
6:24pm up 3 days, 7:00, 4 users, load average: 0.05, 0.03, 0.00
User tty login@ idle JCPU PCPU what
hartr ttyC0 3:05am 9:14 -
______________________________________________________________________
Y ya est�... Ya le coment� que este era un sistema servidor PPP
b�sico.
2277.. UUttiilliizzaarr PPPPPP aa ttrraavv��ss ddee uunnaa ccoonneexxii��nn mm��ddeemm nnuulloo ((sseerriiee ddiirreeccttaa))
Esto es muy simple - no hay m�dem por ah� por lo que las cosas son
mucho m�s sencillas.
Primero, escoja una de las m�quinas como servidor, estableciendo un
getty en el puerto serie de manera que pueda probar que tiene
conectividad al utilizar minicom para acceder al puerto serie del
cliente.
Una vez que tenga esto funcionando, puede eliminar el getty A MENOS
que desee asegurarse de que la conexi�n se valida utilizando el par
nombre/contrase�a para una conexi�n por marcado. Ya que tiene control
f�sico de ambas m�quinas, presumir� de que NO desea hacer esto.
Ahora, en el servidor, elimine getty y aseg�rese de que tiene puertos
serie en ambas m�quinas configurados correctamente utilizando
"setseral".
Todo lo que necesita saber es ejecutar pppd en ambos sistemas. Asumir�
que la conexi�n utiliza /dev/ttyS3 en ambas m�quinas. Por lo tanto, en
ambas m�quinas ejecutar� la orden:-
______________________________________________________________________
pppd -detach crtscts lock <local IP>:<remote IP> /dev/ttyS3 38400 &
______________________________________________________________________
Esto crear� la conexi�n - pero todav�a no habr� especificado ning�n
encaminamiento. Puede probar a hacer un ping a y desde cada m�quina.
Si esto funciona, corte la conexi�n matando uno de los dos procesos
pppd.
El encaminamiento que necesita depender� de qu� es lo que est�
intentando hacer exactamente. Generalmente, una de las m�quinas se
conectar� a una Ethernet (y m�s alla), y por lo tanto, el
encaminamiento requerido es, exactamente, el mismo para el servidor
PPP que para el cliente.
Por lo que en la m�quina equipada con Ethernet, la orden pppd ser�a
______________________________________________________________________
pppd -detach crtscts lock proxyarp <local IP>:<remote IP> /dev/ttyS3 38400 &
______________________________________________________________________
y en la otra m�quina
______________________________________________________________________
pppd -detach crtscts lock defaultroute <local IP>:<remote IP> /dev/ttyS3
38400 &
______________________________________________________________________
Si est� enlazando dos redes (utilizando una conexi�n serie) o tiene
unas necesidades de encaminamiento m�s complejas, puede utilizar
/etc/ppp/ip-up ex�ctamente de la misma manera que se mencion� en este
documento.
RRoobbeerrtt HHaarrtt
Port Hedland, Australia Occidental
Melbourne, Victoria, Australia Agosto/Octubre 1996 Enero/Marzo 1997
Traducci�n: DDaavviidd MMaarr��nn CCaarrrree��oo
Madrid, Espa�a Febrero 1999