गैर-रूट उपयोगकर्ता को विशेषाधिकार प्राप्त पोर्ट पर सुनने की अनुमति कैसे दें?


11

मैं अपने लिनक्स बॉक्स पर एक गैर-रूट उपयोगकर्ता के रूप में चलाना चाहता हूं। इससे 514 पोर्ट को बांधना असंभव हो जाता है - क्योंकि यह एक विशेषाधिकार प्राप्त पोर्ट है। क्या कोई तरीका है जो मैं गैर-व्यवस्थापक उपयोगकर्ता को "foo" पोर्ट 514 पर सुनने की क्षमता प्रदान कर सकता हूं?

जवाबों:


10
setcap 'cap_net_bind_service=+ep' /path/to/syslogd

एक गैर-प्राचीन लिनक्स कर्नेल की आवश्यकता है ( 2.6.24 या बाद में)


3

आप कॉन्फ़िगर कर सकते हैं rinetd(सबसे अधिक उपलब्ध है, यदि सभी नहीं, वितरण के मानक रिपॉजिटरी) पोर्ट 514 और आगे के कनेक्शन को किसी अन्य पोर्ट (1024 से ऊपर, 1514 कहते हैं) को सुनने के लिए। इस तरह से गैर-विशेषाधिकार प्राप्त उपयोगकर्ता प्रक्रिया 1514 पर सुन सकती है और rinetdकनेक्शन को आगे बढ़ाएगी ताकि यह 514 पर सुनाई दे।

यह केवल टीसीपी कनेक्शन के लिए काम करेगा। यदि आपको यूडीपी (या कुछ और) इस तरह से या टीसीपी के बजाय समर्थन करने की आवश्यकता है, तो आप उसी प्रभाव को प्राप्त करने के लिए iptables अनुवाद नियमों का उपयोग कर सकते हैं।


ओह इतना आसान था। यह उबंटू में कैसे करना है, इस बारे में एक मार्गदर्शिका यहां दी गई है: ubuntugeek.com/…
इवान


2

एक अनपेक्षित पोर्ट पर सुनें और कनेक्शनों को रीडायरेक्ट करने के लिए iptables dnat का उपयोग करें।

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