comparison es/collab.tex @ 527:35370f1551a7

finished ssh part translation
author Igor TAmara <igor@tamarapatino.org>
date Sat, 29 Nov 2008 02:55:59 -0500
parents 4a1dc5e8e2ff
children e5c5918e8230
comparison
equal deleted inserted replaced
526:4a1dc5e8e2ff 527:35370f1551a7
433 \filename{.pub}. Si usa \command{puttygen} en Windows, puede 433 \filename{.pub}. Si usa \command{puttygen} en Windows, puede
434 guardar la llave pública en un fichero de su elección, o pegarla desde 434 guardar la llave pública en un fichero de su elección, o pegarla desde
435 la ventana en la cual se despliega directamente en el fichero 435 la ventana en la cual se despliega directamente en el fichero
436 \sfilename{authorized\_keys}. 436 \sfilename{authorized\_keys}.
437 437
438 \subsection{Using an authentication agent} 438 \subsection{Uso de un agente de autenticación}
439 439
440 An authentication agent is a daemon that stores passphrases in memory 440 Un agente de autentitcación es un daemonio que almacena frases clave en
441 (so it will forget passphrases if you log out and log back in again). 441 memoria(olvidará las frases clave si sale y vuelve a entrar). Un cliente
442 An ssh client will notice if it's running, and query it for a 442 ssh notará si está corriendo, y solicitará una frase clave. Si no hay
443 passphrase. If there's no authentication agent running, or the agent 443 un agente de autenticación corriendo, o el agente no almacena la frase
444 doesn't store the necessary passphrase, you'll have to type your 444 clave necesaria, tendrá que teclear su frase clave cada vez que
445 passphrase every time Mercurial tries to communicate with a server on 445 Mercurial intente comunicarse con un servidor para usted(p.e.~cada vez
446 your behalf (e.g.~whenever you pull or push changes). 446 que jale o publique cambios).
447 447
448 The downside of storing passphrases in an agent is that it's possible 448 El problema de almacenar frases claves en un agente es que es posible
449 for a well-prepared attacker to recover the plain text of your 449 para un atacante bien preparado recuperar el texto plano de su frase
450 passphrases, in some cases even if your system has been power-cycled. 450 clave, en alguntos casos incluso si su sistema sea muy alternante.
451 You should make your own judgment as to whether this is an acceptable 451 Es su decisión si es un riesgo aceptable. Lo que si es seguro es que
452 risk. It certainly saves a lot of repeated typing. 452 evita reteclear.
453 453
454 On Unix-like systems, the agent is called \command{ssh-agent}, and 454 En sistemas tipo Unix, el agente se llama \command{ssh-agent}, y
455 it's often run automatically for you when you log in. You'll need to 455 usualmente se ejecuta automáticamente cuando usted entra. Tendrá que
456 use the \command{ssh-add} command to add passphrases to the agent's 456 usar la orden \command{ssh-add} para añadir frases claves al agente. En
457 store. On Windows, if you're using PuTTY, the \command{pageant} 457 Windows, si está usando PuTTY, la orden \command{pageant} actúa como
458 command acts as the agent. It adds an icon to your system tray that 458 el agente. Añade un ícono a su barra del sistema que le permitirá
459 will let you manage stored passphrases. 459 almacenar frases clave.
460 460
461 \subsection{Configuring the server side properly} 461 \subsection{Configurar el lado del servidor apropiadamente}
462 462
463 Because ssh can be fiddly to set up if you're new to it, there's a 463 Dado que puede ser dispendioso configurar ssh si usted es nuevo, hay
464 variety of things that can go wrong. Add Mercurial on top, and 464 una variedad de cosas que podrían ir mal. Añada piense primero en
465 there's plenty more scope for head-scratching. Most of these 465 Mercurial y hay mucho más en qué pensar. La mayor parte de estos
466 potential problems occur on the server side, not the client side. The 466 problemas potenciales occuren en el lado del servidor, no en el cliente.
467 good news is that once you've gotten a configuration working, it will 467 Las buenas noticias es que una vez tiene una configuración funcional,
468 usually continue to work indefinitely. 468 usualmente continuará trabajando indefinidamente.
469 469
470 Before you try using Mercurial to talk to an ssh server, it's best to 470 Antes de intentar que Mercurial hable con un servidor ssh, es mejor
471 make sure that you can use the normal \command{ssh} or \command{putty} 471 asegurarse que puede usar la orden normal \command{ssh} o \command{putty}
472 command to talk to the server first. If you run into problems with 472 para comunicarse con el servidor primero. Si tiene problemas usando
473 using these commands directly, Mercurial surely won't work. Worse, it 473 estas órdenes directamente, de seguro Mercurial no funcionará. Pero aún,
474 will obscure the underlying problem. Any time you want to debug 474 esconderá el problema subyacente. Cuando desee revisar un problema
475 ssh-related Mercurial problems, you should drop back to making sure 475 relacionado con ssh y Mercurial, debería asegurarse primero que las
476 that plain ssh client commands work first, \emph{before} you worry 476 órdenes de ssh en el lado del cliente funcionan primero, \emph{antes}
477 about whether there's a problem with Mercurial. 477 de preocuparse por si existe un problema con Mercurial.
478 478
479 The first thing to be sure of on the server side is that you can 479 Lo primero para asegurar en el lado del servidor es que puede entrar
480 actually log in from another machine at all. If you can't use 480 desde otra máquina. Si no puede entrar con \command{ssh} o
481 \command{ssh} or \command{putty} to log in, the error message you get 481 \command{putty}, el mensaje de error que obtenga le puede dar pistas
482 may give you a few hints as to what's wrong. The most common problems 482 de qué ha ido mal. Los problemas más comunes son los siguientes:
483 are as follows.
484 \begin{itemize} 483 \begin{itemize}
485 \item If you get a ``connection refused'' error, either there isn't an 484 \item Si obitene un error de ``conexión rehusada'', es posible que no
486 SSH daemon running on the server at all, or it's inaccessible due to 485 haya un daemonio SSH corriendo en el servidor o que no pueda accederse
487 firewall configuration. 486 a él por configuraciones de cortafuegos.
488 \item If you get a ``no route to host'' error, you either have an 487 \item Si obtiene un error de ``no hay ruta hasta el servidor'', puede
489 incorrect address for the server or a seriously locked down firewall 488 tener la dirección del servidor incorrecta o un cortafuegos con
490 that won't admit its existence at all. 489 bloqueo agresivo que no permitirá su existencia.
491 \item If you get a ``permission denied'' error, you may have mistyped 490 \item Si obtiene un mensaje de ``permiso denegado'', puede que haya
492 the username on the server, or you could have mistyped your key's 491 tecleado mal el usuario en el servidor, o que haya tecleado
493 passphrase or the remote user's password. 492 incorrectamente la frase clave o la clave del usuario remoto.
494 \end{itemize} 493 \end{itemize}
495 In summary, if you're having trouble talking to the server's ssh 494 En resumen, si tiene problemas al comunicarse con el daemonio ssh del
496 daemon, first make sure that one is running at all. On many systems 495 servidor, primero asegúrese de que está corriendo. En muchos sistemas
497 it will be installed, but disabled, by default. Once you're done with 496 estará instalado, pero deshabilitado de forma predeterminada. Una vez
498 this step, you should then check that the server's firewall is 497 que haya hecho este paso tendrá que revisar si el cortafuegos del
499 configured to allow incoming connections on the port the ssh daemon is 498 servidor está configurado para recibir conexiones entrantes en el
500 listening on (usually~22). Don't worry about more exotic 499 puerto en el cual el daemonio de ssh está escuchando(usualmente el~22).
501 possibilities for misconfiguration until you've checked these two 500 No trate de buscar otras posibilidades exóticas o configuraciones
502 first. 501 erradas haste que haya revisado primero estas dos.
503 502
504 If you're using an authentication agent on the client side to store 503 Si está usando un agente de autenticación en el lado del cliente para
505 passphrases for your keys, you ought to be able to log into the server 504 almacenar las frase claves de sus contraseñas, debería poder entrar al
506 without being prompted for a passphrase or a password. If you're 505 servidor sin necesidad de que se le solicite frases claves o
507 prompted for a passphrase, there are a few possible culprits. 506 contraseñas. Si se le pregunta alguna, a continuación algunas
507 posibilidades:
508 \begin{itemize} 508 \begin{itemize}
509 \item You might have forgotten to use \command{ssh-add} or 509 \item Puede haber olvidado usar \command{ssh-add} o
510 \command{pageant} to store the passphrase. 510 \command{pageant} para guardar la frase clave.
511 \item You might have stored the passphrase for the wrong key. 511 \item Puede haber almacenado una frase clave errónea para la llave.
512 \end{itemize} 512 \end{itemize}
513 If you're being prompted for the remote user's password, there are 513 Si se le solicita la clave del usuario remoto, hay otras posibilidades
514 another few possible problems to check. 514 que deben revisarse:
515 \begin{itemize} 515 \begin{itemize}
516 \item Either the user's home directory or their \sdirname{.ssh} 516 \item O bien el directorio del usuario o su directorio \sdirname{.ssh}
517 directory might have excessively liberal permissions. As a result, 517 tiene permisos excesivamente abiertos. Como resultado el daemonio
518 the ssh daemon will not trust or read their 518 ssh no creerá o leerá su fichero \sfilename{authorized\_keys}.
519 \sfilename{authorized\_keys} file. For example, a group-writable 519 Por ejemplo, un directorio casa o \sdirname{.ssh} causará aveces
520 home or \sdirname{.ssh} directory will often cause this symptom. 520 este síntoma.
521 \item The user's \sfilename{authorized\_keys} file may have a problem. 521 \item El fichero de usuario \sfilename{authorized\_keys} puede tener
522 If anyone other than the user owns or can write to that file, the 522 un problema. Si alguien distinto al usuario es dueño o puede
523 ssh daemon will not trust or read it. 523 escribir el archivo, el daemonio ssh no confiará o lo leerá.
524 \end{itemize} 524 \end{itemize}
525 525
526 In the ideal world, you should be able to run the following command 526 En un mundo ideal, debería poder ejecutar la siguiente orden
527 successfully, and it should print exactly one line of output, the 527 exitósamente, y debería imprimir exactamente una línea de salida,
528 current date and time. 528 la fecha y hora actual.
529 \begin{codesample2} 529 \begin{codesample2}
530 ssh myserver date 530 ssh miservidor fecha
531 \end{codesample2} 531 \end{codesample2}
532 532
533 If, on your server, you have login scripts that print banners or other 533 Si en su servidor tiene guión que se ejecuta a la entrada e imprimie
534 junk even when running non-interactive commands like this, you should 534 letreros o cualquier otra cosa, incluso cuando se ejecutan órdenes no
535 fix them before you continue, so that they only print output if 535 interactivas como esta, debería arreglarlo antes de continuar, de
536 they're run interactively. Otherwise these banners will at least 536 forma que solamente imprima algo si se ejecuta interactivamente. De
537 clutter up Mercurial's output. Worse, they could potentially cause 537 otra forma estos letreros al menos llenarán la salida de Mercurial.
538 problems with running Mercurial commands remotely. Mercurial makes 538 incluso podrían causar problemas potenciales cuando se ejecuten
539 tries to detect and ignore banners in non-interactive \command{ssh} 539 órdenes de forma remota. Mercurial intenta detectar e ignorar los
540 sessions, but it is not foolproof. (If you're editing your login 540 letreros en sesiones no interactivas de \command{ssh}, pero no es
541 scripts on your server, the usual way to see if a login script is 541 a prueba de tontos. (Si edita sus guiones de entrada en el servidor,
542 running in an interactive shell is to check the return code from the 542 la forma usual de ver si un guión de script se ejecuta en un shell
543 command \Verb|tty -s|.) 543 interactivo, es verificar el código de retorno de la orden
544 544 \Verb|tty -s|.)
545 Once you've verified that plain old ssh is working with your server, 545
546 the next step is to ensure that Mercurial runs on the server. The 546 Cuando verifique que el venerado ssh funciona en su servidor, el
547 following command should run successfully: 547 paso siguiente es asegurar que Mercurial corre en el servidor. La
548 \begin{codesample2} 548 orden siguiente debería ejecutarse satisfactoriamente:
549 ssh myserver hg version 549 \begin{codesample2}
550 \end{codesample2} 550 ssh miservidor hg version
551 If you see an error message instead of normal \hgcmd{version} output, 551 \end{codesample2}
552 this is usually because you haven't installed Mercurial to 552 Si ve un mensaje de error en lugar de la salida usual de
553 \dirname{/usr/bin}. Don't worry if this is the case; you don't need 553 \hgcmd{version}, será porque no ha instalado Mercurial en
554 to do that. But you should check for a few possible problems. 554 \dirname{/usr/bin}. No se preocupe si este es el caso; no necesita
555 hacerlo. Pero debería revisar los posibles problemas presentados a
556 continuación:
555 \begin{itemize} 557 \begin{itemize}
556 \item Is Mercurial really installed on the server at all? I know this 558 \item Está instalado Mercurial en el servidor? Se que suena trivial
557 sounds trivial, but it's worth checking! 559 pero es mejor revisar!
558 \item Maybe your shell's search path (usually set via the \envar{PATH} 560 \item Tal vez la ruta de búsqueda de la interfaz de órdenes
559 environment variable) is simply misconfigured. 561 (normalmente vía la variable de ambiente \envar{PATH}) simplemente
560 \item Perhaps your \envar{PATH} environment variable is only being set 562 está mal configurada.
561 to point to the location of the \command{hg} executable if the login 563 \item Puede ser que su variable de ambiente \envar{PATH} soalamente
562 session is interactive. This can happen if you're setting the path 564 apunte al lugar en el cual está el ejecutable \command{hg} si la
563 in the wrong shell login script. See your shell's documentation for 565 sesión de entrada es interactiva. Puede suceder si establece la
564 details. 566 ruta en el guión de shell de entrada incorrecto. Consulte la
565 \item The \envar{PYTHONPATH} environment variable may need to contain 567 documentación de su línea de órdenes.
566 the path to the Mercurial Python modules. It might not be set at 568 \item La variable de ambiente \envar{PYTHONPATH} puede requerir la
567 all; it could be incorrect; or it may be set only if the login is 569 ruta a los módulos de Mercurial en Python. Puede que nisiquiera
568 interactive. 570 está establecida; podría estar incorrecta; o puede ser que se
571 establezca únicamente cuando hay entradas interactivas.
569 \end{itemize} 572 \end{itemize}
570 573
571 If you can run \hgcmd{version} over an ssh connection, well done! 574 Si puede ejecutar \hgcmd{version} sobre una conexión ssh,
572 You've got the server and client sorted out. You should now be able 575 felicitaciones! Ha logrado la interacción entre el cliente y el
573 to use Mercurial to access repositories hosted by that username on 576 servidor. Ahora debería poder acceder a los repositorios de
574 that server. If you run into problems with Mercurial and ssh at this 577 Mercurial que tiene el usuario en el servidor. Si tiene problemas
575 point, try using the \hggopt{--debug} option to get a clearer picture 578 con Mercurial y ssh en este punto, intente usar la opción
576 of what's going on. 579 \hggopt{--debug} para tener información más clara de lo que está
577 580 sucediendo.
578 \subsection{Using compression with ssh} 581
579 582 \subsection{Compresión con ssh}
580 Mercurial does not compress data when it uses the ssh protocol, 583
581 because the ssh protocol can transparently compress data. However, 584 Mercurial no comprime datos cuando usa el protocolo ssh, dado que
582 the default behaviour of ssh clients is \emph{not} to request 585 el protocolo puede comprimir datos transparentemente. Pero el
583 compression. 586 comportamiento predeterminado del cliente ssh es \emph{no}
584 587 solicitar compresión.
585 Over any network other than a fast LAN (even a wireless network), 588
586 using compression is likely to significantly speed up Mercurial's 589 Sobre cualquier red distinta a una LAN rápida(incluso con una red
587 network operations. For example, over a WAN, someone measured 590 inalámbrica), hacer uso de compresión puede mejorar el rendimiento
588 compression as reducing the amount of time required to clone a 591 de las operaciones de Mercurial que involucren la red. Por ejemplo,
589 particularly large repository from~51 minutes to~17 minutes. 592 sobre WAN, alguien ha medido la compresión reduciendo la cantidad
590 593 de tiempo requerido para clonar un repositorio particularmente
591 Both \command{ssh} and \command{plink} accept a \cmdopt{ssh}{-C} 594 grande de~51 minutos a~17 minutos.
592 option which turns on compression. You can easily edit your \hgrc\ to 595
593 enable compression for all of Mercurial's uses of the ssh protocol. 596 Tanto \command{ssh} como \command{plink} aceptan la opción
597 \cmdopt{ssh}{-C} que activa la compresión. Puede editar fácilmente
598 su \hgrc\ para habilitar la compresión para todos los usos de
599 Mercurial sobre el protocolo ssh.
594 \begin{codesample2} 600 \begin{codesample2}
595 [ui] 601 [ui]
596 ssh = ssh -C 602 ssh = ssh -C
597 \end{codesample2} 603 \end{codesample2}
598 604
599 If you use \command{ssh}, you can configure it to always use 605 Si usa \command{ssh}, puede reconfigurarlo para que siempre use
600 compression when talking to your server. To do this, edit your 606 compresión cuando se comunique con su servidor. Para hacerlo,
601 \sfilename{.ssh/config} file (which may not yet exist), as follows. 607 edite su fichero \sfilename{.ssh/config}(que puede no existir
608 aún), de la siguiente forma:
602 \begin{codesample2} 609 \begin{codesample2}
603 Host hg 610 Host hg
604 Compression yes 611 Compression yes
605 HostName hg.example.com 612 HostName hg.ejemplo.com
606 \end{codesample2} 613 \end{codesample2}
607 This defines an alias, \texttt{hg}. When you use it on the 614 Que define un alias, \texttt{hg}. Cuando lo usa con la orden
608 \command{ssh} command line or in a Mercurial \texttt{ssh}-protocol 615 \command{ssh} o con una URL de Mercurial con protocolo\texttt{ssh},
609 URL, it will cause \command{ssh} to connect to \texttt{hg.example.com} 616 logrará que \command{ssh} se conecte a \texttt{hg.ejemplo.com}
610 and use compression. This gives you both a shorter name to type and 617 con compresión. Que le dará un nombre más corto para teclear y
611 compression, each of which is a good thing in its own right. 618 compresión, los cuales por derecho propio son buenos.
612 619
613 \section{Serving over HTTP using CGI} 620 \section{Serving over HTTP using CGI}
614 \label{sec:collab:cgi} 621 \label{sec:collab:cgi}
615 622
616 Depending on how ambitious you are, configuring Mercurial's CGI 623 Depending on how ambitious you are, configuring Mercurial's CGI