<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Как ограничить из сети доступ в Интернет по времени?]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=40555&amp;type=atom" />
	<updated>2021-01-05T18:15:09Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=40555</id>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468257#p468257" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>А вот подсказки детям давать не стоит. Может сначала они и не разберутся как войти под рутом, но потом обязательно смогут.</p></blockquote></div><p>Дети хитрые. Не исключено, что они станут ходить через анонимайзеры или vpn. Через них конечно много не наработаешь (скорость, обрывы)... А касаемо рутового доступа... Мне видится, что автор сделает обычный комп <span class="bbu">без монитора и клавиатуры</span>, который будет мирно стоять где-нибудь в уголке и выполнять роль &quot;няньки&quot; в плане контроля за доступом. А доступ автору мы предоставим по SSH:22 изнутри + введём защиту от брутфорса (3 неудачных подключения и БАН на 60 сек). Автор, знающий логин и пароль сможет подключиться через Putty. Думаю, для такого варианта особые требования к защите от человеческого фактора предъявлять не стоит. Или стОит? ))<br /></p><div class="quotebox"><cite>Rizado пишет:</cite><blockquote><p>alex_q_2000, Вы не предполагаете, что язык интерфейса системы может быть не русским? У меня, кстати, долгое время испанский был.<br />Вместо «$(date +%a)» лучше использовать «$(date +%u)» и номер от 1 до 5.</p></blockquote></div><p>Абсолютно верно, спасибо! Сейчас поправим...&nbsp; <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p><p>Дополнительно приложу конфиг <em>dnsmasq</em>, чтобы не париться с раздачей настроек по DHCP (если автору понадобится) и открою нужные порты Samba (может быть автор захочет сделать общий диск), SSH, DNS, DHCP в iptables. Таким образом, автору потребуется доустановить openssh-server и dnsmasq (по желанию)...</p><p>Скрипт: /site-blocker.sh (вариант-1 без модуля time)<br /></p><div class="codebox"><pre><code>#!/bin/bash

#Параметры -----//------------------
hstart=&quot;09:00&quot; #Начало блокировки (час)
hend=&quot;18:00&quot; #Окончание блокировки (час)

#Пути, интерфейсы
wan=&quot;enp0s3&quot;
lan=&quot;enp0s8&quot;
#-----------------//----------------

#Текущий день недели в списке заблокированных дней (Пн-Пт)?
block_day=&quot;no&quot;; for i in 1 2 3 4 5; do [[ &quot;$i&quot; = &quot;$(date +%u)&quot; ]] &amp;&amp; block_day=&quot;yes&quot;; done

#Включаем форвардинг
echo 1 &gt; /proc/sys/net/ipv4/ip_forward

#Очистка iptables
iptables -F; iptables -X
iptables -t nat -F; iptables -t nat -X
iptables -t mangle -F; iptables -t mangle -X

#Всё, кроме INPUT
iptables -P INPUT DROP; iptables -P OUTPUT ACCEPT; iptables -P FORWARD ACCEPT

#Разрешаем lo и уже установленные соединения
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

#Разрешаем пинг
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

#Открываем SSH:22 + защита от брутфорса (3 неудачных попытки подключения =&gt; бан атакующего на 60 сек)
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name sshport --set
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name sshport --update --seconds 60 --hitcount 4 -j DROP

#Разрешаем Samba, DHCP/DNS и SSH:22 (dnsmasq, если они будут)
iptables -A INPUT -i $lan -p tcp -m multiport --dports 22,137:139,445 -j ACCEPT
iptables -A INPUT -i $lan -p udp -m multiport --dports 137:139,445,53,67,68,1024:65535 -j ACCEPT

#С 09:00 часов утра до 18:00 часов вечера по будням (Пн-Пт) пускать с ограничениями
if [[ &quot;$(date +%T)&quot; &gt; &quot;$hstart&quot; &amp;&amp; &quot;$(date +%T)&quot; &lt; &quot;$hend&quot; &amp;&amp; &quot;$block_day&quot; = &quot;yes&quot; ]]; then
#Только Web-серфинг (блокировка VPN, Torrent и т.д.)
    iptables -A FORWARD -i $lan -p udp ! --dport domain -j DROP
    iptables -A FORWARD -i $lan -p tcp -m multiport ! --dports http,https -j DROP

