![키 기반 인증을 SFTP 액세스로만 안전하게 제한](https://linux55.com/image/211943/%ED%82%A4%20%EA%B8%B0%EB%B0%98%20%EC%9D%B8%EC%A6%9D%EC%9D%84%20SFTP%20%EC%95%A1%EC%84%B8%EC%8A%A4%EB%A1%9C%EB%A7%8C%20%EC%95%88%EC%A0%84%ED%95%98%EA%B2%8C%20%EC%A0%9C%ED%95%9C.png)
~/.ssh/authorized_keys
진행 중인 SFTP 서버를 강제 실행하여 파일 전송만 허용하도록 설치된 키를 제한할 수 있습니다.
command="internal-sftp" ssh-rsa AAAAB3NzaC1...(the key follows)
그러나 SFTP 연결을 사용하면 새 버전을 authorized_keys
서버로 전송하고, 제한 사항을 제거하고, 새 키를 추가하는 등의 작업을 수행할 수 있습니다. 그러면 대화형 연결을 만들 수 있습니다.
이러한 가능성으로 인해 파일 전송은 매우 위험합니다. 이를 방지할 수 있는 방법이 있습니까? 예를 들어 ~/.ssh/
사용 중인 항목에 대한 액세스를 비활성화합니까 internal-sftp
?
답변1
이 문제를 해결하는 다른 방법이 있는지 확실하지 않습니다. 적어도 테스트에 사용하는 LXC 컨테이너에서는 찾지 못했습니다.
루트 사용자로
chattr +i .ssh/authorized_keys
그러면 사용자는 파일을 수정할 수 없습니다.
또 다른 가능한 접근 방식은authorized_keys의 위치를 변경하거나 스크립트를 사용하여 이를 찾도록 하는 것입니다. 그러면 사용자는 키를 수정할 수 없습니다.
또는 세 번째 옵션은 ssh 인증서를 사용하고 sftp 사용자의 인증서에만 명령 잠금을 설정하고 해당 잠금이 없는 두 번째 인증서를 사용하는 것입니다.