Я хочу подключиться к своему серверу Ubuntu, используя служебную учетную запись, но выполнять операции передачи файлов от имени другого пользователя.Мой sshd_config
имеет следующее содержимое (среди прочего):
PubKeyAuthentication yes
PasswordAuthentication yes
Subsystem sftp /usr/lib/openssh/sftp-server
Я пробовал следующий код, но безуспешно:
t = paramiko.Transport(('<address>', <port>))
t.connect(username='serviceAccount', password='<password>')
channel = t.open_session()
channel.exec_command('sudo su -l <other user> -c /usr/lib/openssh/sftp-server')
sftp = t.open_sftp_client()
file = sftp.file("<some path>", "w", bufsize=...)
file.write(...)
file.close()
sftp.close()
channel.close()
t.close()
Это ошибка, которую я вижу, когдаЯ запускаю этот код:
IOError: [Errno 13] Permission denied