> 백엔드 개발 > 파이썬 튜토리얼 > pysftp를 사용할 때 호스트 키를 어떻게 안전하게 확인할 수 있습니까?

pysftp를 사용할 때 호스트 키를 어떻게 안전하게 확인할 수 있습니까?

Patricia Arquette
풀어 주다: 2024-12-12 18:15:11
원래의
957명이 탐색했습니다.

How Can I Verify Host Keys Securely When Using pysftp?

pysftp로 호스트 키 확인

pysftp를 사용하여 SSH 연결을 설정하는 경우 신뢰할 수 있는 소스에 대해 서버의 호스트 키를 확인하는 것이 중요합니다. 안전한 통신을 보장합니다. 기본적으로 pysftp는 '~/.ssh/known_hosts' 파일에서 알려진 호스트 키를 로드하려고 시도합니다. 그러나 서버의 호스트 키가 PuTTY에서 사용하는 레지스트리와 같은 다른 위치에 저장된 경우 이러한 차이를 조정하는 것이 중요합니다.

pysftp의 호스트 키 확인 옵션

pysftp는 호스트 키 관리를 위한 여러 옵션을 제공합니다. 확인:

  • 파일에서 호스트 키 로드:

    • cnopts.knownhosts 속성을 사용하여 Known_hosts 파일의 경로를 지정합니다. 그러면 지정된 파일에서 호스트 키가 로드됩니다.
  • 사용자 정의 호스트 키 사용:

    • HostKeys 객체를 생성하고 add() 메소드를 사용하여 예상되는 호스트 키를 추가하십시오. 이를 통해 확인할 호스트 키를 수동으로 지정할 수 있습니다.
  • 호스트 키 확인 비활성화:

    • cnopts 설정 .hostkeys를 None으로 설정하여 호스트 키 확인을 비활성화합니다. 그러나 이는 보안을 위협하므로 권장되지 않습니다.

권장 접근 방식

보안을 유지하고 적절한 호스트 키 확인을 보장하려면, 신뢰할 수 있는 소스에서 알려진 호스트 키를 로드하는 것이 가장 좋습니다. 호스트 키가 레지스트리에 저장되어 있는 경우 ssh-keyscan과 같은 도구를 사용하여 필요한 정보를 검색하고 적절한 형식으로 저장하는 것을 고려하세요.

예제 코드

다음은 사용자 정의 호스트 키 사용을 보여주는 예입니다.

import pysftp as sftp

cnopts = pysftp.CnOpts()
host_key = paramiko.RSAKey(data=b'YOUR_HOST_KEY')  # Replace with the server's host key
cnopts.hostkeys.add('my_server.com', 'ssh-rsa', host_key)

with sftp.Connection('my_server.com', username='root', password='*********', cnopts=cnopts) as sftp:
    # Perform file transfer operations, etc.
로그인 후 복사

호스트 키 확인을 신중하게 처리하면 안전한 SSH 연결을 설정하고 중간자 공격을 방지할 수 있습니다.

위 내용은 pysftp를 사용할 때 호스트 키를 어떻게 안전하게 확인할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