Есть ли какой-нибудь способ определить специфичные для пользователя хосты - как в / etc / hosts? Может быть, что-то вроде ~ / .hosts?
linux
networking
Greget
источник
источник
Ответы:
Для всего, что основано на ssh (включая rsync поверх ssh), вы можете добавить записи в ваш файл ~ / .ssh / config
например
Тогда ssh myhost свяжет вас с myhost.example.com
источник
Определенные приложения могут иметь что-то, что вы можете использовать, как предложил Ник, но пользовательский файл homedir не эквивалентен файлу / etc / hosts.
Когда приложения пытаются разрешить имена хостов, они обрабатываются NSS. Вы можете проверить, как NSS обрабатывает имена хостов в вашей системе, посмотрев /etc/nsswitch.conf
Это означает, что имена хостов будут сначала разрешаться в файловой базе данных (/ etc / hosts), а в противном случае - в подробностях DNS, указанных в /etc/resolv.conf.
источник
Мне было интересно то же самое, и коллега нашел это решение: http://blog.tremily.us/posts/HOSTALIASES/
В основном это включает установку переменной окружения (HOSTALIASES), которая указывает на файл, который будет использоваться для псевдонимов хоста (вы можете использовать ~ / .hosts, например).
источник
Другим решением могут быть разные среды chroot для разных пользователей. Даже разные корневые тюрьмы для одного и того же пользователя, в зависимости от определенных критериев.
источник