Connecting to SFTP server with .ppk key using Python pysftp: not a valid DSA private key file

Viewed 183

Everyday I am uploading files to SFTP server using WinSCP. I decided to use Python to automate this process. This SFTP has host, username, port, and .ppk file

I found a code, but it didn't work. It says

SSHException: not a valid DSA private key file

import pysftp

cnopts = pysftp.CnOpts()
cnopts.hostkeys = None

HOST = 'HOST'
USERNAME = 'USERNAME'
PRIVATE_KEY = 'file.ppk'
PORT = 1111

srv = pysftp.Connection(host = HOST, 
                        username = USERNAME, 
                        private_key = PRIVATE_KEY, 
                        port = PORT
                        cnopts = cnopts)

data = srv.listdir()
srv.close()

for i in data:
    print(i)

What should I do? I know how to upload files etc I just would like to know how to connect the SFTP.

Here is how .ppk file looks like.

PuTTY-User-Key-File-3: ssh-rsa
Encryption: none
Comment: rsa-key-20220408
Public-Lines: 6
AAAAB3NzaC1yc2EAAAADAQABAAABAQCKXdZXgtuaGfRayz7cz6bFkXWhVmbmGebJ
XFND5bIz73/cemi8TPiU7yLt7HiZNh189kOCRYrz51zX3JDi7s8tQp4pa2LsJ2jn
YeTTAXS2HzxL0aDWzom22A7FaHVAHTO48o9MzjdEek+0Mi2taZMy7hKQqCJUAl9U
5zQrbRvczyCRlp0N824lUfkCXvOs4ib92YzEhOgfnG7aH9rLdft5T2CyBMmT2c4P
bybKp2m8tl17ClAzQUQC6JfxTO3Kd0Zvw1AQmD8pqkr6pbp3a+pWOd/PLG+8NniJ
0ipbFhaq0ptn3iCaMbUySF1R1J3CIlrTM51fhH/knTwKV9A3zscD
Private-Lines: 14
...
Private-MAC: 16d619f3cca3b69ea882fc95b7f5b3a153aeb455af4e9cfc56a5a85bf6fce2b3
1 Answers
Related