Iptables: "-p udp - স্টেট ESTABLISHED"


18

আসুন এই দুটি iptables নিয়মগুলি দেখুন যা প্রায়শই বহির্গামী ডিএনএসকে মঞ্জুরি দেওয়ার জন্য ব্যবহৃত হয়:

iptables -A OUTPUT -p udp --sport 1024:65535 --dport 53 
   -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT -p udp --sport 53 --dport 1024:65535
   -m state --state ESTABLISHED -j ACCEPT

আমার প্রশ্ন হ'ল ইউডিপিতে ESTABLISHED রাজ্যটি আমি ঠিক কীভাবে বুঝতে পারি? ইউডিপি রাষ্ট্রহীন।

এখানে আমার অন্তর্দৃষ্টি - আমি জানতে চাই, এটি বা কোথায় এটি ভুল:

ম্যান পেজটি আমাকে এই বলে:

অবস্থা

এই মডিউলটি যখন সংযোগ ট্র্যাকিংয়ের সাথে মিলিত হয়, তখন অ্যাক্সেসের অনুমতি দেয়
এই প্যাকেটের জন্য সংযোগ ট্র্যাকিং অবস্থা।

  --অবস্থা ...

সুতরাং, iptables মূলত বহির্গামী প্যাকেটের জন্য ব্যবহৃত পোর্ট নম্বরটি মনে রাখে (এটি কোনও ইউডিপি প্যাকেটের জন্য আর কী মনে করতে পারে?) এবং তারপরে প্রথম আগত প্যাকেটটি স্বল্প সময়ের মধ্যেই ফেরত পাঠানো অনুমতি দেয়? একজন আক্রমণকারীকে বন্দর নম্বরটি অনুমান করতে হবে (এটি কি খুব কঠিন হবে?)

দ্বন্দ্ব এড়ানো সম্পর্কে:

কার্নেলটি কোন বন্দরগুলি অবরুদ্ধ করা হয়েছে তা ট্র্যাক করে রাখে (হয় অন্য পরিষেবাগুলি দ্বারা বা পূর্ববর্তী বহির্গামী ইউডিপি প্যাকেটগুলি দ্বারা), যাতে এই বন্দরগুলি সময়সীমার মধ্যে নতুন বহির্গামী ডিএনএস প্যাকেটের জন্য ব্যবহার না করা হয়? (যদি আমি ঘটনাক্রমে সময়বালার মধ্যে সেই বন্দরে কোনও পরিষেবা শুরু করার চেষ্টা করি - তবে কী সেই প্রচেষ্টাটিকে অস্বীকার / অবরুদ্ধ করা হবে?)

উপরের লেখায় সমস্ত ত্রুটিটি খুঁজে বের করুন :-) ধন্যবাদ,

ক্রিস

উত্তর:


12

সুতরাং, iptables মূলত বহির্গামী প্যাকেটের জন্য ব্যবহৃত পোর্ট নম্বরটি মনে রাখে (এটি কোনও ইউডিপি প্যাকেটের জন্য আর কী মনে করতে পারে?),

উত্স এবং গন্তব্য পোর্টস এবং ঠিকানাগুলি সঞ্চিত আছে আমি ইউডিপির পক্ষে বেশ নিশ্চিত।

আপনি যদি রাষ্ট্রের টেবিলগুলি পরিদর্শন করতে চান তবে কনট্র্যাক এবং / অথবা নেটস্যাট্যাট-নাট ইনস্টল করুন।

(যদি আমি ঘটনাক্রমে সময়বালার মধ্যে সেই বন্দরে কোনও পরিষেবা শুরু করার চেষ্টা করি - তবে কী সেই প্রচেষ্টাটিকে অস্বীকার / অবরুদ্ধ করা হবে?)

