문제가 있으며 시스템 엔지니어 나 인증서 전문가가 아닙니다.
SFTP 프로토콜을 통해 클라이언트에서 SFTP 서버로 일부 파일을 전송해야합니다.
로컬 Windows 시스템에 SFTP 서버를 설치했습니다 (Cygwin을 사용했습니다). 모든 것이 올바르게 작동합니다. 그러나 의심스러운 점은 안전한 채널로의 이전입니까? 아니면 서버에서 무언가를 구성해야합니까?
흐름이 암호화되도록 Windows 컴퓨터에 인증서가 있어야합니까? SFTP를 사용하고 있기 때문에 흐름이 암호화되어 있다고 생각합니다. 나는 그것이 HTTPS와 같다고 생각합니다. 즉, 암호화는 프로토콜에 의해 구현됩니다. 따라서 서버에 대한 특별한 사용자 정의를 수행 할 필요가 없습니다 …
인증이 아닌 인증서를 생성해야하는 경우 Cygwin으로 어떻게 할 수 있습니까?
답변
유닉스 / 리눅스에 익숙하지만 아이디어는 같습니다. sftp는 이미 보안되어 있습니다. 그러나 그것이 얼마나 강한지는 사용 된 사이퍼에 달려 있습니다. 클라이언트뿐만 아니라 서버 측에서도 구성 할 수 있어야합니다. cygwin은 기본적으로 리눅스 세계에서 널리 사용되는 openssh 제품군을 사용하므로 구성은 Linux에서 사용되는 것과 동일합니다. 즉, openssh 서버 문서를 사용할 수 있습니다.
sftp는 ssh 서버 서브 시스템이므로 구성된 값을 공유하므로 자세한 내용은 sshd 구성을 살펴볼 수 있습니다.
답변
SFTP 프로토콜 자체는 암호화를 수행하지 않습니다. OpenSSH와 같은 설치의 99.9 %에서 데이터를 암호화하는 SSH 위에서 실행됩니다. Cygwin은 SSH / SFTP 구현으로 OpenSSH를 사용합니다.
Wikipedia 의 SFTP 기사 를 참조하십시오 .
SSH조차도 실제로 암호화 ( none
암호) 없이 작동 할 수 있습니다 . 그러나 OpenSSH의 기본 설치 (또는 내가 알고있는 다른 SSH 구현)는 암호화되지 않은 세션을 허용하지 않습니다.
TLS / SSL (HTTPS 또는 FTPS에 사용)과 달리 SSH는 인증서를 사용하지 않습니다. SSH는 간단한 호스트 키 쌍을 사용하며, 일반적으로 SSH 서버를 설치할 때 자동으로 생성됩니다. OpenSSH의 경우도 마찬가지입니다. 이 간단한 키는 인증 기관에서 발행 한 인증서와 달리 자동 생성 될 수 있습니다. 그렇기 때문에 이미 열쇠가 있다는 것을 알지 못할 수도 있습니다.