Usando o ssh, é fácil imprimir o conteúdo de um arquivo usando
ssh host 'cat file.txt'
Quando o ssh está desativado e apenas o SFTP está ativado, a execução do comando anterior gera o seguinte erro:
Este serviço permite apenas conexões sftp.
Para contornar esse problema, eu poderia criar um arquivo temporário usando scp
or sshfs
(como mostrado abaixo), mas isso parece muito feio. Qual é a maneira correta de imprimir o conteúdo de um arquivo remoto quando o SSH está desativado?
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
sinalizador (--insecure
).Para pessoas que podem executar
scp
, você pode fazer o seguinte:fonte
sftp username@hostname:/path/to/file.txt /dev/stdout
e resulta em "Não foi possível gravar em" / dev / stdout ": busca ilegal". O segundo comando falha e mostra o erro que é mostrado na parte inferior da minha pergunta.ssh -V
dáOpenSSH_6.6.1p1, OpenSSL 1.0.1h 5 Jun 2014
. O scp falha porque usa o ssh sob o capô, e o ssh está desativado (como medida de segurança, consulte, por exemplo, serverfault.com/questions/354615/allow-sftp-but-disallow-ssh )