যেহেতু আপনি আউটপুট এবং ইনপুট ব্যবহার করছেন আপনি স্থানীয় পরিষেবা সম্পর্কে কথা বলছেন। ইতিমধ্যে বন্দরটি ব্যবহৃত হয়েছে আমি বিশ্বাস করি না যে আপনার সিস্টেম আপনাকে অন্য পরিষেবা শুরু করার অনুমতি দেবে কারণ ইতিমধ্যে সেই বন্দরে কিছু শোনা যাচ্ছে listening আমার ধারণা আপনি যদি প্রথম পরিষেবাটি বন্ধ করতে পারেন এবং অন্যটি শুরু করতে পারেন আপনি যদি সত্যিই চাইতেন তবে, সেক্ষেত্রে প্রতিক্রিয়াটি সম্ভবত আপনার পরিষেবায় আসবে। প্যাকেটের সাথে পরিষেবাটি কী করবে তা নির্ভর করে প্যাকেটের সামগ্রীগুলি কী এবং কী পরিষেবা।


সুতরাং আমি যদি ৮০৮০ বন্দরটিতে টমকেট উদাহরণটি বলতে শুরু করি, তবে আমার কাছে একটি 1: (65535-1023) সম্ভাবনা রয়েছে যে ঘটনাক্রমে একই বন্দরে কোনও ডিএনএস কোয়েরি চলমান থাকলে, প্রারম্ভটি ব্যর্থ হয়ে যাবে? অথবা সময়সীমার মেয়াদ শেষ না হওয়া পর্যন্ত এটি কি অপেক্ষা করবে? ডিফল্টরূপে টাইমফ্রেম কত দীর্ঘ?
ক্রিস Lerher

