"원격 호스트 연결이 끊어졌습니다"를 제공하는 sshfs


14

오류가 발생하는 다음 명령을 sftp사용하여 폴더에 연결 을 마운트하려고합니다 sshfs.

~$ sshfs admin@example.com:/ testfo
remote host has disconnected

시스템에 SSH를 연결하고로 명령을 반복하면 동일한 오류가 발생합니다 localhost. 이 명령은 다른 시스템에서도 작동하므로 문제가 서버에 있습니다.

~$ cat /var/log/auth.log

[...]

May 24 22:49:43 example sshd[20095]: Accepted publickey for admin from 24.111.222.33 port 47086 ssh2: RSA ad:xx:6e:xx:14:xx:bd:b5:xx:cb:66:xx:xx:xx:a3:ac
May 24 22:49:43 example sshd[20095]: pam_unix(sshd:session): session opened for user admin by (uid=0)
May 24 22:49:43 example systemd-logind[812]: Removed session 60.
May 24 22:49:43 example systemd-logind[812]: New session 61 of user admin.
May 24 22:49:44 example sshd[20143]: Received disconnect from 24.203.164.45: 11: disconnected by admin
May 24 22:49:44 example sshd[20095]: pam_unix(sshd:session): session closed for user admin

~/.ssh디렉토리는 그와 유사한 문제에 대한 디버깅 시도로 I 톱 이후 관리자에 의해 소유하고 있습니다.

나중에 참조 할 수있는 추가 정보 :

문제는 없습니다 만 SFTP와 SSH를 자체. 이것은 SSH 연결이 올바르게 작동하지만 SFTP가 항상 실패한다는 사실에 의해 나타납니다. SFTP를 시도하면Received unexpected end-of-file from SFTP server

이 문제는 로그인 스크립트 출력 문자열 (예 :)과 관련 이 없습니다~/.bashrc .

이 문제는 모든 사용자 (루트 포함)에서 발생합니다.

내 sshd 구성 ( /etc/ssh/sshd_config) 은 다음과 같습니다 .

# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 1024

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp sftp-server

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

sftp-server패키지가 설치되었습니다. ( sudo apt-get install openssh-sftp-server)


1) sftp직접 갈 수 있습니까? ~/.bashrc서버의 홈 디렉토리에있는 다른 시작 파일 의 내용은 무엇입니까 ?
Jakuje

@Jakuje Hmm .. 문제는 실제로 sftp에서 발생하는 것으로 보입니다. filezilla와 함께 시도Received unexpected end-of-file from SFTP server
Slava Knyazev

2) sftp다른 사용자에게 당신 은 할 수 있습니까 ? 3) sshd_config서버에서 어떻게 생겼습니까? 4) 당신의 ~/.bashrc모습은 어떻습니까?
Jakuje

@Jakuje Same 2) Nope .. 모든 사용자에 대해 동일한 오류입니다. 3) pastebin.com/raw/ujNk3fVR 4) bashrc에 관련성의 아무것도 없어하지만 여기 : pastebin.com/raw/mUD3DWmG
슬라바 Knyazev을

당신이 얻는 것 which sftp-server. 서브 시스템은이어야합니다 Subsystem sftp /usr/lib/openssh/sftp-server. 당신은 한하십니까 sftp-server설치되어 있습니까? apt-get install openssh-sftp-server.
Jakuje

답변:


5

귀하의 Subsystem가치 sshd_config가 잘못되었습니다.

Subsystem sftp /usr/lib/openssh/sftp-server또는 이어야합니다 internal-sftp. /etc/ssh/sshd_config이 값 을 수정하고 ssh 서비스를 다시 시작한 후 다시 시도하십시오.


6

오래된 질문이지만이 문제에 대한 첫 번째 질문입니다.

