ข้ามไปยังเนื้อหา
Secret Knock

ไคลเอนต์ fwknop SPA สำหรับ iPhone, iPad, Mac และ Apple Watch

fwknop แทนที่ลำดับที่คาดเดาได้ด้วยแพ็กเก็ตเดียวที่เข้ารหัสและได้รับการตรวจสอบสิทธิ์ Secret Knock สร้างแพ็กเก็ตนั้นบนอุปกรณ์ของคุณด้วยคีย์ของคุณ และส่งไปยัง fwknopd ผ่าน UDP หรือ HTTP

ใช้ร่วมกับ fwknopd ได้

Secret Knock ส่งการเข้ารหัส Rijndael (AES) ของ fwknop พร้อม HMAC — ใช้ SHA-256 เป็นค่าเริ่มต้น และเลือกไดเจสต์อื่นได้ — ผ่าน UDP ไปยังพอร์ต 62201 หรือพอร์ตอื่นที่คุณกำหนด หรือส่งเป็นคำขอ HTTP คุณสามารถขอสิทธิ์เข้าถึงสำหรับที่อยู่ต้นทางของแพ็กเก็ต หรือระบุที่อยู่อื่น และส่งข้อความในโหมดคำสั่งของ fwknop ได้หากเซิร์ฟเวอร์ของคุณอนุญาต

ตั้งค่าเซิร์ฟเวอร์

สร้างคู่คีย์ด้วย fwknop --key-gen แล้วใส่คีย์ทั้งสองลงใน access.conf ของเซิร์ฟเวอร์

SOURCE              ANY
OPEN_PORTS          tcp/22
KEY_BASE64          <output of fwknop --key-gen>
HMAC_KEY_BASE64     <output of fwknop --key-gen>
FW_ACCESS_TIMEOUT   30
/etc/fwknop/access.conf

เพิ่มประตูในแอป

  1. 1ประตูใหม่ › ประเภท: แพ็กเก็ตเดียว (fwknop) หรือ เริ่มจากเทมเพลต › fwknop
  2. 2วางผลลัพธ์จาก fwknop --key-gen ด้วย วางคีย์ — หรือบน iPhone และ iPad ให้สแกน QR code ของคีย์
  3. 3หรือ + › นำเข้าจากไฟล์ แล้วเลือก .fwknoprc ของคุณ
  4. 4คีย์จะอยู่ในพวงกุญแจ และเมื่อเปิดการซิงค์ คีย์จะส่งผ่านพวงกุญแจ iCloud ไปยังอุปกรณ์ของคุณเองโดยเข้ารหัสตั้งแต่ต้นทางถึงปลายทาง

ตัวอย่างทั้งหมดบน GitHub → การกำหนดค่าทุกรายการในหน้านี้ พร้อมให้คัดลอก: github.com/mobilcomm/secretknock-examples (สาธารณสมบัติ)

คำถาม

เหตุใดจึงใช้ fwknop แทน knockd

ลำดับ knockd ส่งแบบไม่เข้ารหัส และทุกคนที่เห็นสามารถนำไปใช้ซ้ำได้ แพ็กเก็ต SPA ได้รับการเข้ารหัส ตรวจสอบสิทธิ์แล้ว และไม่สามารถนำไปใช้ซ้ำได้

Apple Watch ส่ง SPA ได้ด้วยตัวเองหรือไม่

ได้ ผ่าน HTTP: แอป Apple Watch ไม่สามารถส่ง UDP แบบดิบได้ ดังนั้นเมื่ออยู่ห่างจาก iPhone Apple Watch จะส่งแพ็กเก็ต SPA เป็นคำขอ HTTP ดูคู่มือ Apple Watch สำหรับการตั้งค่าฝั่งเซิร์ฟเวอร์

คู่มือสำหรับการตั้งค่าของคุณ