Эта глава содержит некоторые средства, которые пригодятся при изучении сетевых потребностей.
Пакет Traceroute содержит программу, которая используется для отображения сетевого маршрута, по которому пакеты доходят до указанного хоста. Это стандартное средство решения проблем сети. Если вы обнаружите, что не можете подключиться к другой системе, traceroute поможет устранить проблему.
Адрес (HTTP): http://gd.tuwien.ac.at/platform/sun/packages/solaris/freeware/SOURCES/traceroute-1.4a12.tar.gz
Адрес (FTP): ftp://ftp.ee.lbl.gov/traceroute-1.4a12.tar.gz
Контрольная сумма: 964d599ef696efccdeebe7721cd4828d
Размер: 74 KB
Требуемое дисковое пространство: 540 KB
Расчетное время сборки: 0.01 SBU
Установим Traceroute запуском следующих команд:
sed -i -e 's/-o bin/-o root/' Makefile.in &&
./configure --prefix=/usr &&
make
А теперь, как пользователь root:
make install &&
make install-man
sed 's/-o bin/-o root/' Makefile.in: Изменяет Makefile так, что программы устанавливаются под пользователем root вместо пользователя bin (который отсутствует по умолчанию в LFS системе).
make install: Устанавливает traceroute с SUID, установленным для root, в директорию /usr/sbin. Это делает возможным запуск traceroute всеми пользователями. Для полной безопасности выключите SUID бит файла traceroute при помощи команды:
chmod 0755 /usr/sbin/traceroute
Риск в том, что если такая проблема безопасности, как переполнение буфера, была бы найдена в коде Traceroute, то обычный пользователь в вашей системе смог бы получить права root, если у программы установлен SUID root. Конечно, удаление SUID так же делает невозможным пользователям, отличным от root, использовать traceroute, поэтому решите, что правильно в вашей ситуации.
Целью BLFS является полная FHS совместимость, поэтому если вы оставите у бинарника traceroute SUID root, то вы должны переместить traceroute в /usr/bin следующей командой:
mv /usr/sbin/traceroute /usr/bin
Это подтвердит, что бинарник находится в пути для не-root пользователя.