Ejecutar un descargador por SSH y ejecutar un descargador local a través de un proxy remoto colocan la descarga en lugares distintos:

Disposición¿Quién obtiene el sitio web?Dónde se escribe el archivo
Descargador local a través de un proxy remotoEl cliente HTTP local posee la solicitud; el proxy la transportaLa ruta de salida del descargador local
Descargador lanzado por SSHUn programa en la máquina remotaSu ruta remota, salvo que los datos se traigan de vuelta explícitamente

Con una cuenta SSH autorizada y curl instalado en remoto, puede traer el artefacto de vuelta por la salida estándar:

ssh -T [email protected] 'curl --fail --silent --show-error https://downloads.example/file.bin' > file.part

Sustituya la cuenta y la URL del ejemplo. La redirección está fuera del comando remoto entre comillas, así que el shell local abre file.part. Si la coloca dentro del comando remoto, la ruta pertenece al entorno remoto.

Use una ruta temporal nueva: el shell local puede crear o truncar ese archivo antes de que la operación remota tenga éxito. Compruebe el resultado de salida de SSH y el artefacto antes de darle su nombre definitivo.

La salida estándar solo debe contener los bytes del artefacto. Los saludos, los mensajes de progreso o los mensajes de envoltura pueden corromperla; los diagnósticos pertenecen al error estándar. Un comando remoto que guarda con su propio nombre de archivo puede no devolver ningún byte. Conserve el resultado de salida del descargador a través de cualquier envoltura.

También puede guardar en remoto y transferir el archivo con SFTP. Si SSH ya usa un asistente de proxy, reutilice esa entrada de host SSH para la transferencia. Si el objetivo es un flujo de trabajo con proxy local, mantenga el descargador en local y configure su interfaz de proxy compatible.

En cualquier caso, un archivo que debe llegar a su portátil todavía tiene que cruzar su conexión de red. La elección cambia la conexión de cara al sitio web y el proceso que realiza la descarga.

Artículos relacionados