Usando ssh, es fácil imprimir el contenido de un archivo usando
ssh host 'cat file.txt'
Cuando ssh está deshabilitado y solo SFTP está habilitado, la ejecución del comando anterior da el siguiente error:
Este servicio solo permite conexiones sftp.
Para solucionar este problema, podría crear un archivo temporal usando scp
o sshfs
(como se muestra a continuación), pero eso se ve realmente feo. ¿Cuál es la forma correcta de imprimir el contenido de un archivo remoto cuando SSH está desactivado?
mkdir tmpdir
sshfs host: tmpdir
cat tmpdir/file.txt
fusermount -u tmpdir
# This does not work! scp -v host:file.txt . shows
# "Sink: This service allows sftp connections only."
scp host:file.txt .
cat file.txt
rm file.txt
-k
bandera (--insecure
).Para las personas que pueden correr
scp
, puedes hacer esto:fuente
sftp username@hostname:/path/to/file.txt /dev/stdout
y da como resultado "No se pudo escribir en" / dev / stdout ": búsqueda ilegal". El segundo comando falla y muestra el error que se muestra al final de mi pregunta.ssh -V
daOpenSSH_6.6.1p1, OpenSSL 1.0.1h 5 Jun 2014
. scp falla porque usa ssh debajo del capó, y ssh está deshabilitado (como medida de seguridad, consulte, por ejemplo, serverfault.com/questions/354615/allow-sftp-but-disallow-ssh )