IPTables: आउटगोइंग MySQL कनेक्शन की अनुमति दें लेकिन आने वाले कनेक्शन की नहीं


10

मेरे पास एक सर्वर है जो बाहरी स्रोतों से mysql को कनेक्शन की अनुमति नहीं देता है - मेरे सभी डेटाबेस और कनेक्शन स्थानीयहोस्ट पर आते हैं। Iptables की डिफ़ॉल्ट नीति किसी भी पोर्ट के लिए कनेक्शन को छोड़ना है जिसे मैं निर्दिष्ट नहीं करता (वर्तमान में मेरे पास पोर्ट नहीं है 3306 मेरे iptable नियमों में निर्दिष्ट है, इसलिए इस पोर्ट के सभी कनेक्शन हटा दिए गए हैं)।

यह ठीक है, लेकिन अब मैं अमेज़न आरडीएस पर बाहरी रूप से स्थित mysql डेटाबेस से जुड़ना चाहूंगा।

पोर्ट 3306 को बाहरी दुनिया में इस प्रकार खोला जा सकता है:

iptables -t filter -A INPUT -p tcp --sport 3306 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 3306 -j ACCEPT

यह मुझे अमेज़ॅन आरडीएस पर डेटाबेस से कनेक्ट करने की अनुमति देता है, हालांकि यह मेरे सर्वर पर डेटाबेस से दूरस्थ कनेक्शन की भी अनुमति देता है।

मुझे अपने सर्वर को अमेज़ॅन पर डेटाबेस से कनेक्ट करने की अनुमति देने के लिए क्या करने की आवश्यकता है, लेकिन बाहरी कनेक्शन को अपने सर्वर पर डेटाबेस से प्रतिबंधित करें?

यह भी ध्यान रखें कि मेरे अमेज़ॅन आरडीएस उदाहरण का आईपी पता समय-समय पर बदल सकता है जो मुझे विश्वास है।


2
अमेज़ॅन से एक स्थिर आईपी प्राप्त करें और फिर एक श्वेतसूची स्थापित करें जो केवल उस आईपी को इनबाउंड / आउटपुट कनेक्शन के लिए अनुमति देता है?
पीटर

जवाबों:


17

राज्य इंजन का लाभ लें:

iptables -t filter -A OUTPUT -p tcp --dport 3306 -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 3306 -m state --state ESTABLISHED -j ACCEPT

या iptables के बाद के संस्करणों में

iptables -t filter -A OUTPUT -p tcp --dport 3306 -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 3306 -m conntrack --ctstate ESTABLISHED -j ACCEPT

यह वही है जो राज्य इंजन मौजूद है: यातायात को अनुमति दें जो विभिन्न मानदंडों (जैसे, प्रोटोकॉल, स्रोत पोर्ट) को पूरा करता है , लेकिन यह एक मौजूदा कनेक्शन का हिस्सा भी है (जैसा कि यह कनेक्शन को परिभाषित करता है )। TCP SYNअपशॉट यह है कि एक स्थानीय ephmeral पोर्ट से गंतव्य बंदरगाह 3306 पर एक विशेष बाहरी आईपी पते के लिए आउटगोइंग पैकेट, आईपी पते और पोर्ट नंबर के उस विशेष संयोजन के लिए एक राज्य तालिका प्रविष्टि बनाएगा, और केवल उसी संयोजन के साथ ट्रैफ़िक लौटाएगा पते और बंदरगाहों के माध्यम से और केवल उस कनेक्शन की अवधि के लिए अनुमति दी जाएगी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.