Ubuntu 16.04 sudo с NIS работает слишком медленно, связывает (2) порты lotta и остается соединением lotta между сервером домена NIS

Название говорит все. в любом случае, я просто обновил свой сервер с 14.04 LTS до 16.04 LTS и понял, что sudo работает слишком медленно, чем 14.04.

Я выпрямился и получил следующий результат:

$ sudo strace sudo true

---------------------------- snip -------------------------------

...
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 9
bind(9, {sa_family=AF_INET, sin_port=htons(722), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(723), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(724), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(725), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(726), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(727), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(728), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(729), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(730), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(731), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(732), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(733), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(734), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(735), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(736), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(737), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(738), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
bind(9, {sa_family=AF_INET, sin_port=htons(739), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
...

---------------------------- snip -------------------------------

Сама команда sudo прошла успешно, это заняло слишком много времени, например 5 секунд.

Диапазон портов 512-1023, похоже, он пытается связать порт привилегии для чего-то вроде гарантии, что он имеет привилегию суперпользователя.

И после успешного завершения sudo netstat -an показывает:

---------------------------- snip -------------------------------

...
tcp        0      0 192.168.0.10:959     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:910     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:932     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:34470   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:966     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:903     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:875     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:45452   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:970     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:907     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:41063   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:45659   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:948     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:50370   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:56145   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:929     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:909     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:33648   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:33556   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:55209   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:975     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:969     192.168.0.1:617      TIME_WAIT  
tcp        0      0 192.168.0.10:35903   192.168.0.1:111      TIME_WAIT  
tcp        0      0 192.168.0.10:888     192.168.0.1:617      TIME_WAIT  
...

---------------------------- snip -------------------------------

Где 192.168.0.10 - мой сервер, а 192.168.0.1 - сервер NIS.

Когда я останавливаю ypbind на моем сервере и запускаю sudo, больше не происходит бесполезного bind (2) и больше не происходит TIME_WAIT между моим сервером и сервером NIS.

Я не могу остановить ypbind, и я хочу, чтобы моя старая гибкая sudo скорость вернулась так плохо B)

Что я могу сделать?

Спасибо

1
задан 27 April 2016 в 18:13

2 ответа

Мы столкнулись с тем же поведением после обновления нескольких систем к 16.04 LTS. Мы используем, разделяют режим с NIS для выборочного выбора, через + @netgroup и +user в/etc/passwd, кто от большего домена NIS может получить доступ к нашим системам.

Мой коллега - кто должен получить весь кредит, но не делает, вещь StackExchange - нашла обходное решение, которое позволяет, Вы сохранить разделяете режим и способность использовать + @netgroup и +user в/etc/passwd. Оставьте разделять режим для passwd и тени, но использования "файлы Нис" для группы в/etc/nsswitch.conf:

passwd:    compat
shadow:    compat
group:     files nis

"compat" режим для/etc/group эквивалентен "файлам Нис", если все, что Вы хотите сделать, включают всю карту группы NIS.

интересовался бы слушанием, работает ли это на Вашу ситуацию.

0
ответ дан 28 April 2016 в 04:13
  • 1
    Хорошо, я попробовал его. К сожалению, это не работало. Я проверил, был ли скрытый файл дома и если Xorg был в и т.д. / X11, как описано выше и настроен. Когда компьютер запустил частоту обновления, и разрешение было " auto". спасибо за попытку. – João Victor 26 September 2017 в 16:41

У меня была та же проблема с помощью групп NIS и пользователей. Каждая аутентификация пользователя является крайне медленной. Вы можете также tcpdump трафик между клиентом и сервером NIS и видеть необычный шторм пакетов, продолжающихся между двумя для подобного минута в моем случае.

я пошел для проигрывания с конфигурацией и имел идею переключить конфигурацию а-ля Redhat, и это полностью изменяет поведение автора, входа в систему, sudo очень быстро. Просто удалите "+::::" от/etc/passwd,/etc/shadow,/etc/group и nsswitch.conf файла для изменения следующих строк:

passwd:         files nis
group:          files nis
shadow:        files nis

Говорят мне, как это идет.

0
ответ дан 28 April 2016 в 04:13
  • 1
    Попытайтесь не изменить dir, который это предлагает. – Aravind 26 September 2017 в 16:32

Другие вопросы по тегам:

Похожие вопросы: