거부 호스트를 설치한 후 더 이상 SSH를 사용할 수 없습니다.

거부 호스트를 설치한 후 더 이상 SSH를 사용할 수 없습니다.

그래서 나는 매우 곤란한 상황에 처해 있었습니다. Debian 컴퓨터에 DenyHosts를 설치했는데 갑자기 더 이상 SSH를 사용할 수 없습니다.

webmin을 통해 계속 로그인할 수 있기를 바라지만 루트로 로그인해야 하므로 다른 사용자로 로그인한 다음 "su"를 입력해야 합니다.

IPtables를 새로 고치고 SSH 포트를 다시 22(이전에 변경했음)로 변경한 다음 DenyHosts 제거를 시도했습니다. aptitude delete DenyHosts.

작동하지 않는 것 같습니다.

E: /usr/bin/apt-listchanges --apt || test$? -ne 10이 아닙니다. E: /usr/bin/apt-listchanges --apt || 네 10

이 시점에서 무엇을 해야 할지 정말 모르겠습니다. 여전히 SSH를 통해 연결할 수 없으며 webmin에 이 텍스트 터미널만 있어서 연결할 수 있지만 속도가 매우 느립니다. 어떤 아이디어가 있나요?

첨부된:

지금 적성 업그레이드를 하면 다음과 같은 오류가 발생합니다.

Get:1 http://security.debian.org/ squeeze/updates/main file amd64 5.04-5+squeeze 5 [50.3 kB]                                                                      
Get:2 http://security.debian.org/ squeeze/updates/main libmagic1 amd64 5.04-5+sq ueeze5 [236 kB]                                                                  
Fetched 286 kB in 0s (622 kB/s)                                                  
dpkg-deb: unrecoverable fatal error, aborting:                                    
wait for subprocess tar failed: No child processes                              
close failed in file object destructor:                                          
IOError: [Errno 10] No child processes                                          
Traceback (most recent call last):                                                 
File "/usr/bin/apt-listchanges", line 237, in <module>                             main()                                                                         
File "/usr/bin/apt-listchanges", line 102, in main                                 
pkg = DebianFiles.Package(deb)                                                 
File "/usr/share/apt-listchanges/DebianFiles.py", line 133, in __init__            
self.binary  = pkgdata.Package                                               
AttributeError: ControlStanza instance has no attribute 'Package'                
E: Waited for /usr/bin/apt-listchanges --apt || test $? -ne 10 but it wasn't the re                                                                               
E: Failure running script /usr/bin/apt-listchanges --apt || test $? -ne 10       A package failed to install.  Trying to recover:    

거부 호스트를 설치하거나 다시 설치하면 동일한 오류가 발생합니다.

답변1

denyhosts/etc/hosts.deny이는 설정한 규칙을 위반한 것으로 밝혀진 IP 주소에 대한 항목을 파일에 추가하는 방식으로 작동합니다 .

rootSSH를 통해 로그인을 시도하고 한 번 잘못된 비밀번호를 입력한 것 같습니다 . 기본적으로 루트 계정 로그인 시도가 실패한 후 denyhostsIP 주소가 파일에 추가됩니다 ./etc/hosts.deny

을(를) 제거하더라도 denyhosts이러한 항목은 파일에 남아 있습니다. 따라서 /etc/hosts.deny파일을 편집하고 IP 주소와 관련된 항목을 삭제해야 합니다.

SSH를 통한 루트 로그인도 허용하는 것으로 보입니다. 나는 이것이 좋은 습관이 아니라고 생각합니다. 일반 사용자로 로그인하고 su를 사용하여 루트 권한을 얻어야 합니다. 따라서 편집 /etc/ssh/sshd_config하여 no로 변경 해야 합니다 PermitRootLogin.

답변2

컴퓨터가 다시 연결될 수 있도록 거부 호스트에서 IP 주소를 제거하려면, 거부 호스트가 중지될 때 /etc/hosts.deny 및 거부 호스트 WORK_DIR 위치의 모든 파일에서 IP 주소를 제거해야 합니다. 바라보다거부된 호스트 FAQ완전한 프로그램. 이러한 파일에서 IP 주소를 제거하지 못하면 거부 호스트가 해당 주소를 ports.deny에 다시 추가하고 연결을 차단하게 됩니다.

관련 정보