NTP-сервер по привычке поднимаю вообще на каждом линуксовом хосте, это занимает одну минуту
sudo systemctl disable systemd-timesyncd
sudo apt install ntp
Просто "а почему бы нет", ресурсов хоста съедает (условно) 0.0001%.
DHCP-сервер тоже съедает крайне мало ресурсов, это лёгкая задача даже для роутеров-мыльниц, так что тоже вопрос о выборе сервера звучит забавно. Просто добавляется на любой сервер, который выполняет какие-то другие задачи. На виртуальную машину можно вынести - из соображений быстрой миграции VM на другой хост, когда надо. И даже в этом случае можно прекрасно обойтись без виртуалки. Но в порядке энтузиазма можно с виртуалкой :)
3. смотря что вы называете "сервером документов", уточните. Если обычную "файловую свалку" (она же "файловый сервер"), то можно подобрать готовый железный NAS. Если хочется прям настоящий сервер - тоже любой годится.
В зависимости от бюджета, такие штуки собирают на базе ПК, который морально устарел и уже не устраивает пользователя - в этом случае бюджет тратится только на новые диски. На 20-50 пользователей такого варианта должно хватить. Скорость в основном определяется двумя узкими местами - скоростью дисков (точнее дисковой подсистемы) и скоростью сети.
Более дорогие варианты пока нет смысла предлагать, т.к. вы не указали ни бюджет, ни количество пользователей.