cron+iptables вам в помощь и ntp
И, да, с дитём лучше так не поступать, ИМХО.
Printable View
Можно ещё почитать в этой теме. Есть там хорошие примеры.
В поиске по ключевому слову "ограничение".
только встроенный софт, без cron'a:
Code:iptables -I FORWARD 1 -m time --timestart 19:00:00 --timestop 15:00:00 --days Mon,Tue,Wed,Thu,Fri,Sun,Sat -m mac --mac-source хх:хх:хх:хх:хх:хх -o ppp0 -j DROP
Делаю как обычно:
iptables -N CHILD
iptables -A CHILD -j DROP
iptables -I FORWARD 1 -m mac --mac-source xx:xx:xx:xx:xx:xx -j CHILD
iptables -I FORWARD 1 -m mac --mac-source yy:yy:yy:yy:yy:yy -j CHILD
# Включаем по времени
iptables -I CHILD 1 -m time --timestart 18:00:00 --timestop 22:00:00 --days Sun,Mon,Tue,Wed,Thu -j RETURN
iptables -I CHILD 1 -m time --timestart 14:00:00 --timestop 22:00:00 --days Fri,Sat -j RETURN
Не работает
iptables -L CHILD -v
0 0 RETURN all -- any any anywhere anywhere TIME from 18:00:00 to 22:00:00 on Sun,Mon,Tue,Wed,Thu
0 0 RETURN all -- any any anywhere anywhere TIME from 14:00:00 to 22:00:00 on Fri,Sat
14715 818K DROP all -- any any anywhere anywhere
Добавляю RETURN после time правил, чтобы проверить, что пакеты ходят нормально и все правила просматриваются
iptables -I CHILD 3 -j RETURN
Работает
iptables -L CHILD -v
0 0 RETURN all -- any any anywhere anywhere TIME from 18:00:00 to 22:00:00 on Sun,Mon,Tue,Wed,Thu
0 0 RETURN all -- any any anywhere anywhere TIME from 14:00:00 to 22:00:00 on Fri,Sat
670 12872 RETURN all -- any any anywhere anywhere
14821 819K DROP all -- any any anywhere anywhere
Оставляю только одно time правило и перегружаюсь
Работает.
iptables -L CHILD -v
972 18961 RETURN all -- any any anywhere anywhere TIME from 14:00:00 to 22:00:00 on Sun,Mon,Tue,Wed,Thu,Fri,Sat
5 145 DROP all -- any any anywhere anywhere
Вопрос: оно что, не понимает нескольких time правил в одной цепочке или я чего-то не догоняю?
Прошивка DIR320-1.9.2.7-d-r2394M.trx от 29.11.2010
Девайс DIR-320
я настроил WAN & LAN Filter так чтобы в определенное время(с 10:00 до 18:00) не было доступа ко всем портам кроме 80/tcp(интернет). Все работает замечательно за одним исключение. когда приходит время все включить у меня наоборот отрубается все вместе с интернетом.
В чем может быть проблема?
Роутер ASUS WL-500 gP V2, прошивка WL500gpv2-1.9.2.7-d-r2624
LAN to WAN Filter:
Enable LAN to WAN Filter: yas
Date to Enable LAN to WAN Filter: Sun, Mon, Tue, Wed, Thu, Fri, Sat
Time of Day to Enable LAN to WAN Filter: 10:00 - 18:00
Packets(LAN to WAN) not specified will be: DROP
Filtered ICMP(LAN to WAN) packet types: Пусто
LAN to WAN Filter Table
Source IP(пусто), Port Range(пусто), Destination IP(пусто), Port Range 80, Protocol TCP
В заранее спасибо!
Заметил маленькую особенность. После обновления в rt-n ветке iptables до 1.4.3.2 (r2716 и выше) опция "--days" более не работает. В правилах надо заменить на "--weekdays". :)
Скажите пожалуйста, как заблокировать доступ в интернет по МАС адресу?
т.е. что б в локальной сети можно было, а в интернет выйти нельзя...
Роутер - wl500gP v2 с последней прошивкой от Олега.
Заранее спасибо.
Вот интересная тема почитай Статистика и ограничение доступа по ip и mac
Копался вчера в iptables на предмет укрутить интернет дочери до 2-х часов в день, и с изумлением выяснил, что в ключах --timestart --timestop наши московские 00:00 соответствуют у него 5:48 с копейками этих же (!) суток.
Притом что в WEB-морде все нормально, за исключением часового пояса (пришлось отправить в Абу-Даби).
Время берется с time.nist.gov
В принципе не критично (ну напишу я не 21:00 - 22:00, а 02:48 - 03:48),
но интересно - где это все настраивается.
P.S. Я стекольщик, а не пингвиновод, поэтому поподробнее
P.P.S. DIR-320
Пользуюсь одной из последних прошивок от Энтузиастов, есть задача запретить отдному из беспроводных пользователей доступ в инет в определенное время суток. Например ночью. Какой командой это можно сделать? временная блокировка по MACу?
В один не прекрасный день начальника приказала перекрыть девушкам социалку с 9 до 13 и с 14 до 17, почесал репу и полез в Internet Firewall - URL Filter. Но тут ждал облом - создал правило для отрезка времени 9-13, а для 14-17 наотрез отказался это делать мотивируя тем, что запись с подобным адресом уже есть :p Пошаманив и поматерившись, решил сделать вручную:
Code:iptables -I FORWARD -p tcp -m time --timestart 09:00:00 --timestop 13:00:00 --weekdays Mon,Tue,Wed,Thu,Fri -m webstr --url vk.com -j DROP
Прекрасно отрабатываясь в памяти, настройки решил сохранить:Code:iptables -I FORWARD -p tcp -m time --timestart 14:00:00 --timestop 17:00:00 --weekdays Mon,Tue,Wed,Thu,Fri -m webstr --url vk.com -j DROP
Code:iptables-save > /usr/local/sbin/post-firewall
Code:chmod +x /usr/local/sbin/post-firewall
Вот тут и вылез непонятный косяк - выдало, что /usr/local/sbin/post-firewall не существует :confused:Code:flashfs save && flashfs commit && flashfs enable && reboot
Терь не знаю что и делать, в оперативке провисит, до первого же пинка, а куда тогда сохранять даже не представляю :(
Можно например так, если что )Code:mkdir -p /usr/local/sbin/
echo "#!/bin/sh" >> /usr/local/sbin/post-boot
cp /usr/local/sbin/post-boot /usr/local/sbin/post-firewall
cp /usr/local/sbin/post-boot /usr/local/sbin/post-mount
cp /usr/local/sbin/post-boot /usr/local/sbin/pre-shutdown
chmod +x /usr/local/sbin/p*
flashfs save
flashfs commit
flashfs enable
или так )))
>> /usr/local/sbin/post-firewall && chmod 755 /usr/local/sbin/post-firewall
flashfs save && flashfs commit && flashfs enable