ssh и rsync (и SFTP) всегда будут давать вам логин на сервере, к которому вы подключаетесь, который вы можете или не можете контролировать.
Почему бы не использовать HTTPS?
Вы можете либо
- запустить сервер на A и иметь B ПОЛУЧАТЬ данные
- или запустите его на B и получите A ПУБЛИКОВАТЬ Это.
Чтобы защитить данные от посторонних третьих лиц, вам придется зашифровать соединение (используйте HTTPS, а не обычный HTTP). и использовать по крайней мере базовая аутентификация.
Это не защитит данные от пользователей root ни в одной из двух систем: обе могут читать данные и изменить это на их стороне, и вы буквально ничего не можете с этим поделать.
Простой HTTP-сервер можно запустить несколькими способами, например:
python -m Простой HTTP-сервер 8080
Шифрование соединения требует создания SSL-сертификата и нескольких строк кода Python:
#!/usr/бин/питон
импортировать BaseHTTPServer, SimpleHTTPServer
импорт SSL
httpd = BaseHTTPServer.HTTPServer(('0.0.0.0', 8443), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(httpd.socket, certfile='./certs_and_key.pem', server_side=True)
httpd.serve_forever()
Базовая аутентификация требует немного больше кода, но это также может быть сделано.