#Список заблокированных сайтов
    iptables -A FORWARD -i $lan -m string --string &quot;vk.com&quot; --algo bm -j REJECT
    iptables -A FORWARD -i $lan -m string --string &quot;ok.ru&quot; --algo bm -j REJECT
    iptables -A FORWARD -i $lan -m string --string &quot;facebook.com&quot; --algo bm -j REJECT
    iptables -A FORWARD -i $lan -m string --string &quot;mail.ru&quot; --algo bm -j REJECT
fi;

#Секция маскардинга
iptables -A FORWARD -i $wan -o $lan -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $lan -o $wan -j ACCEPT
iptables -t nat -A POSTROUTING -o $wan -j MASQUERADE

#Сохраняем в файл и рестарт
iptables-save -c &gt; /etc/sysconfig/iptables
systemctl restart iptables.service

exit 0;</code></pre></div><p>Скрипт: /site-blocker.sh (вариант-2 с модулем time)<br /></p><div class="codebox"><pre><code>#!/bin/bash

#Интерфейсы
wan=&quot;enp0s3&quot;
lan=&quot;enp0s8&quot;
#-----------------//----------------

#Включаем форвардинг
echo 1 &gt; /proc/sys/net/ipv4/ip_forward

#Очистка iptables
iptables -F; iptables -X
iptables -t nat -F; iptables -t nat -X
iptables -t mangle -F; iptables -t mangle -X

#Всё, кроме INPUT
iptables -P INPUT DROP; iptables -P OUTPUT ACCEPT; iptables -P FORWARD ACCEPT

#Разрешаем lo и уже установленные соединения
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

#Разрешаем пинг
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

#Открываем SSH:22 + защита от брутфорса (3 неудачных попытки подключения =&gt; бан атакующего на 60 сек)
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name sshport --set
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name sshport --update --seconds 60 --hitcount 4 -j DROP

#Разрешаем Samba, DHCP/DNS, SSH (dnsmasq и openssh-server, если они будут)
iptables -A INPUT -i $lan -p tcp -m multiport --dports 22,137:139,445 -j ACCEPT
iptables -A INPUT -i $lan -p udp -m multiport --dports 137:139,445,53,67,68,1024:65535 -j ACCEPT

#Блокировка сайтов по времени и дням (Пн-Пт)
block=&quot;-m time --weekdays 1,2,3,4,5 --timestart 09:00 --timestop 18:00 -j REJECT&quot;

#Только Web-серфинг (блокировка VPN, Torrent и т.д.)
iptables -A FORWARD -i $lan -p udp ! --dport domain $block
iptables -A FORWARD -i $lan -p tcp -m multiport ! --dports http,https $block

#Список заблокированных сайтов
iptables -A FORWARD -i $lan -m string --string &quot;vk.com&quot; --algo bm $block
iptables -A FORWARD -i $lan -m string --string &quot;ok.ru&quot; --algo bm $block
iptables -A FORWARD -i $lan -m string --string &quot;facebook.com&quot; --algo bm $block
#iptables -A FORWARD -i $lan -m string --string &quot;mail.ru&quot; --algo bm $block
#iptables -A FORWARD -i $lan -m string --string &quot;yandex.ru&quot; --algo bm $block

#Секция маскардинга
iptables -A FORWARD -i $wan -o $lan -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $lan -o $wan -j ACCEPT
iptables -t nat -A POSTROUTING -o $wan -j MASQUERADE

#Сохраняем в файл и рестарт
iptables-save -c &gt; /etc/sysconfig/iptables
systemctl restart iptables.service

exit 0;</code></pre></div><p>Раздача настроек локальным клиентам (установить dnsmasq)...</p><p>Конфиг: /etc/dnsmasq.conf<br /></p><div class="codebox"><pre><code>#Авторитетный DHCP сервер
dhcp-authoritative

#Слушать на интерфейсах ($lan=enp0s8=192.168.1.1+lo)
interface=enp0s8
listen-address=127.0.0.1,192.168.1.1

#Не использовать resolv.conf
no-resolv

#DNS для раздачи
server=8.8.8.8
server=8.8.4.4

#Диапазон выдачи IP-адресов (аренда 72 часа)
dhcp-range=192.168.1.20,192.168.1.250,72h

#Отдать параметры клиенту
dhcp-option=option:router,192.168.1.1
dhcp-option=option:dns-server,192.168.1.1

#Отключить DHCP_INFO-PROXY для Windows 7+
dhcp-option=252,&quot;\n&quot;

