ssh และ rsync (และ SFTP) จะให้ล็อกอินบนเซิร์ฟเวอร์ที่คุณกำลังเชื่อมต่อเสมอ ซึ่งคุณอาจควบคุมหรือไม่ก็ได้
ทำไมไม่ใช้ HTTPS?
คุณอาจจะ
- เรียกใช้เซิร์ฟเวอร์บน A และมี B รับ ข้อมูล
- หรือเรียกใช้บน B และมี A โพสต์ มัน.
เพื่อปกป้องข้อมูลจากบุคคลที่สามที่ไม่เกี่ยวข้อง คุณจะต้องเข้ารหัสการเชื่อมต่อ (ใช้ HTTPS ไม่ใช่ HTTP ธรรมดา) และ ใช้อย่างน้อย การรับรองความถูกต้องขั้นพื้นฐาน.
สิ่งนี้จะไม่ปกป้องข้อมูลจากผู้ใช้รูทในทั้งสองระบบ: ทั้งคู่อาจ อ่าน ข้อมูลและ แก้ไข ในด้านของพวกเขาและไม่มีอะไรที่คุณสามารถทำได้เกี่ยวกับเรื่องนี้
เซิร์ฟเวอร์ HTTP อย่างง่ายสามารถเริ่มต้นได้หลายวิธี เช่น:
หลาม -m SimpleHTTPServer 8080
การเข้ารหัสการเชื่อมต่อจำเป็นต้องสร้างใบรับรอง SSL และโค้ด Python สองสามบรรทัด:
#!/usr/bin/python
นำเข้า 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()
การรับรองความถูกต้องขั้นพื้นฐานต้องการรหัสเพิ่มเติมเล็กน้อย แต่นั่น ยังสามารถ จะเสร็จแล้ว