Mam samodzielną stację roboczą Fedora 25 x86_64. Coś nasłuchuje na porcie 111 (identyfikowanym przez skanowanie nmap):
$ 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
Wyłączyłem sprzęt Sun na porcie za pomocą następujących poleceń:
$ sudo systemctl disable rpcbind
$ sudo systemctl disable sunrpc
Failed to disable unit: No such file or directory
Po ponownym uruchomieniu port jest nadal otwarty.
Wygląda na to, że inny sprzęt niż Sun chce nasłuchiwać na porcie 111. A może systemd
nie szanuje moich życzeń wyłączenia nieużywanej usługi. A może coś innego ...
Jak określić, co próbuje nasłuchiwać na porcie i jak to wyłączyć?
Od dołu:
$ 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
disable
. Komunikat pojawia się tylko nastop
(i pojawia się, jeśli usługa jest już zatrzymana). Nadal potrafię wczuć się, ale nie jestem pewien, jaki byłby najlepszy sposób na poprawę tego doświadczenia.To aktywacja gniazda :). I miałeś rację, że jesteś podejrzliwy.
Musisz wyłączyć
rpcbind.socket
. Wyłączenierpcbind.service
- cosystemctl disable rpcbind
zakłada - nie ma żadnego efektu.Tutaj również
disable
będzie miało wpływ tylko to, co dzieje się w czasie uruchamiania. Więc jeśli chcesz zobaczyć natychmiastową zmianę, również chcesz uruchomićsystemctl stop rpcbind.socket
.EDYCJA: To pytanie wygląda bardzo podobnie do mnie. Jeff Schaller wskazuje, że możesz użyć tego polecenia
systemctl list-sockets
, aby zobaczyć porty i usługi, któresystemd
implementują aktywację gniazd.Wróciłem i spojrzałem
Fedora-Workstation-Live-x86_64-25-1.3.iso
.Status rpcbind.service pokazuje
indirect; vendor preset; disabled
. (RównieżActive: inactive (dead)
). Jest więc jasne, że wyłączenie (lub zatrzymanie) ponownie niczego nie zmieni.Myślę, że
indirect
tutaj jest wskazówka, aby szukać innych jednostek, które aktywują tę (w tym między innymi jednostki gniazd). Po zatrzymaniu gniazda również zmienia się zindirect
nadisabled
.Dziwne jest to, że jednostka gniazda pokazuje jako
enabled; vendor preset: disabled
. Oznacza to, że coś włączyło rpcbind.socket w obrazie Fedory 25, ale nie zostało włączone przez/lib/systemd/system-preset/80-workstation.preset
lub90-default.preset
. Wygląda to na sprzeczne z (obecną) polityką na https://fedoraproject.org/wiki/Packaging:DefaultServices, do której prowadzi link z 90-default.preset -W pewnym momencie problem został rozwiązany.
rpcbind.socket
nie jest już włączony wFedora-Workstation-Live-x86_64-28-1.1.iso
.(Nie oznacza to, że rpcbind / port 111 jest automatycznie dostępny z sieci w systemach zainstalowanych z dysku Fedory 25. Instalacja obejmuje również zaporę ogniową, która nie zezwala na port 111)
źródło
sunrpc
irpcbind
nie zatrzymało nasłuchującego.Port 111 jest połączony z portmap . Jeśli wykorzystasz szanse NFS, będziesz go potrzebować. Możesz użyć,
systemctl -a | grep -E "rpc|port"
aby zobaczyć nazwę odpowiedniej usługi i wyłączyć ją (nie mam wtedy dostępu do skrzynki Fedory).źródło
Ten port jest aktywowany przez
nfs
usługę zainstalowaną znfs-utils
pakietu. Jeśli nie potrzebujesz, lepiej go odinstaluj.nfs-utils
iiscsi-initiator-utils
zwykle są instalowane jako zależnościlibvirt
pakietu. Oba pakiety aktywują wiele usług i gniazd, których być może nie chciałeś. Tych poleceń można używać do wyłączanianfs
iiscsi-initiator-utils
usług.źródło