내 문제는 서버에 키 인증이 필요했지만을 사용 sudo하고 지정 하여 명령을 실행하고 있었고 -o IdentityFile=~/.ssh/id_rsa의미 ~는 내 것이 아닌 루트의 집으로 확장되었습니다.

전체 경로를 지정하면 효과 $HOME가 있다고 생각합니다 (이전 확장 되었기 때문에).


1
감사합니다.이 팁으로 장착 할 수있었습니다.
Bemmu


0

ssh를 통해 호스트를 자체적으로 연결할 수있는 경우 :

ssh xxx.xxx.xxx.xxx

키를 저장하라는 메시지가 표시 될 수도 있고 Y뿐만 아니라 YES를 입력하라는 메시지가 표시 될 수도 있습니다. 그런 다음 해당 원격 시스템의 사용자에 대한 사용자 이름과 비밀번호를 입력해야합니다.

sshfs를 사용하려는 결과를 사용하여 결과를 다시 게시하십시오.

연결이 거부되면 원격 컴퓨터에 SSH를 설치하지 않은 것 같습니다. 이 명령으로 Open ssh를 설치하고 원격 컴퓨터에서 실행할 수 있습니다.

sudo apt install openssh-server

1
예, 그것에 ssh 수 있습니다. "시스템에 SSH를 연결해도 같은 오류가 발생합니다." 내가 아는 한 서버가 올바르게 설정되었습니다
Slava Knyazev

좋아, 귀하의 의견을 읽지 못하거나 ssh로 로그인에 성공했거나 여기에서 읽은대로 "시스템에 SSH를 연결하면 같은 오류가 발생합니다."
Christopher Angulo-Bertram

난 그냥 그것을 잘 ssh 수 있습니다
Slava Knyazev

좋아, 커맨드 라인을 보면 여분의 공간이 있습니까? 이 링크를 온라인에서 찾았습니다. SSHFS <사용자 이름> @ <IPADDRESS> : / 이것은, remotePath ~ / remoteserv 내가 여기에 그것을 발견 : howtogeek.com/howto/ubuntu/...이 다른 명령어의 무리가 있습니다하지만 원래의 질문에 명령이 여분의 공간을 갖고있는 것 같아요
크리스토퍼 Angulo-Bertram

또한 로컬 시스템에 디렉토리로 연결하는 위치를 보지 못했습니다. 내 코드는 다음과 같습니다. sshfs admin@example.com : / testfo
Christopher Angulo-Bertram

0

도움이되는지 확실하지 않지만 비슷한 문제가 있습니다.

remote host has disconnected

인터넷 검색 및 탐색 후 실제로 다른 포트를 통해 ssh를 연결했습니다.

예를 들어, ssh를 통해 연결해야했습니다 (예 : 포트 번호 1234 가정).

ssh username@example.com -p 1234

포트 번호가 22 인 경우 표준 ssh 대신 sshfs 연결에 동일하게 사용해야했습니다.

sshfs username@example.com:/ ~/testfolder -p 1234

내 문제를 해결했습니다.


0

나에게 일어난 또 다른 원인은 dropbearmulti바이너리 자체 /usr/libexec/sftp-server에 DD-WRT 빌드 33600 주위에서 잃어버린 문자열이 없기 때문 입니다. 해당 바이너리에이 파일이 언급되어 있거나 존재하더라도 작동하지 않는지 확인하십시오. 빌드 33525에서 이진 파일을 사용하고 정상적인 버기 드롭 곰을 죽인 다음 실행기를 실행하는 런처를 만들어야했습니다. dropbear가리키는 이라는 심볼릭 링크를 만듭니다 dropbearmulti. 으로 현재 것을 중지 한 stopservice sshd다음 작동하는 것을 실행하십시오. 에서 참조 ps적절한 매개 변수가 어떻게 생겼는지. 여전히 umount모든 드라이브 를 사용할 수 있도록 jffs에 저장하는 것이 가장 좋습니다 (또는 / tmp로 압축 해제) .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.