FTP/SFTP 사이트를 호스팅하기 위해 FileZilla Pro Server를 설치했습니다.
FileZilla 클라이언트를 사용하여 SFTP 서버에 로그인하려고 하면 정상적으로 작동합니다.
그런데 다른 회사에서 로그인을 시도하고 있는데 오류가 발생하고 있습니다.
2022-11-29 13:25:39.207 FTP< CONNECT ftp.domain.com:22
processLoginCommand(): InbdProfId: 5915 UserName: XXXXXXXXXedi에 연결하는 동안 예외가 발생했습니다.
예외: com.transentric.agilink.ftp.core.Exception.TransentricSSHException: com.sshtools.ssh.SshException: 키 교환 처리 실패 [com.sshtools.ssh.SshException] [com.sshtools.ssh.SshException]
우리는 이유를 알아낼 수 없었습니다.
FileZilla에는 설정할 수 있는 공개/개인 키 항목이 있습니다. 나는 그런 일을 하지 않습니다. 일반 사용자 이름과 비밀번호를 사용하여 FileZilla 클라이언트를 사용하여 로그인할 수 있으므로 그럴 필요가 없다고 생각했습니다.
하지만 FileZilla Server에는 공개 키 섹션이 있습니다. 이 키를 언제 설정해야 하는지 아는 사람이 있나요?
답변1
SSH 키 교환은 일회용 세션 키를 설정하고 인증합니다.섬기는 사람그것을 통해주인열쇠. 이는 사용자 키나 비밀번호 또는 Kerberos가 옵션에 포함되는 사용자 인증과 다릅니다.
SSH 프로토콜의 전체 요점은 안전하지 않은 네트워크를 통해 비밀번호와 같은 약한 인증을 보낼 수 있는 암호화된 채널을 설정하는 것입니다. 웹 서버에 비밀을 보내기 전에 TLS 암호화된 https 세션이 존재하는지 확인하는 것과 비교해 보세요.
키 교환 알고리즘은 시간이 지남에 따라 업데이트됩니다.암호화 연구로 인해 기존 방법이 안전하지 않기 때문입니다. SFTP 소프트웨어를 업데이트하여 최신 알고리즘이 있는지 확인하도록 하세요.
이 문제를 해결하는 동안 서버에서 SSH 포트에 대한 패킷 캡처를 시작하세요. Wireshark는 SSH 프로토콜을 자세히 분석하여 패킷에서 어떤 일이 일어나는지 확인할 수 있습니다.
SSH 클라이언트를 통해 KEX가 시도된 내용을 확인하세요. 예를 들어, 더 높은 상세도의 OpenSSH 클라이언트는 클라이언트와 서버가 알고 있는 알고리즘을 정확하게 알려줍니다. ssh -vv
KEXINIT 이벤트 주변의 알고리즘을 검사합니다. OpenSSH를 사용하고 있지 않으므로 구현에서 협상이 정확히 어떻게 작동하는지에 대한 문서도 읽어보세요.