У меня есть отдельная рабочая станция Fedora 25 x86_64. Что-то прослушивает порт 111 (идентифицированный с помощью сканирования 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
Я отключил механизм Sun на порту с помощью следующих команд:
$ sudo systemctl disable rpcbind
$ sudo systemctl disable sunrpc
Failed to disable unit: No such file or directory
После перезагрузки порт все еще открыт.
Похоже, что что-то кроме Sun gear хочет прослушивать через порт 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
disable
. Сообщение появляется только наstop
(и оно появляется, если служба уже остановлена). Я все еще могу сопереживать, но я не уверен, каким будет лучший способ улучшить этот опыт.Это активация сокета :). И ты был прав, чтобы быть подозрительным.
Вам нужно отключить
rpcbind.socket
. Отключениеrpcbind.service
- то, чтоsystemctl disable rpcbind
предполагает - не имеет никакого эффекта.Кроме того,
disable
здесь будет влиять только то, что происходит во время загрузки. Так что, если вы хотите увидеть немедленное изменение, вы также хотите запуститьsystemctl stop rpcbind.socket
.РЕДАКТИРОВАТЬ: Этот вопрос выглядит очень похоже на меня. Джефф Шаллер указывает, что вы можете использовать команду
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
. Это означает, что что-то активировало rpcbind.socket в образе Fedora 25, но не было включено/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
.(Это не означает, что rpcbind / порт 111 автоматически доступен из сети на системах, установленных с диска Fedora 25. Установка также включает в себя брандмауэр, который не позволяет порт 111)
источник
sunrpc
иrpcbind
не остановил слушателя.Порт 111 связан с картой порта . Если вы используете NFS, скорее всего, вам это понадобится. Вы можете использовать,
systemctl -a | grep -E "rpc|port"
чтобы увидеть название соответствующего сервиса и отключить его (у меня нет доступа к коробке Fedora в то время).источник
Этот порт активируется
nfs
службой, установленной изnfs-utils
пакета. Если вам это не нужно, лучше удалите его.nfs-utils
иiscsi-initiator-utils
обычно устанавливаются как зависимостиlibvirt
пакета. Оба пакета активируют множество сервисов и сокетов, которые вы, возможно, не хотели. Эта команда может использоваться для того, чтобы отключитьnfs
иiscsi-initiator-utils
сервисы.источник