6
লিনাক্সে আমি বিশ্বাস করি ইফেমেরাল বন্দর পরিসরটি সাধারণত 32768-61000 (দেখুন / proc / sys / নেট / ipv4 / ip_local_port_range দেখুন) এটিতে আপনার 8080 উদাহরণ বন্দরটি অন্তর্ভুক্ত করা হবে না p পোর্টগুলিতে শোনার জন্য সেটআপ পরিষেবাগুলি সেটাকে খুব অস্বাভাবিক বলে মনে হয় s সাময়িক সীমার মধ্যে within টেবিলে কোনও ইউডিপি প্রবেশের সময়টি সাধারণত 30 সেকেন্ডের হয় (দেখুন /
প্রোক

2
+1 ধন্যবাদ, বিশেষত / প্রকল্পের জন্য!
ক্রিস Lerher

1
যদি কেউ ইউডিপিটাইমআউটআউটটি বাড়িয়ে দিতে চায় তবে ব্যবহার করুনecho "net.netfilter.nf_conntrack_udp_timeout = 180" >> /etc/sysctl.conf
কিরণ

8

নোট: এই উত্তরটি সম্পাদনা করা হয়েছে।

ম্যান পেজগুলি যা বলছে তা সত্ত্বেও এর ESTABLISHEDঅর্থ "রাষ্ট্রীয়" বলে মনে হচ্ছে। ইউডিপি-র জন্য এর অর্থ হ'ল কিছুটা সময়ের জন্য প্রতিটি আউটবাউন্ড ইউডিপি প্যাকেট ("এসসিআর আইপি, এসআরসি পোর্ট ডিএসটি আইপি, ডিএসটি পোর্ট" টিপল) স্মরণ করা এবং এর প্রতিক্রিয়াগুলি সনাক্ত করা।

এফডাব্লুআইডাব্লু, ডিএনএস ট্র্যাফিকের জন্য আমার সাধারণ নিয়মগুলি এই জাতীয় কিছু হবে:

# permit any outbound DNS request (NB: TCP required too)
iptables -A OUTPUT -p udp --sport 1024:65535 --dport 53  -j ACCEPT
iptables -A OUTPUT -p tcp --sport 1024:65535 --dport 53  -j ACCEPT

# accept any packet that's a response to anything we sent
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

যেমন OUTPUTচেইনে ট্র্যাফিক নিয়ন্ত্রণ করুন এবং তারপরে iptablesস্টেট মডিউলগুলি INPUTচেইনের সমস্ত কিছু পরিচালনা করতে দিন ।

আরও দেখুন এই সংশ্লিষ্ট প্রশ্ন


1
আমি সচেতন যে আমারও টিসিপিকে অনুমতি দেওয়া উচিত। তবে ইউডিপি-র সাথে সম্পর্কিত বলতে কী বোঝায়? মানচিত্র: "সম্পর্কিত অর্থ প্যাকেটটি একটি নতুন সংযোগ শুরু করছে, তবে একটি বিদ্যমান সংযোগের সাথে সম্পর্কিত, ..." ইউডিপির সংযোগ? সম্ভবত এটি ESTABLISHED এর চেয়ে আরও বেশি অর্থবোধ করে, তবে আমি এটি খুঁজে পেতে চাই।
ক্রিস Lerher

আমি যখন আপনার বিধিগুলি ব্যবহার করি তবে ইউডিপি আইএনপিউটকে সম্পর্কিত করে সীমাবদ্ধ রাখি তখন আমার ডিএনএস কোয়েরিগুলি কাজ করে না। দেখে মনে হচ্ছে আমাকে ESTABLISHED অনুমতি দিতে হবে। সম্পর্কিত (ইউডিপির জন্য) অনুমতি দেওয়ারও কি কোনও কারণ আছে?
ক্রিস Lerher

ঠিক আছে, মনে হচ্ছে ESTABLISHED এর অর্থ ম্যান পৃষ্ঠাটি যতটা বলবে তার চেয়ে বেশি। যে কোনও ইভেন্টে, আপনি যদি আমার মতো আউটপুট ফিল্টার ব্যবহার করেন এবং ইনবুনড ট্র্যাফিক গ্রহণ করেন না তবে সেই ইনপুট নিয়মটি কেবল আপনার প্রয়োজন হবে।
Alnitak

1
আমরা যা পেয়েছি তা প্রদত্ত, রিলেটেড ইউডিপি প্যাকেটগুলি আফাইকের অস্তিত্ব নেই। তবে (উদাহরণস্বরূপ) আপনি যদি কখনও সেই বাক্স থেকে আউটবাউন্ড এফটিপি করেন তবে আপনাকে ডেটা চ্যানেলের জন্য একটি সম্পর্কিত রাষ্ট্রীয় নিয়ম প্রয়োজন। একক "ইস্টাব্লিশড, রিলেটেড" নিয়মটি আফ্রিকের ট্র্যাফিক প্রবেশের জন্য সবচেয়ে অনুকূল একক নিয়ম।
Alnitak

1
আসলে, RELATEDআরটিপির জন্য ইউডিপি প্যাকেট উপস্থিত থাকতে পারে।
Alnitak

1

আইপটিবল ডেভেলপাররা বিবেচনা করেছেন যে দুটি ক্লায়েন্টের মধ্যে যেই প্রোটোকল থাকুক না কেন প্যাকেটগুলি উভয় দিকেই দেখা যায় যখন একটি "ESTABLISHED" অবস্থা ছিল।

রাষ্ট্রের বর্ধিতাংশ কন্ট্রাকের অংশ। কার্নেলটি টেবিল থেকে রাষ্ট্রটি বোঝে

/proc/net/nf_conntrack

প্রেরকের দৃষ্টিকোণ থেকে সারণি nf_conntrack এ UDP এর জন্য iptable রাজ্যের উদাহরণ। আসুন কল্পনা করুন আপনি ইউডিপিতে একটি ডিএনএস কোয়েরি প্রেরণ করেছেন

udp   17 20 src=192.168.1.2 dst=192.168.1.10 sport=35237 dport=53 \
 [UNREPLIED] src=192.168.1.10 dst=192.168.1.2 sport=53 \
 dport=35237 use=1

একটি প্যাকেট প্রেরণ করা হয়েছে। এটি অপ্রকাশিত এবং ওহ, বিনিময়ে কী প্রত্যাশা করা হয় তার জন্য টেবিলে ডেটা রয়েছে (ডিএনএস উত্তরের প্যাকেট)।

udp   17 20 src=192.168.1.2 dst=192.168.1.10 sport=35237 dport=53 \
  src=192.168.1.10 dst=192.168.1.2 sport=53 \
 dport=35237 use=1

উত্তরটি এসেছে, নিরবিচ্ছিন্ন পতাকাটি চলে গেছে, এর অর্থ এই UDP সংযোগটি আপনার সিস্টেমে সংজ্ঞায়িত অল্প সময়ের জন্য ESTABLISHED অবস্থায় রয়েছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.