#Настройки кеша DNS
cache-size=10000
no-negcache</code></pre></div><p><strong>*** Добавлено: 31.12.2020 18:01:30 ***</strong></p><p>Скрипт: /site-blocker.sh<br />+ добавлена секция &quot;Только Web-серфинг (блокировка VPN, Torrent, Icq, Skype, Jabber и т.д.)&quot;. Разрешены только http и https (+dns)<br />+ добавлен /site-blocker.sh (вариант-2 с использованием модуля time). SSH:22 по умолчанию<br />+ /site-blocker.sh (вариант-1 без модуля time) введено отслеживание до минут (формат 00:00). Крон будет дёргать этот скрипт только 2 раза: вначале и в конце блокировки. Правильный интервал 00:00-23:59. Вариант скрипта с использованием модуля time (2) может работать некорректно (--kerneltz) с обновлением ядер.<br /><strong>*** Добавлено: 01.01.2021 19:49:50 ***</strong></p><p>Осталось как-то разобраться с разрывом уже установленного соединения (ESTABLISHED). Сайты блокируются, однако если они ранее были открыты, а правила iptables сменились на блокирующие, они продолжают работать до закрытия. Для чистоты эксперимента нужно бы сделать стремительный отлуп...&nbsp; <img src="https://linuxforum.ru/img/smilies/bv.gif" alt="bv" /><br /><strong>*** Добавлено: 03.01.2021 00:19:11 ***</strong></p><p>Небольшой гуй по теме...<br /><a href="http://vfl.ru/fotos/fdf3b20932846296.html"><span class="postimg"><img src="http://images.vfl.ru/ii/1609703907/fdf3b209/32846296_s.png" alt="http://images.vfl.ru/ii/1609703907/fdf3b209/32846296_s.png" /></span></a><br />Требуются привилегии root и 2 сетевых карты (WAN/LAN).<br />Требуются пакеты iptables, ipset, bind-utils.</p><p>Создаёт:<br />---<br />/root/.siteblocker/blacklist - блэклист сайтов<br />/root/.siteblocker/settings.ini - настройки программы</p><p>/usr/local/bin/site-blocker.sh - основной скрипт с правилами iptables<br />/var/spool/cron/root или /var/spool/cron/crontabs/root - план запуска основного скрипта iptables через crond<br />/etc/systemd/system/site-blocker.service - сервис автозапуска после перезагрузки (не в курсе, есть ли эта папка в Debian, в Mageia есть)</p><p>Кнопка &quot;Рестарт iptables&quot; - применяет выбранный план блокировки сайтов и создаёт вышеуказанные файлы<br />Кнопка &quot;Сброс&quot; - корректно удаляет основной скрипт, план запуска, сервис автозапуска и возвращает iptables&nbsp; в дефолт<br />В список можно дополнять свои сайты, удалять, выгружать и загружать из файла (ПКМ).</p><p><a href="https://cloud.mail.ru/public/8uiQ/fArDMPyed">Здесь...</a></p><br /><p>v1.3 (upd: 04.01.2021)<br />+сохранение/загрузка blacklist<br />+оперативное применение списка ipset<br />+отключение протокола IPv6<br />+проверка ping перед рестартом iptables</p><p>v1.1 (upd: 03.01.2021)<br />+IPSET - основной метод блокировки (1 сайт = множество ip)<br />+STRING - дополнительный метод словарной фильтрации<br />+окружение в плане запуска cron: /var/spool/cron/root<br />+отлуп и фильтрация сайтов заметно улучшились <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /><br /><strong>*** Добавлено: 05.01.2021 21:15:09 ***</strong></p><div class="quotebox"><cite>Rizado пишет:</cite><blockquote><p>Спасибо, но ещё рановато. Успеем отметить.</p></blockquote></div><p>Здравствуйте, <strong>Rizado</strong>. В Новый Год особо заняться было нечем и... Что-то я здесь приходил-колупал-ковырял; в результате сделал вот это: <a href="https://linuxforum.ru/viewtopic.php?pid=468276#p468276">MgaRemix [флешки, технология сборки]</a> Теперь не знаю, может быть то, что выше уже не нужно? Это я к тому, что вроде как дубляж какой-то вышел... Или нет?<br /></p>]]></content>
			<author>
				<name><![CDATA[alex_q_2000]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41015</uri>
			</author>
			<updated>2021-01-05T18:15:09Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468257#p468257</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468256#p468256" />
			<content type="html"><![CDATA[<p><strong>alex_q_2000</strong>, Вы не предполагаете, что язык интерфейса системы может быть не русским? У меня, кстати, долгое время испанский был.<br />Вместо «$(date +%a)» лучше использовать «$(date +%u)» и номер от 1 до 5.</p>]]></content>
			<author>
				<name><![CDATA[Rizado]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23158</uri>
			</author>
			<updated>2020-12-30T08:12:34Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468256#p468256</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468255#p468255" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alex_q_2000 пишет:</cite><blockquote><p>Сервис: /etc/systemd/system/site-blocker.service</p></blockquote></div><p>А вот подсказки детям давать не стоит. Может сначала они и не разберутся как войти под рутом, но потом обязательно смогут. Тем более в linux это довольно просто, зайти на комп с LiveCD(USB), скопировать содержимое &quot;/etc/shadow&quot;, сменить пароль, а после вернуть все обратно.<br />Сервис с таким названием сразу привлечёт внимание. В данном случае, чем запутаннее сделано тем лучше.</p><p>А так, можно ещё проще оставить доступ root себе, например оставив где-нибудь лежащий бинарник, дающий такие права(так же как sudo).</p>]]></content>
			<author>
				<name><![CDATA[ormorph]]></name>
				<uri>https://linuxforum.ru/profile.php?id=221</uri>
			</author>
			<updated>2020-12-30T06:20:08Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468255#p468255</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468254#p468254" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>Для сервера то пойдёт, но для компа, который не включён постоянно будут проблемы. Пропустил время запуска скрипта и все разрешено. Тогда уж скриптом при загрузке, который будет проверять дату.</p></blockquote></div><p>Несомненно. А поскольку в условии сказано, что ограничения нужны с 09 часов утра до 18 часов вечера именно в рабочие дни (пока автор на работе), то при перезагрузке нужно учитывать ещё и номер дня недели (с 1 по 5). Посему предлагаю 1 скрипт, который будет запускаться при перезагрузке через site-blocker.service и далее каждый час через крон. Костылить, так костылить...</p><p>Сервис: /etc/systemd/system/site-blocker.service<br /></p><div class="codebox"><pre><code>[Unit]
Description=IPTables Site Blocker Unit
After=network-online.target
Wants=network-online.target

[Service]
Type=oneshot
ExecStart=/site-blocker.sh

[Install]
WantedBy=multi-user.target</code></pre></div><p>Активировать: systemctl enable site-blocker</p><p>Мега-Скрипт: /site-blocker.sh<br /></p><div class="codebox"><pre><code>#!/bin/bash

#Параметры -----//------------------
hstart=&quot;09&quot; #Начало блокировки (час)
hend=&quot;18&quot; #Конец блокировки (час)

#Пути, интерфейсы
inet=&quot;enp0s3&quot;
local=&quot;enp0s8&quot;
ipt=&quot;/sbin/iptables&quot;

#-----------------//----------------

#Текущий день недели - это рабочий день (Пн-Пт)?
budni=&quot;no&quot;
for i in Пн Вт Ср Чт Пт; do [[ &quot;$i&quot; = &quot;$(date +%a)&quot; ]] &amp;&amp; budni=&quot;yes&quot;; done

#Включаем форвардинг
echo 1 &gt; /proc/sys/net/ipv4/ip_forward

#Очистка iptables
$ipt -F; $ipt -X
$ipt -t nat -F; $ipt -t nat -X
$ipt -t mangle -F; $ipt -t mangle -X

#Всё, кроме INPUT
$ipt -P INPUT DROP; $ipt -P OUTPUT ACCEPT; $ipt -P FORWARD ACCEPT

#Разрешаем lo и уже установленные соединения
$ipt -A INPUT -i lo -j ACCEPT
$ipt -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

#Разрешаем пинг
$ipt -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

#С 09 часов утра до 18 часов вечера по будням (Пн-Пт) пускать с ограничениями
if [[ &quot;$(date +%H)&quot; &gt; &quot;$hstart&quot; &amp;&amp; &quot;$(date +%H)&quot; &lt; &quot;$hend&quot; &amp;&amp; &quot;$budni&quot; = &quot;yes&quot; ]]; then
    $ipt -A FORWARD -i $local -m string --string &quot;vk.com&quot; --algo bm -j REJECT
    $ipt -A FORWARD -i $local -m string --string &quot;ok.ru&quot; --algo bm -j REJECT
    $ipt -A FORWARD -i $local -m string --string &quot;facebook.com&quot; --algo bm -j REJECT
    $ipt -A FORWARD -i $local -m string --string &quot;mail.ru&quot; --algo bm -j REJECT
    $ipt -A FORWARD -i $local -m string --string &quot;yandex.ru&quot; --algo bm -j REJECT
fi;

#Секция маскардинга
$ipt -A FORWARD -i $inet -o $local -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ipt -A FORWARD -i $local -o $inet -j ACCEPT
$ipt -t nat -A POSTROUTING -o $inet -j MASQUERADE

#Сохраняем в файл и рестарт
$ipt-save -c &gt; /etc/sysconfig/iptables
systemctl restart iptables.service

exit 0;</code></pre></div><p>Запустить всё это хозяйство: systemctl start site-blocker</p><p>Осталось сделать Учёт Праздничных дней, незапланированных выходных, а так же метод быстрого отключения всего этого добра.&nbsp; <img src="https://linuxforum.ru/img/smilies/ag.gif" alt="ag" /></p>]]></content>
			<author>
				<name><![CDATA[alex_q_2000]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41015</uri>
			</author>
			<updated>2020-12-29T19:48:34Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468254#p468254</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468251#p468251" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alex_q_2000 пишет:</cite><blockquote><p>Привет. Можно сделать пару исполняемых скриптов с правилами для iptables и запускать поочерёдно через крон.</p></blockquote></div><p>Для сервера то пойдёт, но для компа, который не включён постоянно будут проблемы. Пропустил время запуска скрипта и все разрешено. Тогда уж скриптом при загрузке, который будет проверять дату.</p>]]></content>
			<author>
				<name><![CDATA[ormorph]]></name>
				<uri>https://linuxforum.ru/profile.php?id=221</uri>
			</author>
			<updated>2020-12-29T12:29:25Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468251#p468251</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468250#p468250" />
			<content type="html"><![CDATA[<p><strong>alex_q_2000</strong>, установка упомянутого Вами приложения, не поверите, попадает в сферу действия Уголовного Кодекса РФ. Напоминаю о правилах:<br /></p><div class="quotebox"><blockquote><p>3.2.22. Запрещается использовать форум в целях, противоречащих законодательству РФ.</p></blockquote></div><p>Часть сообщения я удалил.<br /></p><div class="quotebox"><cite>alex_q_2000 пишет:</cite><blockquote><p>С Наступающим...</p></blockquote></div><p>Спасибо, но ещё рановато. Успеем отметить.</p>]]></content>
			<author>
				<name><![CDATA[Rizado]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23158</uri>
			</author>
			<updated>2020-12-29T08:23:25Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468250#p468250</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468249#p468249" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rizado пишет:</cite><blockquote><p>...а для котов доступ закрывать не надо</p></blockquote></div><p>Для котов тоже есть iptables, только он полосатый.&nbsp; <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" />&nbsp; С Наступающим...</p>]]></content>
			<author>
				<name><![CDATA[alex_q_2000]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41015</uri>
			</author>
			<updated>2020-12-29T07:38:10Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468249#p468249</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468248#p468248" />
			<content type="html"><![CDATA[<p><strong>alex_q_2000</strong>, попрошу без политики. Сообщение исправил.</p>]]></content>
			<author>
				<name><![CDATA[Rizado]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23158</uri>
			</author>
			<updated>2020-12-28T05:43:33Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468248#p468248</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468247#p468247" />
			<content type="html"><![CDATA[<p>Привет. Можно сделать пару исполняемых скриптов с правилами для iptables и запускать поочерёдно через крон. Скрипт с блокировкой нежелательных сайтов покажу ниже, а второй, который разрешает всё - такой же, только без секции &quot;БЛОКИРОВКА нежелательных РЕСУРСОВ&quot;.<br /></p><div class="codebox"><pre><code>#!/bin/sh

#Включаем форвардинг
echo 1 &gt; /proc/sys/net/ipv4/ip_forward

#Пути, интерфейсы и сети
ipt=&quot;/sbin/iptables&quot;
inet=&quot;enp0s3&quot;
local=&quot;enp0s8&quot;

#Очистка iptables
$ipt -F
$ipt -X
$ipt -t nat -F
$ipt -t nat -X
$ipt -t mangle -F
$ipt -t mangle -X

#Всё, кроме INPUT
$ipt -P INPUT DROP
$ipt -P OUTPUT ACCEPT
$ipt -P FORWARD ACCEPT

#Разрешаем lo и уже установленные соединения
$ipt -A INPUT -i lo -j ACCEPT
$ipt -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

#Разрешаем пинг
$ipt -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

#СЕКЦИЯ БЛОКИРОВКИ НЕЖЕЛАТЕЛЬНЫХ РЕСУРСОВ
$ipt -A FORWARD -i $local -m string --string &quot;vk.com&quot; --algo bm -j REJECT
$ipt -A FORWARD -i $local -m string --string &quot;ok.ru&quot; --algo bm -j REJECT
$ipt -A FORWARD -i $local -m string --string &quot;facebook.com&quot; --algo bm -j REJECT
$ipt -A FORWARD -i $local -m string --string &quot;mail.ru&quot; --algo bm -j REJECT
$ipt -A FORWARD -i $local -m string --string &quot;yandex.ru&quot; --algo bm -j REJECT

#Секция маскардинга
$ipt -A FORWARD -i $inet -o $local -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ipt -A FORWARD -i $local -o $inet -j ACCEPT
$ipt -t nat -A POSTROUTING -o $inet -j MASQUERADE

#Сохраняем в файл и рестарт
$ipt-save -c &gt; /etc/sysconfig/iptables
systemctl restart iptables.service</code></pre></div><p>Для проверки не забываем очищать кеш браузера на клиенте за шлюзом.</p>]]></content>
			<author>
				<name><![CDATA[alex_q_2000]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41015</uri>
			</author>
			<updated>2020-12-27T12:14:42Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468247#p468247</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468246#p468246" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Wolfenberg пишет:</cite><blockquote><p><strong>smola</strong>, <a href="https://habr.com/ru/post/119286/">Вот всё, что вы хотите знать от летающих медведей</a></p></blockquote></div><p>Спасибо, читал эту статью. Мне больше понравились варианты: 1) установить pi-hole и запрещать/разрешать доступы к ресурсам сети с помощью White и Black - листов, попутно включая (pihole enable) и выключая pi-hole&nbsp; по времени; 2) кардинально - установить ОС pfSense и настроить брандмауэр&nbsp; для ip адресов и портов, включая правила по расписанию. Ну, не знаю что лучше, попробую и то, и другое.</p>]]></content>
			<author>
				<name><![CDATA[smola]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41677</uri>
			</author>
			<updated>2020-12-27T09:25:43Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468246#p468246</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468245#p468245" />
			<content type="html"><![CDATA[<p>dansguardian выглядит мёртвым.</p>]]></content>
			<author>
				<name><![CDATA[Vascom]]></name>
				<uri>https://linuxforum.ru/profile.php?id=5339</uri>
			</author>
			<updated>2020-12-27T08:32:31Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468245#p468245</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468244#p468244" />
			<content type="html"><![CDATA[<p><strong>smola</strong>, <a href="https://habr.com/ru/post/119286/">Вот всё, что вы хотите знать от летающих медведей</a></p>]]></content>
			<author>
				<name><![CDATA[Wolfenberg]]></name>
				<uri>https://linuxforum.ru/profile.php?id=9425</uri>
			</author>
			<updated>2020-12-27T07:36:28Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468244#p468244</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468243#p468243" />
			<content type="html"><![CDATA[<p><strong>smola</strong>, а на роутере это нельзя сделать? Мой Mikrotik точно позволяет, не вникал в подробности, так как малых детей нет, а для котов доступ закрывать не надо <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /> .</p>]]></content>
			<author>
				<name><![CDATA[Rizado]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23158</uri>
			</author>
			<updated>2020-12-27T06:04:23Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468243#p468243</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Как ограничить из сети доступ в Интернет по времени?]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=468242#p468242" />
			<content type="html"><![CDATA[<p>Приветствую всех!<br />У меня существует проблема: мои дети учатся в школе и никак не делают уроки пока я пропадаю на работе. Днем развлечения — игры, мультики, тик-ток, вацап, а вечером уроки до поздна, мелкий ноет, что не успевает. Короче — достали! Решил я поставить шлюз на debian и ограничить им доступ в Интернет. Чтобы по рабочим дням недели с 9:00 до 18:00 был доступ только к сетевому дневнику и другим образовательным ресурсам по списку, а в другое время — разрешено всё. Только как сделать — точно не знаю. Толи нужно использовать squid, толи через iptables? Думаю все-таки, нужно использовать правила таблицы, только какие — знаний не хватает. Помогите, пожалуйста, советом.</p>]]></content>
			<author>
				<name><![CDATA[smola]]></name>
				<uri>https://linuxforum.ru/profile.php?id=41677</uri>
			</author>
			<updated>2020-12-27T04:01:34Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=468242#p468242</id>
		</entry>
</feed>
