VNC 인증 실패 로그인 할

방화벽 뒤에서 가정용 컴퓨터의 CentO에서 실행중인 vncserver에 연결하려고합니다. 이 컴퓨터에 Win7과 Ubuntu를 모두 설치했습니다. 오류가 있습니다.

VNC 연결 실패 : vncserver 너무 많은 보안 오류

올바른 자격 증명 (CentO에서 암호를 재설정)으로 로깅 할 때도 인증 실패가 발생합니다.

다시 로그인 할 수 있으려면 하루 종일 기다려야한다는 것을 알았습니다.

내가 루트로 시도하는 것과 관련이 있습니까? 포트 6050을 통해 원격 Centos에 로그인해야한다는 점도 중요합니다. 다른 포트는 저에게 효과적이지 않습니다. 다른 포트로 무언가를해야합니까? 다른 추가 된 경우 vncserver가 5901, 5902에서 수신 대기하고 있음을 알 수 있습니다. 비밀번호 프롬프트가 때때로 나타나기 때문에 연결이 설정되어 있다고 생각합니다.

CentOS 및 VNC, 또한 user2에 대한 추가 user1, 비밀번호를 작성했습니다. 나는한다:

서비스 vncserver 시작

두 대의 서버가 시작됩니다 (하나는 1 : 1, 두 번째는 2 : 2). vncserverIP : 1에 연결하려고하면 : 위에서 설명한 내용을 얻지 만 vncserverIP : 2에 연결하려고하면 평가판이 실패했음을 나타냅니다.

도와주세요, 어떻게해야합니까?

또한 테스트 목적 으로이 잠금을 비활성화하는 방법은 무엇입니까?



답변

VNC는 별도의 암호 시스템을 사용합니다. / etc / passwd에 대한 암호를 검사하지 않고 ~ / .vnc / passwd에 대해 검사합니다. 여기에는 단일 기본 암호와 선택적으로 화면을 볼 수있는 보조 암호가 포함되어 있습니다.

VNC 비밀번호를 설정하려면 vncpasswd 명령을 사용하십시오 . VNC 암호의 길이는 5-8 자 사이 여야합니다 – 8 번째를 초과하는 문자는 자동으로 무시됩니다. 따라서 인터넷을 통해 VNC를 사용하는 경우 공격자가 비밀번호를 크래킹하는 동안 많은 IP 주소가있는 봇넷을 사용하여 잠금을 우회 할 수 있으므로 강력한 임의 비밀번호를 선택 하십시오.

인터넷을 통해 VNC를 사용해야하는 경우 공통 포트만 포함하는 포트 스캔에서 감지되지 않도록 임의로 선택한 포트 번호 (5900 아님)에서 VNC를 실행하십시오. 바람직하게는 SSH를 통해 VNC 연결을 터널링하여 도청 및 MITM (Man-in-the-Middle) 공격으로부터 자신을 보호하십시오. 이렇게하면 인터넷 연결을 허용하지 않도록 vncserver를 설정하고 SSH 서비스에서 암호 전용 인증을 비활성화하고 공개 키 인증을 사용하여 일반적인 무차별 암호 크래킹 시도로부터 보호해야합니다.

vncserver를 다시 시작하면 잠금이 재설정됩니다. 매뉴얼 페이지에는 (이미 부적절합니까?) 잠금을 완전히 비활성화하는 방법이 언급되어 있지 않습니다.


답변

이 VNC 잠금 문제가있었습니다. gufw 방화벽 을 설치하여 문제를 해결했습니다 .


답변

이미 주어진 답변에 추가 :

귀하의 게시물에 이것을 명시 적으로 언급하지 않았지만 문제에 대한 설명은 로그인 시도가 너무 많이 실패한 후에 차단되었음을 나타냅니다. 최근에 잘못된 암호를 여러 번 시도한 후 동료가 로그인 할 수 없을 때이 문제가 발생했습니다. 내가 건너 온 그것을 해결하는 방법을 설명합니다 SOLVEOPTIMIZED에 게시 할 수 있습니다.

VNC 서버가 사용중인 포트에서 들어오는 연결을 허용하도록 방화벽 규칙을 정의해야합니다. VNC 서버는 포트 5900 + N을 사용합니다. 여기서 N은 모든 새 인스턴스를 나타냅니다. VNC 서버 인스턴스가 포트 5901에서 실행된다고 가정하면 방화벽 설정에서이 포트로 들어오는 연결을 허용해야합니다. 모든 인스턴스의 포트 번호는

$ vncserver -l

방화벽 규칙을 변경 한 후에는 서버 시간 초과가 끝날 때까지 기다려야하며 다시 로그인 할 수 있습니다.

또는 기다리지 않거나 방화벽 설정을 망가 뜨리지 않으려면 모든 인스턴스를 종료하여 VNC 서버를 다시 시작할 수 있습니다. 그것은 당신이했던 것처럼 서비스를 다시 시작하는 것과 다릅니다. 먼저 VNC의 PID를 파악하여 강제로 다시 시작합니다.

$ pgrep vnc

그런 다음 모든 인스턴스를 종료

$ kill pid

pgrep가 여러 PID를 반환하면 실제로 모든 인스턴스를 종료해야합니다.