Hosts для разных пользоватеей

Изображение пользователя Vorobey.

Как сконфигурировать /etc/hosts чтобы разные пользователи перенаправлялсь на те домены, которые я укажу? )
Цель - отрубить вконтакте и тп.

0
lord_i - 6 Ноябрь, 2014 - 23:54
Изображение пользователя lord_i.

Красивого пути чтоб реализовать именно это, насколько я знаю - нет.
Из костылеподобных - я бы скриптом переписывал этот файл в зависимости от текущего юзера.
(не пробовал, но думаю должно получиться)

0
Vorobey - 7 Ноябрь, 2014 - 00:22
Изображение пользователя Vorobey.

А сделать так чтоб в момент логина каждому пользователю подсовывался свой hosts ?
Думаю это возможно, но как, понятия не имею.

0
Flameflower - 7 Ноябрь, 2014 - 08:07
Изображение пользователя Flameflower.

Squid в помощь.
Заводишь учетные записи и блокируешь firewall'ом пропуск трафика.

0
lord_i - 7 Ноябрь, 2014 - 11:47
Изображение пользователя lord_i.

ТС хочет делать все на одной машине. Как сквид различит пользователя?
Делать разные пароли для прокси для разных пользователей - очень неудобно имхо.

0
Flameflower - 7 Ноябрь, 2014 - 12:13
Изображение пользователя Flameflower.

А кто тебе мешает установить кальмара на локальную машину и выставить небольшой таймаут?

0
Mike - 7 Ноябрь, 2014 - 12:25
Изображение пользователя Mike.

Как сквид различит пользователя? Аутентификация на проксе? Нет, не слышал! %)
очень неудобно Неудобно гадить в почтовый ящик. А прописать логины-пароли - не такое уж и сложное дело.

0
lord_i - 7 Ноябрь, 2014 - 15:10
Изображение пользователя lord_i.

Та все я слышал, о чем ниже и написал. МНЕ кажется, что в случае ТС (заблокировать вк на одной машине) сквид - это во первых из пушки по воробъям, во вторых - геморно и с паролями для каждого пользователя неудобно. ИМХО.

0
Mike - 7 Ноябрь, 2014 - 17:08
Изображение пользователя Mike.

ну ради одного одного ВК - да. А так, действительно можно впендюрить в пользовательскую автозагрузку скрипт, который будет вываливать в хостс требуемое содержимое.

0
lord_i - 7 Ноябрь, 2014 - 17:44
Изображение пользователя lord_i.

В пользовательскую нельзя. Я думал об этом. У пользователя будут права ее отключить. Надо чтоб от рута это происходило.

0
lord_i - 7 Ноябрь, 2014 - 11:42
Изображение пользователя lord_i.

Можно не в момент логина. Можно по хрону раз в минуту чекать пользователя и если он поменялся - менять хостс

0
Vorobey - 7 Ноябрь, 2014 - 21:33
Изображение пользователя Vorobey.

Как это сделать?
Я так понимаю нужен скрипт на каком языке?
Вобщем понятия не имею как это реализовать.

0
lord_i - 7 Ноябрь, 2014 - 21:58
Изображение пользователя lord_i.

Думаю на баше вполне реализуемо. Но за Вас, разумеется, делать это никто не будет. Изучайте.

Алгоритм приблизительно такой:
- получили текущего пользователя
- сравнили с сохраненным в файле значением
- если отличается - переписали хостс файлом с настройками для данного пользователя
- сохранили в файл текущего пользователя

и вызывать по хрону раз в минуту к примеру.

0
Vorobey - 7 Ноябрь, 2014 - 22:23
Изображение пользователя Vorobey.

А можно по такому алгоритму:
- создать рядом с оригинальным hosts. kolya_hostts, vasya_hosts
- когда происходит логин, скрипт подхватывает имя и просто задействует его хост файл(префикс имени)
система в принцепе может работать с другим именем файла, отличным от hosts?

зы а если на питоне написать - кажется питон проще...?

+4
Chibiko - 8 Ноябрь, 2014 - 00:11
Изображение пользователя Chibiko.

В крон суём ежеминутный скрипт, в котором вот такая бабуйня:

#!/bin/bash
name=$(w |awk '{print $1 $2}'|grep ":0"|rev | cut -c 3- | rev)
cp "/root/"$name"_hosts" /etc/hosts

Это самый простой и глупый способ. В идеале проверку сделать, типа
if [ -f $(cat /etc/hosts |grep $name) ]; then
заменяем конфиг
else
ничего не трогаем
fi

А в каждом хосте сделать надпись закомментированную #name (имя юзера) для каждого юзера

И, да, на питоне проще, если ты его знаешь. Но зачем, если на баше 3 строчки? А на питоне это растянется поболе...

0
lord_i - 8 Ноябрь, 2014 - 10:51
Изображение пользователя lord_i.

Бегло глянул - помоему он не того юзера детектит. Нужен же тот, который в кедах залогинин (kdeinit4: kded4 [kdeinit]).
--добавлено--
Не будет работать если используется переключение пользователя. При этом в команде w висят все пользователи и абсолютно непонятно кто сейчас активен в кедах. :( Способ детекта пользователя не подходит. Может через d-bus как-то можно? (не искал пока)

0
Chibiko - 8 Ноябрь, 2014 - 12:28
Изображение пользователя Chibiko.

Ну тогда просто grep делать не по :0, а по "kdeinit4: kded4 [kdeinit]"
Ну и немного перестроить осталное.
А вообще не думаю что там одновременнонесколько пользователей залогинено будет... Комп то один вроде и по ssh туды никто дополнительно стучаться е будет.

0
Vorobey - 8 Ноябрь, 2014 - 19:40
Изображение пользователя Vorobey.

по ssh захожу постоянно, когда нужно выключить комп или виснит рабочий стол.

После установки 14.04. Когда завершаю сеанс(чтобы переключится на др. пользователя), очень часто черный экран и одна панель задач (на работе такое было тоже неоднократно) На 12.04 такого небыло никогда!

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры