সাধারণত কিছু অনুরূপ iptables
। মূলত, আমি আইপিগুলিতে রাখার মতো ডোমেন ফিল্টারিং / হোয়াইটলিস্টিং / ব্ল্যাকলিস্টিং করতে চাই iptables
। এটি কীভাবে করবেন সে সম্পর্কে কোনও সুপারিশ রয়েছে?
সাধারণত কিছু অনুরূপ iptables
। মূলত, আমি আইপিগুলিতে রাখার মতো ডোমেন ফিল্টারিং / হোয়াইটলিস্টিং / ব্ল্যাকলিস্টিং করতে চাই iptables
। এটি কীভাবে করবেন সে সম্পর্কে কোনও সুপারিশ রয়েছে?
উত্তর:
আপনি যদি iptables নিয়মগুলির সাথে নাম রেজোলিউশন ব্যবহার করে ট্র্যাফিকটি বাদ দেন তবে সেই নিয়মটি তৈরি করার সময় নামগুলি সমাধান করা হবে। কিছু পরিবর্তন হলে আপনি নিয়মটি আর বৈধ হবে না। এটি সমাধান হতে পারে (কোনও বিউটিফুল নয় ...):
# iptables -I FORWARD -p udp --dport 53 -m string --hex-string "|03|www|08|facebook|03|com" --algo bm -j DROP
ল্যানের ভিতরে অন্য একটি হোস্ট থেকে:
# host www.facebook.com
www.facebook.com A record not found, try again
মূলত, আপনি প্রতিটি ডিএনএস প্যাকেটকে বলছেন ( udp/53
) যেগুলি হেক্সাডেসিমাল স্ট্রিংটি www.facebook.com to
বাদ পড়বে। নোট করুন যে এটি নামের রেজোলিউশনটি ফেলে দেবে, এবং এটি নিজেই http ট্র্যাফিক নয়।
পাইপ ( |03|www|08|facebook|03|com
) দিয়ে পৃথক করা হেক্স নম্বরগুলি .
ডিএনএস কোয়েরিতে ডট সিমবলের উপস্থাপনা । এটি বলবে যে নীচের চ্যারিটারগুলির মধ্যে কতগুলি এফকিউডিএন (হোস্ট, ডোমেন, শীর্ষ-স্তরের ডোমেন) এর প্রতিটি অংশকে উপস্থাপন করবে উদাহরণ:
হোস্ট: mail.google.com
হেক্স প্রতিনিধিত্ব: 04 6d 61 69 6c 06 67 6f 6f 67 6c 65 03 63 6f 6d
"চাক্ষুষ উপস্থাপনা: 04mail06google03com
Tcpdump দিয়ে প্যাকেটটি পাওয়া:
# tcpdump -i eth0 -X dst port 53
15:50:11.643672 IP xxx.xxx.xxx.xxx:xxx > ns4.google.com.domain: 16530 A? mail.google.com. (33)
0x0000: 4500 003d 779a 4000 4011 b390 c949 4742 E..=w.@.@....IGB
0x0010: d8ef 260a 8424 0035 0029 0fc0 4092 0000 ..&..$.5.)..@...
0x0020: 0001 0000 0000 0000 046d 6169 6c06 676f .........mail.go
0x0030: 6f67 6c65 0363 6f6d 0000 0100 01 ogle.com.....
কিন্তু মনে রেখ:
হতে পারে আপনার প্রশ্নের উত্তর খুব দেরিতে হয়েছে, তবে সম্প্রতি আমার একটি অনুরূপ সমস্যা সমাধান করা দরকার এবং গুগল আমাকে এখানে এনেছে
ব্যর্থ অনুসন্ধানের পরে আমি সিতে একটি ছোট্ট ইউটিলিটি লিখেছিলাম যা ডিএনএস-প্রতিক্রিয়াগুলিকে বাধা দেয়, এতে থাকা ডোমেন নামকে প্রদত্ত রেইগেক্সের সাথে তুলনা করে এবং মেলে আইপি অ্যাড্রেসের তালিকা করে lists এটি এখানে: https://github.com/vmxdev/sidmat/
আপনার নিজের ডিএনএস সার্ভার সেট আপ করার দরকার নেই, ইউটিলিটি কোনও সার্ভার থেকে ডিএনএস প্রতিক্রিয়া ধরতে পারে
উদাহরণস্বরূপ, ফেসবুক.কম (এবং সাবডোমেনস) আইপি অ্যাড্রেসগুলি দেখতে এখনই চালানো যেতে পারে
# ./sidmat eth0 "^facebook\.com$|\.facebook\.com$"
173.252.120.6
...
যেখানে eth0 রাউটারে নেটওয়ার্ক ইন্টারফেস (বা যেখানে ডিএনএস প্রতিক্রিয়াগুলি পাস হয়)
আপনি এটিকে সহজেই আইপটিবলগুলির সাথে সংহত করতে পারেন (বা আইপসেটের সাথে আইপেটেবলস)
কিন্তু:
কালো তালিকাভুক্ত করার সবচেয়ে সহজ উপায় হ'ল সম্ভবত ডিএনএসম্যাস্ক ব্যবহার করা
ইনস্টল করুন dnsmasq
$ sudo apt-get install dnsmasq
এবং এই লাইন যুক্ত করুন /etc/dnsmasq.conf
address=/facebook.com/127.0.0.1
এটি ফেসবুক.কম এবং এর সমস্ত সাবডোমেনগুলি ব্লক করবে ।
দ্রষ্টব্য: উবুন্টুর জন্য এই পোস্টটি দেখুন ।
লোকাল ক্যাশে বাইন্ড 9 চালানো থাকলে এটি প্রায়শই উপলব্ধি হয় dummy-block
zone "facebook.com" { type master; file "dummy-block"; };
এবং dummy-block
ফাইল:
$TTL 604800
@ IN SOA localhost. root.localhost. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS localhost.
@ IN A 127.0.0.1
* IN A 127.0.0.1
আরো দেখুন:
BIND9 এবং আইএসসি-, DHCP চলমান সঙ্গে facebook.com
উদাহরণ।
ওয়েব বিজ্ঞাপন ব্লক করার জন্য একটি সাধারণ ডিএনএস ভিত্তিক পদ্ধতি