การเคาะพอร์ต MikroTik จาก iPhone, iPad และ Mac
RouterOS ไม่มี knock daemon แต่ไฟร์วอลล์สามารถจัดลำดับการเคาะผ่าน address lists ได้: แต่ละแพ็กเก็ตที่ตรงเงื่อนไขจะเพิ่มต้นทางลงในรายการ และรายการสุดท้ายจะเปิด Winbox หรือ SSH Secret Knock ส่งการเคาะ MikroTik ได้ทั้งสองประเภท — พอร์ตและขนาด ping
เคาะด้วยพอร์ต
ความพยายามเชื่อมต่อสามครั้งตามลำดับจะย้ายที่อยู่จากรายการหนึ่งไปยังอีกรายการหนึ่ง โดยมีเพียงที่อยู่ในรายการสุดท้ายเท่านั้นที่เข้าถึง Winbox (8291) ได้ วางกฎเหล่านี้ไว้เหนือกฎใดก็ตามที่ทิ้งทราฟฟิกขาเข้า
/ip firewall filter
add chain=input protocol=tcp dst-port=4311 action=add-src-to-address-list \
address-list=knock-1 address-list-timeout=10s comment="knock 1"
add chain=input protocol=tcp dst-port=5822 src-address-list=knock-1 \
action=add-src-to-address-list address-list=knock-2 address-list-timeout=10s comment="knock 2"
add chain=input protocol=udp dst-port=6133 src-address-list=knock-2 \
action=add-src-to-address-list address-list=knocked address-list-timeout=1h comment="knock 3"
add chain=input protocol=tcp dst-port=8291 src-address-list=knocked action=accept comment="Winbox after the knock"
add chain=input protocol=tcp dst-port=8291 action=drop comment="Winbox for everyone else" เคาะด้วยขนาด ping
RouterOS ยังสามารถจับคู่ขนาดของคำขอ ICMP echo ได้ด้วย packet-size คือขนาดของแพ็กเก็ต IPv4 ทั้งหมด: ส่วนหัว IP 20 ไบต์ ส่วนหัว ICMP 8 ไบต์ และข้อมูล ping ดังนั้นข้อมูลขนาด 100 ไบต์จึงมาถึงเป็น 128 ไบต์ ในตัวแก้ไข ping ของ Secret Knock คุณป้อนขนาดข้อมูล แล้วแอปจะแสดงขนาดแพ็กเก็ต ICMP, IPv4 และ IPv6 ที่ได้ พร้อมเตือนเมื่อเกิน 1280 ไบต์ ซึ่งแพ็กเก็ตอาจถูกแบ่งส่วน
/ip firewall filter
add chain=input protocol=icmp packet-size=128 action=add-src-to-address-list \
address-list=ping-1 address-list-timeout=10s comment="ping 100 bytes of data"
add chain=input protocol=icmp packet-size=308 src-address-list=ping-1 \
action=add-src-to-address-list address-list=knocked address-list-timeout=1h comment="ping 280 bytes of data"
add chain=input protocol=tcp dst-port=8291 src-address-list=knocked action=accept
add chain=input protocol=tcp dst-port=8291 action=drop เพิ่มประตูในแอป
- 1ประตูใหม่ › เริ่มจากเทมเพลต › ลำดับพอร์ต MikroTik หรือขนาด ping MikroTik ทั้งสองแบบตั้งค่า Winbox (8291) เป็นพอร์ตที่จะตรวจสอบ
- 2ป้อนพอร์ตของคุณ หรือขนาดข้อมูลและจำนวนครั้งของ ping
- 3เคาะ รอให้ประตูแง้มอยู่ แล้วเปิด Winbox
ตัวอย่างทั้งหมดบน GitHub → การกำหนดค่าทุกรายการในหน้านี้ พร้อมให้คัดลอก: github.com/mobilcomm/secretknock-examples (สาธารณสมบัติ)
คำถาม
เหตุใดการเคาะ MikroTik ของฉันจึงไม่เปิด?
ตรวจสอบลำดับของกฎ (กฎสำหรับการเคาะต้องมาก่อนกฎที่ทิ้งแพ็กเก็ต) ระยะหมดเวลาของ address-list และตรวจสอบว่าเราเตอร์เห็นที่อยู่ต้นทางที่คุณใช้เคาะ — Secret Knock จะแสดงที่อยู่นั้นบนหน้าจอหลัก
คู่มือสำหรับการตั้งค่าของคุณ
- อธิบาย Port knocking →
- knockd บน iPhone, iPad และ Mac →
- fwknop SPA บน iPhone, Mac และ Apple Watch →
- การเคาะพอร์ต DrayTek Vigor →
- ซ่อน SSH ไว้หลังการเคาะพอร์ต →
- การเคาะพอร์ตบน Apple Watch →
- เหตุใดการเคาะพอร์ตจึงไม่เปิด →
- ตัวอย่าง knockd.conf →
- การตั้งค่าเซิร์ฟเวอร์ fwknop →
- Port knocking, VPN หรือ fail2ban? →