ssh și rsync (și SFTP) vă vor oferi întotdeauna o autentificare pe serverul la care vă conectați, pe care ați putea sau nu să o puteți controla.
De ce nu folosiți HTTPS?
Poți fie
- rulați un server pe A și aveți B OBȚINE datele
- sau rulați-l pe B și aveți A POST aceasta.
Pentru a proteja datele de terțe părți neafiliate, va trebui să criptați conexiunea (utilizați HTTPS, nu HTTP simplu) și foloseste cel putin autentificare de bază.
Acest lucru nu va proteja datele de la utilizatorii root pe niciunul dintre cele două sisteme: ambele pot citit datele și modifica este de partea lor și literalmente nu poți face nimic în privința asta.
Un server HTTP simplu poate fi pornit în mai multe moduri, de exemplu:
python -m SimpleHTTPServer 8080
Criptarea conexiunii necesită crearea unui certificat SSL și a câteva linii de cod Python:
#!/usr/bin/python
importați BaseHTTPServer, SimpleHTTPServer
import 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()
Autentificarea de bază necesită puțin mai mult cod, dar asta poate, de asemenea fi realizat.