J'ai un post de travail autonome Fedora 25 x86_64. Quelque chose est à l'écoute sur le port 111 (identifié par un scan 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
J'ai désactivé l'équipement Sun sur le port avec les commands suivantes:
$ sudo systemctl disable rpcbind $ sudo systemctl disable sunrpc Failed to disable unit: No such file or directory
Après le redémarrage, le port est toujours ouvert.
Il semble quelque chose d'autre que Sun Gear veut écouter sur le port 111. Ou peut-être que systemd
ne respecte pas mes désirs de désactiver le service inutilisé. Ou peut-être autre chose …
Comment puis-je déterminer ce que j'essaie d'écouter sur le port et comment puis-je le désactiver?
Par le bas:
$ 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 listning RPCbind Server Activation Socket rpc_pipefs.target loaded active active rpc_pipefs.target rpcbind.target loaded active active RPC Port Mapper
Socket d'activation :). Et vous aviez raison d'être concerné.
Vous devez désactiver rpcbind.socket
. La désactivation de rpcbind.service (qui est ce que systemctl disable rpcbind
) n'a aucun effet. En fait, même si vous regardez l' systemctl status rpcbind.service
sur un nouveau système, il s'affichera disabled; vendor preset: disabled
disabled; vendor preset: disabled
déjà. (Également Active: inactive (dead)
).
EDIT: Cette question ressemble beaucoup à moi. Jeff Schaller souligne que vous pouvez utiliser la command systemctl list-sockets
pour voir les ports et services pour lesquels systemd
implémente l'activation de socket.
Lorsque vous exécutez sudo systemctl disable rpcbind
sur Fedora 25
je pense qu'il y a un avertissement:
Warning: Stopping rpcbind.service, but it can still be activated by: rpcbind.socket
Donc, vous pouvez essayer de suivre:
sudo systemctl stop rpcbind.socket sudo systemctl disable rpcbind.socket
Le port 111 est lié à portmap . Si vous utilisez NFS, vous en aurez probablement besoin. Vous pouvez utiliser systemctl -a | grep -E "rpc|port"
systemctl -a | grep -E "rpc|port"
pour voir le nom du service correspondant et le désactiver (je n'ai pas access à une boîte Fedora à l'époque).