फेडोरा 25 और पोर्ट 111 पर जो कुछ भी सुन रहा है उसे अक्षम करना


9

मुझे एक फेडोरा 25 x86_64 स्टैंड अकेले वर्कस्टेशन मिला है। पोर्ट 111 पर कुछ सुनाई दे रहा है (नैम्प स्कैन के साथ पहचाना गया):

$ sudo lsof -i :111
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd   1 root   36u  IPv4  15170      0t0  TCP *:sunrpc (LISTEN)
systemd   1 root   37u  IPv4  15171      0t0  UDP *:sunrpc
systemd   1 root   38u  IPv6  15172      0t0  TCP *:sunrpc (LISTEN)
systemd   1 root   39u  IPv6  15173      0t0  UDP *:sunrpc

मैंने निम्न कमांड के साथ पोर्ट पर सन गियर को निष्क्रिय कर दिया है:

$ sudo systemctl disable rpcbind
$ sudo systemctl disable sunrpc
Failed to disable unit: No such file or directory

रिबूट के बाद बंदरगाह अभी भी खुला है।

ऐसा प्रतीत होता है कि सन 111 पोर्ट 111 पर सुनना चाहता है या systemdअनुपयोगी सेवा को निष्क्रिय करने की मेरी इच्छा का सम्मान नहीं कर रहा है। या शायद कुछ और ...

मैं यह कैसे निर्धारित कर सकता हूं कि पोर्ट पर क्या सुनने की कोशिश की जा रही है, और मैं इसे कैसे अक्षम करूं?


नीचे से:

$ sudo systemctl -a | grep -E "rpc|port"
  var-lib-nfs-rpc_pipefs.mount          loaded    active   mounted   RPC Pipe File System
  abrtd.service                         loaded    active   running   ABRT Automated Bug Reporting Tool
  auth-rpcgss-module.service            loaded    inactive dead      Kernel Module supporting RPCSEC_GSS
  fedora-import-state.service           loaded    active   exited    Import network configuration from initramfs
  fedora-readonly.service               loaded    active   exited    Configure read-only root support
  rpc-gssd.service                      loaded    inactive dead      RPC security service for NFS client and server
  rpc-statd-notify.service              loaded    inactive dead      Notify NFS peers of a restart
  rpc-statd.service                     loaded    inactive dead      NFS status monitor for NFSv2/3 locking.
● rpc-svcgssd.service                   not-found inactive dead      rpc-svcgssd.service
  rpcbind.service                       loaded    inactive dead      RPC Bind
  rpcbind.socket                        loaded    active   listening RPCbind Server Activation Socket
  rpc_pipefs.target                     loaded    active   active    rpc_pipefs.target
  rpcbind.target                        loaded    active   active    RPC Port Mapper

जवाबों:


8

आप समाप्त हो जाता है sudo systemctl disable rpcbindपर Fedora 25मुझे लगता है कि एक चेतावनी है:

Warning: Stopping rpcbind.service, but it can still be activated by:
rpcbind.socket

तो आप निम्नलिखित कोशिश कर सकते हैं:

sudo systemctl stop rpcbind.socket
sudo systemctl disable rpcbind.socket

1
जब मैं स्वयं इसका परीक्षण कर रहा था तो मुझे वह संदेश दिखाई नहीं दिया। मुझे लगता है कि समस्या rpcbind.service सक्षम नहीं है या पहली जगह में शुरू हुई है (डिफ़ॉल्ट रूप से, और जब तक यह सक्रिय न हो जाए)? इसलिए यह देखता है कि सेवा पहले से ही अक्षम है, और संदेश तक पहुंचने से पहले समाप्त हो जाती है। शायद सुधार किया जाना चाहिए।
sourcejedi

सुधार: मैंने वह संदेश नहीं देखा क्योंकि मैं केवल भागता था disable। संदेश केवल पर दिखाई देता है stop(और यह प्रकट होता है कि सेवा पहले से ही बंद है)। मैं अभी भी सहानुभूति रख सकता हूं लेकिन मुझे यकीन नहीं है कि इस अनुभव को बेहतर बनाने का सबसे अच्छा तरीका क्या होगा।
sourcejedi

8

यह सॉकेट सक्रियण है :)। और आपको शक होना सही था।

आपको अक्षम करने की आवश्यकता है rpcbind.socket। अक्षम करना rpcbind.service- जो systemctl disable rpcbindमानता है - उसका कोई प्रभाव नहीं है।

साथ ही, disableयहां केवल वही प्रभाव पड़ेगा जो बूट समय पर होता है। इसलिए यदि आप तत्काल परिवर्तन देखना चाहते हैं, तो आप भी भागना चाहते हैं systemctl stop rpcbind.socket

EDIT: यह प्रश्न मुझे बहुत समान लगता है। जेफ स्कॉलर बताते हैं कि आप कमांड का उपयोग systemctl list-socketsउन पोर्ट और सेवाओं को देखने के लिए कर सकते हैं जो systemdसॉकेट सक्रियण को लागू कर रहे हैं।


