लिनक्स में पोर्ट कैसे खोलें
लिनक्स उबंटू उबंटू मूल बातें नायक / / March 02, 2022
अंतिम बार अद्यतन किया गया
यदि आप किसी पीसी या सर्वर से बाहरी कनेक्शन की अनुमति देना चाहते हैं, तो आपको सही पोर्ट खोलने की आवश्यकता होगी। लिनक्स उपयोगकर्ता इस सहायक मार्गदर्शिका का उपयोग करके पोर्ट खोल सकते हैं।
किसी बाहरी पीसी या सर्वर से कनेक्ट करने की आवश्यकता है—या आपसे कनेक्ट करने के लिए किसी अन्य पीसी या सर्वर की आवश्यकता है? यदि आप लिनक्स चला रहे हैं, तो आपको यह सुनिश्चित करना होगा कि सही पोर्ट खुला है।
जबकि अन्य ऑपरेटिंग सिस्टम में आमतौर पर इसके लिए कुछ ग्राफिकल टूल होते हैं, लिनक्स इतना आसान नहीं है। हम आपको नीचे लिनक्स में पोर्ट खोलने के तरीके के बारे में बताएंगे।
एक बंदरगाह क्या है और मुझे इसे खोलने की आवश्यकता क्यों होगी?
पोर्ट नेटवर्क पर एक अंतिम बिंदु है। इसे एक दरवाजे की तरह समझें जो किसी विशेष कमरे या बाहरी दुनिया की ओर जाता है, लेकिन आपके कंप्यूटर पर। इंटरनेट पर आप जो कुछ भी करते हैं वह एक विशेष पोर्ट या पोर्ट की श्रृंखला का उपयोग करता है।
उदाहरण के लिए, मान लें कि आप अपना खुद का Minecraft सर्वर चलाना चाहते हैं। ऐसा करने के लिए, आपको उपयोगकर्ताओं को इसके माध्यम से कनेक्ट करने के लिए एक पोर्ट खोलना होगा। वही आपके स्वयं के वेब, मेल, या FTP सर्वर को चलाने पर लागू होगा।
बंदरगाह हैं सभी नेटवर्क से जुड़े में मानकीकृत उपकरण। पहले 1,024 पोर्ट (0 से 1023 तक) को के रूप में संदर्भित किया जाता है प्रसिद्ध पोर्ट नंबर. वे HTTP और HTTP (क्रमशः पोर्ट 80 और 443) और SSH (पोर्ट 22) जैसी सबसे अधिक उपयोग की जाने वाली सेवाओं के लिए आरक्षित हैं।
1024 से ऊपर के पोर्ट नंबरों को कहा जाता है क्षणिक बंदरगाह, और आम तौर पर आपके ऑनलाइन गेमिंग, निजी वेब सर्वर आदि के लिए उपयोग करने के लिए उपलब्ध हैं। पोर्ट नंबर 1024 से 49151 को कहा जाता है दर्ज कराई या उपयोगकर्ता बंदरगाह, जबकि 49152 से 65535 तक के लोगों को. के रूप में जाना जाता है गतिशील या निजी बंदरगाह.
लिनक्स पर ओपन पोर्ट्स की सूची बनाना
इससे पहले कि आप लिनक्स पर एक पोर्ट खोलने का प्रयास करना शुरू करें, आपको यह सुनिश्चित करना चाहिए कि यह पहले से उपयोग में नहीं है। आप इसे का उपयोग करके पूरा कर सकते हैं नेटस्टैट कमांड, अधिकांश लिनक्स वितरणों में शामिल है। यदि आपके वितरण में नहीं है नेटस्टैट, आप उपयोग कर सकते हैं एस एस बजाय।
नेटस्टैट -lntu.
यह सभी सुनने वाले सॉकेट को प्रिंट करेगा (-एल), पोर्ट नंबर के साथ (-एन). इसमें टीसीपी पोर्ट (-टी) साथ ही यूडीपी (यू). यदि आपके सिस्टम में नहीं है नेटस्टैट, महज प्रयोग करें एस एस समान मापदंडों के साथ।
एसएस - एलएनटीयू।
लिनक्स में पोर्ट कैसे खोलें
इस उदाहरण के लिए, हम मान लेंगे कि हम पोर्ट 4000 से TCP कनेक्शन खोलना चाहते हैं। हमें पहले यह सुनिश्चित करने की आवश्यकता है कि पोर्ट पहले से उपयोग में नहीं है। हम इसके माध्यम से करते हैं नेटस्टैट या एस एस.
नेटस्टैट -ना | ग्रेप: 4000। एसएस -ना | ग्रेप: 4000।
आउटपुट को खाली मानते हुए, हम सिस्टम के फ़ायरवॉल में उपयुक्त पोर्ट नियम जोड़ सकते हैं। इसके लिए तरीके आपके वितरण के आधार पर अलग-अलग होंगे और क्या यह नए का उपयोग करता है यूएफडब्ल्यूई फ़ायरवॉल या फायरवॉल. उबंटू के पक्ष मेंयूएफडब्ल्यूई, जबकि CentOS आमतौर पर उपयोग करता हैफायरवॉल बजाय। बेशक, पुराने का उपयोग करके अभी भी कुछ लिनक्स वितरण हैं आईपीटेबल्स फायरवॉल।
उबंटू उपयोगकर्ताओं और अन्य ufw फ़ायरवॉल-आधारित सिस्टम के लिए
पुराने का उपयोग करने के बजाय आईपीटेबल्स फ़ायरवॉल, उबंटू और कुछ अन्य वितरण उपयोग करते हैं यूएफडब्ल्यूई. इन सिस्टम के तहत, निम्न कमांड पोर्ट को खोलेगा।
सुडो यूएफडब्ल्यू 4000 की अनुमति दें।
अगले कुछ चरणों को छोड़ दें, और यह सुनिश्चित करने के लिए अपने नए खुले पोर्ट का परीक्षण करें कि यह काम कर रहा है।
CentOS और अन्य फ़ायरवॉल-आधारित सिस्टम का उपयोग करके Linux में पोर्ट कैसे खोलें
यदि आपका सिस्टम उपयोग करता है फायरवॉल, आपका सबसे अच्छा दांव का उपयोग करना है फ़ायरवॉल-cmd नियमों को अद्यतन करने का आदेश।
sudo फ़ायरवॉल-cmd --add-port=4000/tcp.
यह एक स्थायी परिवर्तन नहीं होगा, लेकिन हम एक बार पोर्ट का परीक्षण करने के बाद रीबूट करने के बाद नियमों को बनाए रखने के तरीके को कवर करेंगे।
अन्य लिनक्स वितरण के लिए
यदि आपके Linux सिस्टम में नहीं है यूएफडब्ल्यूई या फायरवॉल, आपको उपयोग करने की आवश्यकता होगी आईपीटेबल्स. यदि यह स्थापित नहीं है, तो आगे बढ़ें और अपनी पसंद के पैकेज प्रबंधक का उपयोग करके इसे प्राप्त करें। एक बार यह स्थापित हो जाने के बाद, यह आदेश पोर्ट 4000 खोलेगा:
sudo iptables -A INPUT -p tcp --dport 4000 -j ACCEPT. sudo सेवा iptables पुनरारंभ करें।
यदि आपका सिस्टम उपयोग करता है सिस्टमसीटीएल, दूसरी कमांड को इसके साथ बदलें:
sudo systemctl iptables को पुनरारंभ करें।
कनेक्शन के लिए नए खुले बंदरगाहों का परीक्षण
अगला, हमें यह सुनिश्चित करने के लिए पोर्ट का परीक्षण करना चाहिए कि यह कनेक्शन स्वीकार करता है। हम नेटकैट का उपयोग करके ऐसा करते हैं (एनसी) पोर्ट को सुनने के लिए, फिर उसे टेलनेट करने का प्रयास करना।
सबसे पहले, एक टर्मिनल विंडो खोलें और यह आदेश जारी करें:
सुडो एलएस | एनसी-एल-पी 4000।
इसे चालू (सुनना) छोड़ दें और दूसरी टर्मिनल विंडो खोलें। उस विंडो में, आप कनेक्टिविटी का परीक्षण करने के लिए टेलनेट का उपयोग करेंगे। यदि टेलनेट स्थापित नहीं है, तो अपने पैकेज मैनेजर का उपयोग करके ऐसा करें।
टेलनेट [होस्टनाम/आईपी पता] [पोर्ट नंबर]
बदलने के [होस्टनाम/आईपी पता] आपके सिस्टम के आईपी पते के साथ, और [पोर्ट संख्या] आपके द्वारा खोले गए पोर्ट नंबर के साथ।
टेलनेट लोकलहोस्ट 4000.
आपको नीचे उस तरह का आउटपुट देखना चाहिए, जो एक खुले कनेक्शन को दर्शाता है एनसी.
हम यह भी दिखा सकते हैं कि बंदरगाह खुला है एनएमएपी. दोबारा, यदि आदेश पहले से स्थापित नहीं है, तो इसे पुनर्प्राप्त करने के लिए अपने पैकेज प्रबंधक का उपयोग करें।
नैम्प लोकलहोस्ट -पी 4000।
ध्यान दें कि एनएमएपी केवल खुले बंदरगाहों को सूचीबद्ध करेगा जो कनेक्शन के लिए सुन रहे हैं। इसलिए हम उस पोर्ट पर सुनने के लिए नेटकैट का उपयोग परीक्षण के लिए करते हैं। अन्यथा, पोर्ट खुले होने के रूप में पंजीकृत नहीं होगा।
मैं अभी-अभी खोले गए पोर्ट से कनेक्ट नहीं हो सकता, अब क्या?
यदि आप ऊपर दिए गए सभी चरणों से गुजरते हैं और पोर्ट से कनेक्शन प्राप्त नहीं कर सकते हैं, तो अपनी टाइपिंग की दोबारा जांच करें। यदि आप सुनिश्चित हैं कि आपने सब कुछ सही ढंग से दर्ज किया है, तो संभावना है कि आपको ट्रैफ़िक की अनुमति देने के लिए अपने नेटवर्क राउटर को फिर से कॉन्फ़िगर करना होगा।
चूंकि प्रत्येक नेटवर्क राउटर में अलग-अलग कॉन्फ़िगरेशन स्क्रीन होते हैं, इसलिए आपको अपने विशेष उपकरण के लिए समर्थन पृष्ठ या उपयोगकर्ता के मैनुअल से परामर्श लेना चाहिए। आपको पोर्ट फ़ॉरवर्डिंग या पोर्ट मैपिंग सेटिंग्स के साथ-साथ राउटर द्वारा उपयोग किए जाने वाले किसी भी अंतर्निहित फ़ायरवॉल की जांच करनी होगी।
लिनक्स में पोर्ट को स्थायी रूप से कैसे खोलें
एक बार जब आप अपने खुले बंदरगाह का परीक्षण कर लेते हैं और सुनिश्चित कर लेते हैं कि यह काम कर रहा है, तो आप शायद बदलाव को स्थायी बनाना चाहेंगे। अन्यथा, रिबूट के बाद परिवर्तन आसपास नहीं रह सकते हैं। यदि आप एक उबंटू उपयोगकर्ता हैं, या अन्यथा इसका उपयोग करें यूएफडब्ल्यूई फ़ायरवॉल, आपको इसके बारे में चिंता करने की ज़रूरत नहीं है। यूएफडब्ल्यूई नियम रिबूट पर रीसेट नहीं होते हैं।
फायरवॉल उपयोगकर्ताओं के लिए
रीबूट के बाद पोर्ट नियम बनाना आसान है फायरवॉल. बस जोड़ें -स्थायी अपने आरंभिक कमांड को फ़्लैग करें, और इसे स्टार्टअप पर आपके Linux सिस्टम के फ़ायरवॉल नियमों में शामिल किया जाएगा।
sudo फ़ायरवॉल-cmd --add-port=4000/tcp --permanent.
यदि आप अभी भी iptables का उपयोग कर रहे हैं
आईपीटेबल्स फ़ायरवॉल बहुत अधिक परेशानी भरा है (शायद अपग्रेड करने का एक अच्छा कारण फायरवॉल या यूएफडब्ल्यूई). पोर्ट को "स्थायी रूप से" खोलने के लिए आईपीटेबल्स, आप स्थापित कर सकते हैं iptables-लगातार मदद के लिए पैकेज।
जब आप पहली बार स्थापित करते हैं iptables-लगातार डेबियन-आधारित सिस्टम पर, यह आपके मौजूदा नियमों को या तो सहेज लेगा /etc/iptables/rules.v4 या /etc/iptables/rules.v6. नए नियम जोड़ने के लिए, आप निम्न आदेश जारी करेंगे:
sudo iptables-save > /etc/iptables/rules.v4.
या
sudo iptables-save > /etc/iptables/rules.v6.
आरपीएम-आधारित लिनक्स वितरण चलाने वालों के लिए, यह थोड़ा अलग है। पैकेज कहा जाता है iptables-सेवाएं, और सेव फाइल्स हैं /etc/sysconfig/iptables तथा /etc/sysconfig/ip6tables.
RPM-आधारित वितरण पर, IPv6 पोर्ट के लिए एक अलग कमांड का उपयोग किया जाता है। अपने नियमों को सहेजना इन दो आदेशों में से किसी एक का उपयोग करके किया जाता है:
sudo iptables-save > /etc/sysconfig/iptables. sudo ip6tables-save > /etc/sysconfig/iptables.
अपने पोर्ट उपयोग की निगरानी करना सुनिश्चित करें
जैसे-जैसे समय बीतता है, आपके सर्वर की जरूरतें बदल सकती हैं। जैसा आपको करना चाहिए उपयोगकर्ता खातों की जानकारी रखें अपने Linux मशीन पर, आपको नियमित रूप से अपने खुले बंदरगाहों का भी ऑडिट करना चाहिए। किसी भी खुले पोर्ट को बंद करें जिसकी अब आवश्यकता नहीं है। साथ ही नियमित रूप से आपके पासवर्ड में बदलाव, यह एक अच्छा सुरक्षा अभ्यास है जो आपको सिस्टम घुसपैठ और सुरक्षा कारनामों से बचने में मदद करेगा।