게스트 SSH 및 Telnet 액세스 허용

게스트 SSH 및 Telnet 액세스 허용

현재 사람들이 내 서버(또는 SSH)에 텔넷을 연결할 때마다 사용자 이름/비밀번호를 입력하라는 메시지가 표시됩니다.

나중에 해당 특정 사용자에 대해 자체 인증을 수행하므로 이는 중복됩니다. 사용자는 bash 셸 대신 특정 bash 스크립트를 자동으로 시작합니다.

사용자를 지정하지 않고 텔넷이나 SSH를 통해 액세스하면 자동으로 로그인하여 서비스나 스크립트에 연결되는 일부 시스템을 본 적이 있습니다. 그러나 이 작업을 수행할 수 있도록 구성을 변경하는 방법을 모르겠습니다. 대부분의 대답은 원격 연결에 암호를 자동으로 전달하는 것과 관련이 있습니다.

사용자 이름이 지정되지 않은 경우 스크립트가 이 사용자 이름을 기본값으로 설정하고 비밀번호를 묻는 메시지를 표시하지 않도록 Debain에서 SSH/Telnet을 구성할 수 있습니까? (기본적으로 아무것도 묻지 않고 즉시 연결됩니다).

예를 들어 사용자 이름을 수동으로 지정할 수 있어야 합니다 root@server. 그렇지 않으면 직접 들어갈 수 없습니다!

내가 찾고 있는 것의 예는 다음과 같습니다.

SSH를 통해 접속하면 [email protected]바로 로그인 화면을 우회하고 BBS 프로그램으로 바로 이동합니다.

여기 짝수가 있어요더 나은 것뭔가의 예정확히내가 찾고 있는 것:ssh sshtron.zachlatta.com

이것은정확히내가 원하는 것. 사용자 이름을 갖는 것이 중요하지만 비밀번호를 무시하거나 비밀번호를 비워두고 자동으로 계속해야 합니다.

pam수정 해서 허용 해 보았지만 sshd_config이전 비밀번호도, 빈 비밀번호도 작동하지 않았습니다.

답변1

SSH를 사용하면 사용자 이름이 실제로 프로토콜의 연결 정보의 일부로 전달되며 SSH 서버는 Username:메시지를 표시하지 않습니다. 메시지가 표시되면 SSH 클라이언트입니다.

(이는 Linux/Unix와 같은 사용자 이름을 로컬에서 찾을 가능성이 거의 없는 Windows와 같은 플랫폼에서 일반적이므로 PuTTY와 같은 클라이언트는 구성되지 않은 경우 사용자 이름을 묻는 메시지를 표시합니다.)

즉, SSH에 대한 사용자 이름은 항상 구성해야 합니다.

해당 특정 계정에 대해 빈 비밀번호(예: 비밀번호 없음)를 설정하면 비밀번호 프롬프트를 무시할 수 있습니다. 이렇게 하면 SSH in이 사용자가 구성한 셸로 직접 연결됩니다. SSH 또는 PAM은 비밀번호 없는 액세스를 차단하도록 구성될 수 있지만 이를 허용하도록 재구성하는 것이 가능해야 합니다( 구체적인 정보 는 /etc/ssh/sshd_config및 또는 이와 유사한 내용 참조)./etc/pam.d/sshsshd이것은 나쁜 생각입니다.특정 형태의 인증이 없는 SSH는 아마도 나쁜 생각일 것입니다. 특히 SSH를 야생 인터넷에 노출하려는 경우에는 그렇게 하기로 결정하기 전에 다시 한번 생각해 보십시오.

Telnet과 관련하여 Telnet 프로토콜은 매우 간단하므로 많은 경우 무시할 수 있습니다. 아마도 stdin에서 읽고 stdout에 쓰는 세션 프로그램을 작성하고 다음과 같은 최소한의 후크를 사용할 수도 있습니다 tcpd.nc시스템 소켓 장치Accept=yes다중 인스턴스 서비스(이름으로 끝나는 이름 ) 는 @TCP 포트에 서비스를 노출하고 telnet이에 연결하는 데 사용됩니다. 귀하는 귀하의 프로그램으로 직접 이동되므로 귀하를 대신하여 인증이나 사용자 이름 교환이 수행되지 않습니다. Telnet은 암호화되지 않은 프로토콜이며 동일한 네트워크 또는 네트워크 경로에 있는 다른 사람들이 교환된 전체 정보를 볼 수 있으므로 민감한 정보(언급한 비밀번호 포함)를 교환할 계획이라면 자체 애플리케이션 내에서 인증을 계획하고 있을 것입니다. 그렇다면 아마도 Telnet을 완전히 피해야 할 것입니다.

관련 정보