On Tue, Apr 29, 2003 at 05:51:48PM +0300, Michael Shigorin wrote: > On Sat, Apr 26, 2003 at 01:41:51AM +0400, Dmitry V. Levin wrote: > > - При запуске демона осуществляется поиск уже запущенных процессов, при > > этом есть шанс ошибочного нахождения процесса, обслуживающего клиента, > > что препятствует запуску демона. > > ssh localhost > > su - > > service sshd restart (ой!) > > Тут еще вопрос с портами остался -- что делать с имеющимися sshd? С процессами sshd, обслуживающими клиентов, ничего делать не надо. Наоборот, эти процессы надо обходить стороной. > inmetex:~> netstat -na | grep :22 > tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN > tcp 0 0 10.0.1.1:22 10.0.1.105:33576 ESTABLISHED > tcp 0 0 213.186.211.22:22 10.0.1.104:1330 ESTABLISHED > tcp 0 0 10.0.1.1:22 10.0.1.242:33129 ESTABLISHED > tcp 0 40 10.0.1.1:22 10.0.1.105:34759 ESTABLISHED > > Если сейчас сделать service sshd restart, то все равно останутся > процессы, которые открыли соединение с локального trusted :22 -- > если я правильно понимаю, при таком раскладе bind()нуться к :22 > пытающемуся вновь запуститься sshd просто не дадут. > > Нет? Нет: $ fgrep -n SO_REUSEADDR openssh-3.6.1p1/sshd.c 1171: if (setsockopt(listen_sock, SOL_SOCKET, SO_REUSEADDR, 1173: error("setsockopt SO_REUSEADDR: %s", strerror(errno)); -- ldv