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

ซ่อน SSH ไว้หลังการเคาะพอร์ต

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

ด้วย knockd และ nftables

ปฏิเสธ SSH โดยค่าเริ่มต้น และยอมรับเฉพาะจากที่อยู่ในชุดที่มีการหมดเวลา knockd จะเพิ่มที่อยู่ที่เคาะเข้าไปในชุดนั้น ส่วน nftables จะนำออกเมื่อหมดเวลา และเซสชัน SSH ที่สร้างไว้แล้วจะยังทำงานต่อไป

table inet filter {
    set knocked4 {
        type ipv4_addr
        flags timeout
    }
    chain input {
        type filter hook input priority 0; policy drop;
        ct state established,related accept
        iif "lo" accept
        tcp dport 22 ip saddr @knocked4 accept
    }
}
/etc/nftables.conf (บางส่วน)

ส่วนของ knockd ที่เติมข้อมูลลงในชุด:

[openSSH]
    sequence      = 7311:tcp,8822:tcp,9133:udp
    seq_timeout   = 10
    tcpflags      = syn
    start_command = /usr/sbin/nft add element inet filter knocked4 { %IP% timeout 30s }
/etc/knockd.conf

แยกการเข้าถึงถาวรออกต่างหาก

หากคุณอนุญาตบางที่อยู่แบบถาวรด้วย ให้เก็บไว้ในชุดแยกต่างหากที่ไม่มีการหมดเวลา การเพิ่มที่อยู่ที่อยู่ในชุดแบบมีเวลาหมดอายุอยู่แล้วจะไม่รีเซ็ตเวลาหมดอายุ ดังนั้นการรวมรายการทั้งสองประเภทไว้ในชุดเดียวอาจทำให้คุณเข้าใช้งานไม่ได้เมื่อหมดเวลา

หรือใช้ fwknop

fwknop SPA แข็งแกร่งกว่าลำดับการเคาะ: แพ็กเก็ตเดียวที่เข้ารหัสและยืนยันตัวตน ซึ่งไม่สามารถนำมาใช้ซ้ำได้ ดูคู่มือ fwknop

จาก iPhone ของคุณไปยัง SSH

  1. 1กดค้างที่ห่วงเคาะประตูทองเหลือง Secret Knock จะตรวจสอบว่าพอร์ต 22 ตอบกลับ และแสดงระยะเวลาที่พอร์ตจะยังเปิดอยู่
  2. 2เปิด SSH จะเปิดแอป SSH ของคุณด้วยลิงก์ ssh:// สำหรับเซิร์ฟเวอร์
  3. 3ตัวเลือก “เปิดประตูค้างไว้ขณะหน้าจอของประตูเปิดอยู่” จะเคาะอีกครั้งไม่นานก่อนช่วงเวลาจะสิ้นสุด ขณะที่ประตูแสดงอยู่บนหน้าจอ

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

คำถาม

นี่ใช้แทนคีย์ SSH ได้หรือไม่

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

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