{"id":401,"date":"2011-01-25T21:20:27","date_gmt":"2011-01-26T02:20:27","guid":{"rendered":"https:\/\/rafael.bonifaz.ec\/blog\/?p=401"},"modified":"2011-01-25T21:20:27","modified_gmt":"2011-01-26T02:20:27","slug":"copiar-archivos-con-scp-ssh","status":"publish","type":"post","link":"https:\/\/rafael.bonifaz.ec\/blog\/2011\/01\/copiar-archivos-con-scp-ssh\/","title":{"rendered":"Copiar archivos con SCP (SSH)"},"content":{"rendered":"<p>Para muchos esto no sea ning\u00fan tip, sino el d\u00eda a d\u00eda. Sin embargo, me he topado con muchos administradores de sistema no conocen un comando tan b\u00e1sico como scp. Adem\u00e1s, seguro que muchos no saben que se puede controlar el ancho de banda mientras se copia un archivo. \u00datil para cuando copiamos archivos muy grandes al Internet pudiendo saturar nuestra conexi\u00f3n.<\/p>\n<p>El comando SCP b\u00e1sicamente sirve para copiar archivos de un computador a otro, de manera encriptada, a trav\u00e9s del protocolo SSH. Funciona de manera muy similar a como funciona el comando cp, donde tenemos un origen y un destino. La diferencia es que el origen o el destino van a ser computadores diferentes.<\/p>\n<h2>Ejemplo 1: Origen local, destino remoto<\/h2>\n<p style=\"padding-left: 30px;\"><code>scp archivo.tar.gz usuario@servidorremoto.com:<\/code><\/p>\n<p><!--more-->En este caso el origen es un archivo local de la computadora donde estoy trabajando y el destino es el servidor remoto. El \u00ab:\u00bb al final del nombre del servidor quiere decir que vamos a copiar el archivo en el directorio home del usuario que realiza la copia. Despu\u00e9s del : podr\u00edamos poner una ruta relativa al home del usuario o una ruta absoluta. Por ejemplo, si quisiera copiar en la ruta \/home\/usuario\/directoriox<\/p>\n<h3>Rutas relativas:<\/h3>\n<p style=\"padding-left: 30px;\"><code>scp arhivo.tar.gz usuario@servidorremoto.com:directoriox<\/code><\/p>\n<h3>Rutas absolutas:<\/h3>\n<p style=\"padding-left: 30px;\"><code>scp arhivo.tar.gz usuario@servidorremoto.com:\/home\/usuario\/directoriox<\/code><\/p>\n<p>En este caso es m\u00e1s comodo usar la ruta relativa, pero no siempre ser\u00e1 este el caso.<\/p>\n<h2>Ejemplo 2: Origen remoto, destino local<\/h2>\n<p style=\"padding-left: 30px;\"><code>scp usuario@servidorremoto.com:arhivo.zip . <\/code><\/p>\n<p>En este caso copiamos el archivo remoto archivo.zip (ubicado en el home del usuario) A la carpeta actual donde me encuentro en mi m\u00e1quina local.<br \/>\nTanto para el ejemplo 1, como para el 2 si quisieramos copiar un directorio, lo har\u00edamos con la opci\u00f3n \u00ab-r\u00bb. En general las opciones de <em>scp<\/em> son las mismas que las del comando <em>cp<\/em><\/p>\n<h2>Ejemplo 3: Puerto alternativo<\/h2>\n<p>Muchas personas no corren ssh en el puerto 22, en un post anterior expliqu\u00e9 como hacer para <a href=\"http:\/\/bonifaz.ec\/ssh443\">correr ssh en el puerto 443<\/a> en conjunto con https. Pues bien, ahora hagamos un ejemplo de copia de scp utilizando el puerto 443.<\/p>\n<p style=\"padding-left: 30px;\"><code>scp -P 443 -r \/ruta\/directorio usuario@servidorremoto.com:\/ruta\/deestino<br \/>\n<\/code><\/p>\n<p><code>En este caso copiamos todo un directorio y lo hacemos por el puerto no estadard 443.<\/code><\/p>\n<h2>Ejemplo 4: Limitar Ancho de Banda<\/h2>\n<p>Esta opci\u00f3n no la sabe mucha gente y en\u00a0ocasiones\u00a0puede ser muy \u00fatil. Que tal si queremos copiar un archivo muy grande desde o hacia Internet. Es muy probable que eso genere mucho tr\u00e1fico que haga insoportable el uso del Internet para el resto de personas en la red, incluido quien esta subiendo el archivo. Por suerte, parece ser que los desarrolladores de Openssh han pensado en todo \ud83d\ude42 y se puede limitar el ancho de banda de la transeferencia. Para esto usamos la opci\u00f3n \u00ab-l\u00bb seguido por el ancho de banda a limitar en kbits\/segundo. (8 kbit\/segundo = 1 kbyte\/segundo)<\/p>\n<p style=\"padding-left: 30px;\"><code>scp -l 80 archivgrande.tar.gz usuario@servidorremoto.com:<\/code><\/p>\n<p>De esta manera limitaremos la copia a 80 kbits\/seg (10 kbytes\/segundo).<\/p>\n<h3 class='related_post_title'>Art\u00edculos relacionados<\/h3><ul class='related_post'><li><a href=\"https:\/\/rafael.bonifaz.ec\/blog\/2011\/02\/tips-ssh\/\" title=\"11 + 1 Tips SSH\">11 + 1 Tips SSH<\/a><\/li><li><a href=\"https:\/\/rafael.bonifaz.ec\/blog\/2011\/02\/proteger-ssh-con-fail2ban\/\" title=\"Proteger SSH con Fail2Ban\">Proteger SSH con Fail2Ban<\/a><\/li><li><a href=\"https:\/\/rafael.bonifaz.ec\/blog\/2011\/02\/sincronizar-yo-respaldar-directorios-con-ssh-y-rsync\/\" title=\"Sincronizar y\/o Respaldar directorios con SSH y RSYNC\">Sincronizar y\/o Respaldar directorios con SSH y RSYNC<\/a><\/li><\/ul>","protected":false},"excerpt":{"rendered":"<p>Para muchos esto no sea ning\u00fan tip, sino el d\u00eda a d\u00eda. Sin embargo, me he topado con muchos administradores de sistema no conocen un comando tan b\u00e1sico como scp. Adem\u00e1s, seguro que muchos no saben que se puede controlar el ancho de banda mientras se copia un archivo. \u00datil para cuando copiamos archivos muy [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[70,1,3],"tags":[178,83,84],"class_list":["post-401","post","type-post","status-publish","format-standard","hentry","category-comos","category-general","category-software-libre","tag-comos","tag-ssh","tag-tips"],"_links":{"self":[{"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/posts\/401","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/comments?post=401"}],"version-history":[{"count":3,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/posts\/401\/revisions"}],"predecessor-version":[{"id":404,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/posts\/401\/revisions\/404"}],"wp:attachment":[{"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/media?parent=401"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/categories?post=401"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rafael.bonifaz.ec\/blog\/wp-json\/wp\/v2\/tags?post=401"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}