
icmptunnel
icmptunnel هي أداة لنقل حركة مرور IP داخل حزم طلب واستجابة صدى ICMP (ping). وهي مصممة لتجاوز جدران الحماية بطريقة شبه خفية، على سبيل المثال عند التنقل داخل شبكة يُسمح فيها بـ ping. قد تكون مفيدة أيضًا للخروج من شبكة الشركة إلى الإنترنت، على الرغم من أنه من الشائع جدًا أن تتم تصفية حركة مرور صدى ICMP عند محيط الشبكة.
في حين أن هناك بعض الأدوات الموجودة التي تنفذ هذه التقنية، فإن icmptunnel يوفر بروتوكولًا أكثر موثوقية وآلية للنفق عبر جدران الحماية ذات الحالة (stateful firewalls) وNAT.
تستخدم الأداة ملف Makefile بسيطًا للتجميع والتثبيت.
استخدم make لتجميع icmptunnel.
أولاً، قم بتعطيل استجابات صدى ICMP على كل من العميل والخادم. يمنع هذا النواة من الاستجابة لحزم ping بنفسها.
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
على جانب الخادم، ابدأ icmptunnel في وضع الخادم، وعيّن عنوان IP لواجهة النفق الجديدة.
# ./icmptunnel –s
opened tunnel device: tun0
(ctrl-z)
# bg
# /sbin/ifconfig tun0 10.0.0.1 netmask 255.255.255.0
على جانب العميل، وجّه icmptunnel إلى الخادم، وعيّن عنوان IP.
# ./icmptunnel <server>
opened tunnel device: tun0
connection established.
(ctrl-z)
# bg
# /sbin/ifconfig tun0 10.0.0.2 netmask 255.255.255.0
عند هذه النقطة، يجب أن يكون لديك نفق نقطة-إلى-نقطة يعمل عبر حزم ICMP. جانب الخادم هو 10.0.0.1، وجانب العميل هو 10.0.0.2. على العميل، جرّب الاتصال بالخادم عبر SSH:
# ssh [email protected]
Password:
لاستخدام الخادم البعيد كخادم وكيل SOCKS مشفّر:
# ssh -D 8080 -N [email protected]
Password:
الآن وجّه متصفح الويب إلى خادم SOCKS المحلي.
انظر ./icmptunnel -h للحصول على قائمة الخيارات.
يرجى الإبلاغ عن أي أخطاء على صفحة المشروع على Github: