답변:
10.04 (LTS)와 동일한 문제가 있습니다.
로 ssh를 실행하면 다음 위치 -vvv
에서 죽습니다.
debug1: Entering interactive session.
이 답변을 확장합니다.
서버를 원격으로 재부팅하고 DEBUG 로그인을 활성화했습니다. 또한이 기회를 이용하여 로그인 상태를 유지하고 다른 로그인 시도를 관찰했습니다. 여기에 일어난 일이 있습니다. 클라이언트가 연결되고 권한이 부여되고 위의 메시지가 표시됩니다.
서버에서 프로세스 목록에 다음이 표시됩니다.
root 835 0.0 0.1 11476 3348 ? Ss 13:39 0:00 sshd: till [priv]
root 840 0.0 0.0 4804 1124 ? S 13:39 0:00 /bin/sh -c /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /bin/run-parts --lsbsysinit /etc/update-motd.d
root 841 0.0 0.0 4728 1108 ? S 13:39 0:00 /bin/run-parts --lsbsysinit /etc/update-motd.d
root 854 0.0 0.0 4804 1144 ? S 13:39 0:00 /bin/sh /etc/update-motd.d/50-landscape-sysinfo
root 861 0.2 0.5 15388 9248 ? S 13:39 0:00 /usr/bin/python /usr/bin/landscape-sysinfo
root 863 0.0 0.0 0 0 ? Z 13:39 0:00 [who] <defunct>
/usr/bin/python /usr/bin/landscape-sysinfo
로그인 한 상태에서 제대로 실행할 수 있지만 어떤 이유로 로그인 프로세스가 중단되는지 이유를 알 수 없습니다. 프로세스를 종료하면 로그인 메시지가 계속 표시되고 성공 합니다.
이것은 ssh (d) 문제가 아닌 것처럼 보입니다 update-motd
. update-motd
패키지를 제거 했지만 /etc/update-motd
디렉토리가 지속되고 스크립트가 여전히 실행되어 프로세스가 중단되는 것처럼 보입니다 .
이것을 더 디버깅 :
/etc/update-motd.d/
디렉토리가 실제로 패키지에 속하지 않는 것으로 나타 났습니다 update-motd
. sshd를 통한 pam 인증에 의해 트리거 된 것 같습니다.
나는 그것을 못 박은 것 같다!
다음 파일에서 pam_motd를 비활성화했습니다.
하나 더:
apt-get purge landscape-client landscape-common
이것들은 특정 확장에 도움이되는 것 같습니다. 그러나 문제가되는 스크립트 만 제거하고 /etc/update-motd.d/
해당 디렉토리의 모든 스크립트를 삭제하거나 제거하지 않습니다 pam_motd
.
일반적으로, 나는 pam_motd
그것이 무엇이든간에 완전히 비활성화하는 방법을 찾지 못했습니다 . 로그인 프로세스가 특정 확장으로 느려집니다. 의 스크립트처럼 차단되지 않지만 landscape-common
속도가 느립니다.
이 문제에 대한 버그 보고서 :
거기에서 해결 방법 :
귀하는 로그인 기능이 motd를 제시하는 것보다 중요하다는 것이 옳습니다. 이 동작이 문제인 경우 비활성화 할 수있는 몇 가지 방법이 있습니다.
/etc/pam.d/sshd
motd를 표시하지 않으려면 'pam_motd'줄을 주석 처리하십시오 ./etc/update-motd.d
디렉토리 의 내용을 삭제하십시오 .- chmod -x
/etc/update-motd.d
실행하고 싶지 않은 스크립트 .
설명에서 네트워킹 문제와 비슷합니다. 진단하려면
Windows 및 PuTTY에 OK를 연결할 수 있다면 서버 쪽에서는 문제가되지 않을 것입니다.
경우 PermitEmptyPassword
와 UsePAM
모두 사용 가능, OpenSSH의 서버는 항상 어떤 인증이 해당 계정에 대한 필요하지 않습니다 있다는 신호로 소요 널 암호, 인증을 시도합니다. 클라이언트의 "실제"인증 요청에 응답하지 않고 두 프로토콜 모두에서 인증 프로세스가 시작 되 자마자이를 수행합니다. OpenSSH는 sshd_config 플래그 PermitEmptyPassword
가 설정된 경우에만 이러한 액세스를 허용 합니다. 안타깝게도 코드 작성 방식에 관계없이 암호 테스트를 수행하므로 PAM이 실패로 표시됩니다.
그래서 : 비활성화 PermitEmptyPassword
하거나 UsePAM
,하지만 기억 : PAM없이 올릴 때이 키없이 로그인 할 수 없습니다.
참조 : https://groups.google.com/forum/?fromgroups=#!topic/comp.security.ssh/wExY8lWlG-c
로그인 할 때 우분투는 다음 파일 중 하나 이상을 실행한다고 생각합니다.
/etc/bash.bashrc
~/.bash_profile
~/.bashrc
당신은 그들 안에 무엇이 있는지 볼 수 있고, 심지어 너무 오래 걸리는 것을보기 위해 그들을 실행하려고 시도 할 수도 있습니다.
제한된 경험에서 퍼티가 작동하지만이 경우 Linux, Ubuntu는 작동하지 않을 때 일반적으로 살아 있습니다. 네트워킹 또는 서버 문제는 두 클라이언트 OS 모두에 영향을 미칩니다.
명령 행에서 위의 keep alive 옵션을 사용할 수 있지만 입력하는 것은 지루합니다.
몇 가지 구성 파일을보다 쉽게 편집 할 수 있습니다.
이 root access
있고 모든 사용자에 대해 자동으로 활성화하려면 편집 /etc/ssh/ssh_config
하고 추가하십시오.
KeepAlive yes
ServerAliveInterval 120
루트 액세스 권한이 없거나 단일 사용자가 사용할 수 있도록 ~/.ssh/config
하려면 동일한 두 줄을 편집 하여 추가하십시오.
이미 로그인 한 연결 (또는 다른 콘솔)에서 서버에 로그인하는 동안 실행중인 프로세스를 모니터링하려고 할 수 있습니다. 그 당시에 어떤 프로세스가 가장 활동적이거나 가장 많은 CPU를 사용하는지 파악할 수 있습니다.
다음은 가능한 방법 중 하나입니다.
top
어떻게되는지있다.CPU 집약적 인 계산으로 인해 지연이 발생하지 않는 경우, 제자리를 벗어난 것은 발견되지 않습니다. 이 경우 문제는 I / O 바운드 일 수 있습니다 (일부 디스크 읽기 / 쓰기 또는 네트워크 응답을 기다리는 중).