मैं वापस गया और एक नज़र देखा Fedora-Workstation-Live-x86_64-25-1.3.iso

Rpcbind.service शो की स्थिति indirect; vendor preset; disabled। (इसके अलावा Active: inactive (dead))। तो यह स्पष्ट अक्षम है (या रोक) यह फिर से कुछ भी नहीं बदलेगा।

मुझे लगता है कि indirectयहां अन्य इकाइयों के लिए देखने का एक संकेत है जो इस एक को सक्रिय करता है (जिसमें सॉकेट इकाइयों तक सीमित नहीं है)। एक बार सॉकेट यूनिट को भी बंद कर दिया जाता है, तो यह से बदल जाता indirectहै disabled

अजीब हिस्सा यह है कि सॉकेट यूनिट के रूप में दिखाता है enabled; vendor preset: disabled। इसका मतलब यह है कि फेडोरा 25 छवि में कुछ ने rpcbind.socket को सक्षम किया है, लेकिन यह /lib/systemd/system-preset/80-workstation.presetया द्वारा सक्षम नहीं किया गया था 90-default.preset। ऐसा लगता है कि https://fedoraproject.org/wiki/Packaging:DefaultServices पर वर्तमान (वर्तमान) नीति के खिलाफ है जो 90-default.preset से जुड़ा हुआ है -

यदि सेवा को डिफ़ॉल्ट रूप से सक्षम किया जाना चाहिए, तो इसे वितरण प्रीसेट फ़ाइलों में से एक में जोड़ा जाना चाहिए।

यह कुछ बिंदु पर हल हो गया है। rpcbind.socketमें अब सक्षम नहीं है Fedora-Workstation-Live-x86_64-28-1.1.iso

(इसका मतलब यह नहीं है कि फेडोरा 25 डिस्क से स्थापित सिस्टम पर आरपीसीबीइंड / पोर्ट 111 स्वचालित रूप से नेटवर्क से सुलभ है। इंस्टॉल में एक फ़ायरवॉल भी शामिल है जो पोर्ट 111 को अनुमति नहीं देता है)


साभार @sourcejedi अक्षम करना sunrpcऔर rpcbindश्रोता को रोकना नहीं था।

@jww आपको
sourcejedi

साभार @sourcejedi मुझे काम करने के लिए मिल गया है इसलिए मेरे पास अभी इस गहरे में खुदाई करने का समय नहीं है। आपने मेरा उत्थान किया। लोग सालों से

2
या xkcd.com/1172
gsc

1
@jww सॉकेट सक्रियण मेरे कम से कम unfavourite systemd सुविधाओं में से एक है; यह वास्तव में बहुत मायने रखता है। (क्या मतलब नहीं है कि उन्हें सामान्य सेवाओं के लिए अलग से वर्गीकृत किया जाना है)
user253751

4

पोर्ट 111 पोर्टमैप से जुड़ा हुआ है । यदि आप NFS के अवसरों का उपयोग करते हैं तो आपको इसकी आवश्यकता होगी। आप systemctl -a | grep -E "rpc|port"संबंधित सेवा का नाम देखने के लिए और इसे निष्क्रिय करने के लिए उपयोग कर सकते हैं (मेरे पास उस समय फेडोरा बॉक्स तक पहुंच नहीं है)।


1
उत्पादन के 13 लाइनों के माध्यम से देखने के लिए शोर की तरह, और उत्पादन सीधे tty तक पहुँचने में सक्षम नहीं होने से ग्रस्त है।
sourcejedi

0

यह पोर्ट पैकेज nfsसे स्थापित सेवा द्वारा सक्रिय किया गया है nfs-utils। यदि आपको इसकी आवश्यकता नहीं है तो आप इसे बेहतर तरीके से अनइंस्टॉल कर देंगे। nfs-utilsऔर iscsi-initiator-utilsआमतौर पर libvirtपैकेज की निर्भरता के रूप में स्थापित होते हैं । दोनों पैकेज बहुत सारी सेवाओं और सॉकेट्स को सक्रिय करते हैं जो आप नहीं चाहते थे। इस आदेश का उपयोग अक्षम nfsऔर iscsi-initiator-utilsसेवाओं के लिए किया जा सकता है ।

systemctl disable nfs-client.target
systemctl stop nfs-client.target
systemctl disable rpcbind.socket
systemctl stop rpcbind.socket
systemctl stop rpc_pipefs.target
systemctl stop rpcbind.target
systemctl stop rpcbind.service
systemctl disable rpcbind.service
systemctl stop var-lib-nfs-rpc_pipefs.mount
systemctl stop proc-fs-nfsd.mount 
systemctl disable gssproxy.service
systemctl stop gssproxy.service
modprobe -r sunrpc
systemctl disable iscsid.socket
systemctl stop iscsid.socket
systemctl disable iscsiuio.socket
systemctl stop iscsiuio.socket
systemctl disable iscsid.service
systemctl stop iscsid.service
systemctl disable iscsiuio.service
systemctl stop iscsiuio.service
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.