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

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

knockd จะเปิดพอร์ตเมื่อที่อยู่หนึ่งเข้าถึงพอร์ตตามลำดับลับได้ทันเวลา Secret Knock ส่งลำดับนั้นจาก iPhone, iPad, Mac หรือ Apple Watch ของคุณ ตรวจสอบว่าพอร์ตตอบกลับ แล้วเปิดแอป SSH ของคุณ

สิ่งที่ Secret Knock ส่ง

แต่ละขั้นตอนของประตูคือการเคาะ TCP หรือ UDP ไปยังพอร์ตหนึ่ง โดยเลือกหน่วงเวลาก่อนการเคาะได้ และสำหรับ UDP สามารถระบุเพย์โหลดเป็นข้อความหรือเลขฐานสิบหกได้ การเคาะ TCP คือความพยายามเชื่อมต่อหนึ่งครั้ง: แอปส่ง SYN เพียงครั้งเดียวและปิดความพยายามนั้นทันที เพื่อให้ระบบปฏิบัติการไม่ส่งซ้ำ — knockd 0.8 จะรีเซ็ตลำดับเมื่อมี SYN ซ้ำ

ลำดับแบบใช้ครั้งเดียว (one_time_sequences ของ knockd) ก็ใช้งานได้เช่นกัน: เลือก ประเภทการเคาะ › ลำดับแบบใช้ครั้งเดียว แล้วป้อนรายการดังกล่าว; หลังจากการเคาะที่เปิดประตู Secret Knock จะเลื่อนไปยังลำดับถัดไป การนำเข้า knockd.conf จะไม่อ่านไฟล์ลำดับ — การนำเข้าจะแจ้งไว้เช่นนั้น — ดังนั้นให้ป้อนรายการนั้นด้วยตนเอง

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

ส่วน knockd ขั้นต่ำที่เปิด SSH สำหรับที่อยู่ที่ทำการเคาะเป็นเวลา 10 วินาที เลือกพอร์ตของคุณเอง — อย่านำตัวอย่างที่เผยแพร่แล้วมาใช้ซ้ำ

[options]
    UseSyslog

[openSSH]
    sequence      = 7311:tcp,8822:tcp,9133:udp
    seq_timeout   = 10
    tcpflags      = syn
    start_command = /usr/sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
    cmd_timeout   = 10
    stop_command  = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
/etc/knockd.conf

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

  1. 1ประตูใหม่ › เริ่มจากเทมเพลต › ตัวอย่าง knockd จะใส่ลำดับ TCP สามพอร์ตและ SSH เป็นพอร์ตสำหรับตรวจสอบ; แทนที่พอร์ตด้วยพอร์ตของคุณ
  2. 2หรือ + › นำเข้าจากไฟล์ แล้วเลือก knockd.conf ของคุณ: แต่ละส่วนที่มีลำดับจะกลายเป็นประตู
  3. 3กำหนด IPv4 หรือ IPv6 สำหรับประตู หาก knockd ของเซิร์ฟเวอร์ฟังอยู่เพียงตระกูลเดียว
  4. 4แตะที่เคาะประตูทองเหลืองค้างไว้ ประตูจะแสดง ประตูแง้มอยู่ เมื่อพอร์ต 22 ตอบกลับ และ เปิด SSH จะส่งต่อคุณไปยังแอป SSH

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

คำถาม

ใช้งานกับ tcpflags = syn ของ knockd ได้หรือไม่

ได้ การเคาะ TCP แต่ละครั้งคือ SYN เพียงครั้งเดียว ซึ่งตรงกับสิ่งที่ tcpflags = syn นับพอดี

ฉันดูการเคาะเดียวกันเป็นคำสั่งได้หรือไม่

ได้ ตัวแก้ไขประตูจะแสดงการเคาะเป็นคำสั่ง knock สำหรับเทอร์มินัลของคุณ พร้อมให้วางได้ทันที

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