Debian에서 open-ssh를 올바르게 설정하는 방법은 무엇입니까? 모든 작업을 수행했습니다. 인증 키(PasswordAuthentication을 아니요로 설정)를 사용하여 로그인한 후 갑자기 다음과 같은 메시지가 나타납니다.권한이 거부되었습니다(공개키). 그래서 서버와 원격 클라이언트에서 SSH를 제거했습니다. 그러다가 혼란에 빠졌습니다. 다시 설치해도 루트 또는 사용자 수준에서 .ssh 디렉터리를 설정하지 못했습니다.
역사:
내 서버에 open-ssh를 설치했습니다. 루트로 원격 클라이언트 PC에 open-ssh를 루트로 설치했습니다.
내 서버에서 루트로 공개 및 개인 키를 생성했습니다.
원격 PC에서 루트로 공개 및 개인 키를 생성했습니다.
내 서버의 .ssh 디렉토리에 사용자로 자동 키 파일을 생성하고 원격 PC의 공개 키에 복사했습니다.
비밀번호 로그인을 허용하지 않도록 SSH 구성 파일을 수정했습니다.
내 질문:
항상 루트로 open-ssh를 설치해야 합니까?
그렇다면 이는 SSH 연결을 수락할 수 있는 권한을 부여하는 모든 사용자에게 전파됩니까?
인증키 파일을 루트로 만드시나요, 아니면 사용자 레벨로 만드시나요?
모든 항목*을 제거했지만 apt-get purge openssh-client
곳곳에 .ssh 디렉토리가 남았습니다. 이는 Linux에서 일반적인 관행이며 남은 디렉토리를 수동으로 삭제해도 괜찮습니까?
건배
답변1
이해에 몇 가지 요소가 누락된 것 같습니다.
실제로 루트로 open ssh를 설치해야 합니다. 기본적으로 루트로 제한된 포트 22에서 통신합니다. 1024(보통 2222) 이상의 비표준 포트에 응답하도록 설정할 수도 있습니다.
ssh는 "전파"되지 않으며 데몬으로 실행됩니다. 그러나 일반적으로 ~user/.ssh/authorised_keys에 대한 사용자 홈 디렉터리를 찾습니다.
일반적으로 시스템의 각 사용자에 대해 Authorized_keys 파일을 생성합니다. SSH 서버에는 일반적으로 /etc/sshd에서 찾을 수 있는 자체 키도 있습니다.
SSH 항목 외에 아무것도 없는 경우 홈 디렉터리의 .ssh 키를 수동으로 삭제하는 데 안전이 필요하지 않습니다. 클라이언트와 서버는 서로 다르지만 어떤 경우에는 둘 다 동일한 디렉토리를 사용하기 때문에 그대로 두는 것도 괜찮습니다.
키 처리 -
일반적으로 클라이언트에서 개인 및 공개 키를 생성한 다음 ~user/.ssh/authorized_keys에 있는 서버에 공개 키를 추가합니다. 서버에서 사용자를 위해 개인 또는 공개 키를 생성할 필요가 없습니다. 또한 해당 사용자가 서버를 SSH 클라이언트로 사용하기를 원합니다.
키는 일반적으로 해당 키가 속한 사용자가 소유하며 개인 키의 권한은 600입니다. 루트가 키를 소유할 수도 있지만 이렇게 하면 사용자가 키를 변경할 수 없습니다.