Jump to content

Александр Рыжов

Moderators
  • Posts

    1,215
  • Joined

  • Last visited

  • Days Won

    25

Posts posted by Александр Рыжов

  1. Напишите пожалуйста как отменить эти настройки.Допустим пропала необходимость включения и отключения WIFI по расписанию.
    Перед каждой из приведённых команд добавьте "no", например, "no interface WifiMaster0 schedule WIFI".

    [off]Стоило ли ради строчки цитировать страницу?[/off]

  2. Можно использовать dnsmasq вместо встроенной DNS-службы и вызывать что необходимо с помощью опции dhcp-script.

    Гм, а это будет изменение прошивки, или чего именно?
    Да.
    Если у меня Entware-Keenetic - будет ли работать?
    Да. См. другие примеры скриптов, вызываемых по событиям.
  3. А зачем вешать dnscrypt на другой порт и перехватывать через iptables, если можно сделать opkg dns-override и повесить на 53 порт?
    dns-override существовал не всегда. Эта инструкция была сделана несколько раньше.
  4. PROCS=client2.py
    ARGS=""
    PREARGS="python ~/client2.py"

    Не правильно, надо так:

    PROCS=python 
    ARGS="/full/path/to/client2.py"
    PREARGS=""

    Или другой вариант: установить на файле client2.py атрибут исполяемой, а первой строкой в скрипте добавить shebang "#!/opt/bin/python". Тогда его можно будет исполнять непосредственно. Для этого случая скрипт в /opt/etc/init.d/Sxxmyscript будет выглядить как:

    PROCS=/full/path/to/client2.py
    ARGS=""
    PREARGS=""

    • Thanks 1
  5. @McMCC а когда планируется ? Или можем в uclibc как-то это явно добавить?
    Бросайте привязку к предложенному тулчейну и используйте свой. Или собирайте свою софтину в Entware, где необходимые вам функции в uclibc-ng присутсвуют, а билдрут как раз на основе OpenWrt'шного.
  6. Мне кажется, что задача на столько простая, что ее можно реализовать на базе curl, какого-нибудь xml парсера и баш...
    Кто-то использовал rawdog на Питоне. Довольно легковесный скрипт, генерит статический HTML из RSS/Atom-потока.
  7. Если вы желаете установить TT-RSS, то «догонять» придётся. Нельзя зажмурившись ввести несколько команд с консоли, чтобы сделать круто. Придётся разбираться в деталях.

    Вот пример установки TT-RSS на Entware,

    видео, показывающее скорость работы TT-RSS на Asus RT-N66U (256MB RAM, 600MHz MIPS CPU).
  8. Выходит, каждый раз, когда нужно обновить данный список, нужно пересобирать приложение? Возможности указать список серверов в отдельном конфиге не предусмотрено?
    Нет, пересобирать не нужно.

    Есть возможность. Указанный в стартовым скрипте сервер — один из списка /opt/share/dnscrypt-proxy/dnscrypt-resolvers.csv. Дописывайте в список свой сервер или указывайте все параметры нового сервера прямо в стартовом скрипте. В дкументации dnscrypt-proxy всё расписано.

  9. Папки не копируе командой mput, создает вместо папки файл с таким же названием.
    Если читали двадцать раз, то где вычитали про возможность копирования папок средствами cadaver?
    Но мне надо, чтоб все файлы и папки с определенной директории с сохранением структуры папок копировалось на яндекс.диск при мимимаиьммм вводе команд. Если это пока невозможно, так и скажите
    Возможно собственным скриптом. Гуглится за пять минут, включая проверку на кинетике.
  10. Ниже приведен минимальный перечень действий для запуска nginx на кинетике.

    Подключение к веб-серверу будет возможно только в том случае, если провайдер выдаёт белый IP-адрес.

    1. В веб-интерфейсе роутера в разделе NAT задайте следующие правила:

    62356769d3c9.png

    На скриншоте в колонке «Interface» указано имя интерфейса для подключения к интернету, в колонке «Translate to» — адрес кинетика в локальной сети.

    2. Установите nginx:

    opkg install nginx
     

    3. Отредактируйте в /opt/etc/nginx/nginx.conf следующие строчки:

    • в разделе server:
      listen       81;
       

       

    • в разделе location:
      root   /opt/share/nginx/html;
       

    4. Запустите веб-сервер:

    /opt/etc/init.d/S80nginx start
     

    Всё! Проверьте доступность сервера из интернета, сервер должен показывать приветственную страницу:

    nginx-5.png

    Далее настраивайте веб-сервер согласно вашим задачам, например, можно:

    • Thanks 5
  11. …или как добавить еще один каталог в dlna
    На данный момент со встроенным DLNA это невозможно, только если использовать сторонний DLNA из keenopt/Entware.
    Может просто в определённую папку накидать симлинков на источники и затем указать её в WebUI?
  12. Где-то проблема в другом месте. :?:

    В логах веб-морды видно, что dnsmasq читает список хостов

    dnsmasq[512] read /opt/etc/hosts - 13549 addresses

    , но к нему не приходят запросы.

    Пробовал повесить на стандартный 53-й порт, но естественно не запустился .

    Здесь участвуют всего два звена: правило iptables и dnsmasq.

    Проверка iptables

    Проверить то, что iptables-правило сработало можно с помощью:

    iptables-save | grep 65053

    Если правила нет, то можете запустить его руками и посмотреть где ошибка:

    table=nat /opt/etc/ndm/netfilter.d/010-intercept-dns.sh

    Проверка работы dnsmasq

    Проверить то, что dnsmasq запущен можно с помощью:

    pidof dnsmasq

    Если PID процесса не выводится, значит, процесса нет. Надо посмотреть в системном журнале на что жалуется dnsmasq при старте:

    /opt/etc/init.d/S56dnsmasq start

    Проверьте также, что в настройках кинетика отключены DNS-службы Yandex.DNS/SkyDNS.

    Клиенты кинетика должны получать DNS автоматически.

    Настройки вступят в силу после сброса DNS-кэша операционной системы и браузера.

  13. Не хочет устанавливаться.
    Поднимите глаза на название темы, слово в квадратных скобках.
    Есть команда opkg dns-override. Она гасит внутренний прокси (он начинает работать в RPC-режиме), когда подключают /opt. И 53-й порт свободен.
    Ага, спасибо за напоминание. В первом посте темы надо лишь подправить правило iptables для того, чтобы не терять все плюшки встроенной в прошивку DNS-службы. Необходимо заворачивать не весь трафик на 53 порт, а только исходящий от самого роутера. Только, вот, в iptables я мягко говоря, не силён.
  14. Это решение позволяет заблокировать баннеры, счётчики на веб-страницах, рекламу в Android-приложениях с помощью hosts-файла.

    Было:

    4d262a31311et.jpg

    Стало:

    5643795dd011t.jpg

    Установите необходимые пакеты:

    opkg install dnsmasq-full iptables ndmq

    Поместите в файл /opt/etc/ndm/netfilter.d/010-intercept-dns.sh следующее содержимое:

    #!/bin/sh
    
    [ "$table" != "nat" ] && exit 0
    
    lan_ip=$(ndmq -p 'show interface Bridge0' -P address)
    
    iptables -t nat -I PREROUTING -p udp -m udp --dport 53 -j DNAT --to-destination $lan_ip:65053
    iptables -t nat -I PREROUTING -p tcp -m tcp --dport 53 -j DNAT --to-destination $lan_ip:65053
    

    и сделайте скрипт исполняемым:

    chmod +x /opt/etc/ndm/netfilter.d/010-intercept-dns.sh

    Отредактируйте файл /opt/etc/dnsmasq.conf, добавив в него строки:

    no-resolv
    server=77.88.8.88#1253
    server=77.88.8.2#1253
    port=65053
    

    Скачайте подходящий чёрный список с рекламными хостами и поместите его в файл /opt/etc/hosts. В примере ниже указан один из самых популярных:

    wget -O /opt/etc/hosts http://winhelp2002.mvps.org/hosts.txt

    Всё! Перегрузите роутер для того, чтобы настройки вступили в силу.

     

    0. Убедитесь, что на ПК не прописаны вручную в св-вах сетевого соединения сторонние DNS-серверы. Если вы в сетевых настройках ПК ничего не меняли, то можете это не проверять.

    1. Очистите DNS-кеш операционной системы (для Windows - ipconfig /flushdns)

    2. Очистите DNS-кеш браузера, достаточно его закрыть и открыть по новой.

    На скриншотах выше погода с Gismeteo, если решение работает, то рекламные баннеры будут отсутствовать.

     

     

    С помощью правила iptables любые DNS-запросы от роутера (и его клиентов) «заворачиваются» на dnsmasq. Последний разрешает DNS-имена, при этом используя hosts-файл /opt/etc/hosts с чёрным списком доменов. С настройками по умолчанию для разрешения остальных DNS-имён будет использоваться Яндекс.DNS вместо провайдерских DNS.

     

     

    1. Теряем возможности встроенного в прошивку DNS-сервера/прокси. В частности, возможность кеширования DNS-запросов на роутере и возможность обращения к ресурсом локалки по DNS-именам. Если нынче DNS-запросы и без того замечтательно кешируются операционкой ПК и браузером, то разрешение DNS-имён в локалке может стать проблемой. Скажем, придётся обращаться к NAS'у в локалке не по имени \\MyNas\, а по IP: \\192.168.1.4\.

    2. В связи с тем, что мы отказываемся от провайдерских DNS-серверов, мы теряем возможность разрешения DNS-имён для локальных ресурсов провайдера. Если для установления L2TP/PPTP-соединения сервер задан DNS-именем, например, l2tp.beeline.ru, то лучше вписать в веб-интерфейс кинетика адрес сервера в виде ip.

    Пункт «Что теряем» можно будет исключить, если поправить правила iptables так, чтобы заворачивались только DNS-запросы от самого роутера.

     

    • Thanks 1
  15. Если ваш провайдер перехватывает\логирует\подменяет DNS-запросы или вы просто хотите обезопасить DNS-трафик, то вам может изложенное ниже решение, основанное на использовании dnscrypt-proxy.

    Установите необходимые пакеты:

    opkg install fake-hwclock dnscrypt-proxy iptables ndmq
     

    При запросе о предпочитаемом сервере dnscrypt просто нажмите Enter.

    Поместите в файл /opt/etc/ndm/netfilter.d/010-intercept-dns.sh следующее содержимое:

    #!/bin/sh
    
    [ "$table" != "nat" ] && exit 0
    
    lan_ip=$(ndmq -p 'show interface Bridge0' -P address)
    
    iptables -t nat -I PREROUTING -p udp -m udp --dport 53 -j DNAT --to-destination $lan_ip:65053
    iptables -t nat -I PREROUTING -p tcp -m tcp --dport 53 -j DNAT --to-destination $lan_ip:65053
     

    и сделайте скрипт исполняемым:

    chmod +x /opt/etc/ndm/netfilter.d/010-intercept-dns.sh
     

    Далее, отредактируйте стартовый скрипт /opt/etc/init.d/S09dnscrypt-proxy, заменив в нём строчку

    ARGS="--local-address=127.0.0.1:65053 --daemonize -R cisco"
     

    на

    ARGS="--local-address=$(ndmq -p 'show interface Bridge0' -P address):65053 --daemonize -R cisco"
     

    И перегрузите роутер из веб-интерфейса. Всё!

     

    Диагностика проблем:

     

    0. Убедитесь, что на ПК не прописаны вручную в св-вах сетевого соединения сторонние DNS-серверы. Если вы в сетевых настройках ПК ничего не меняли, то можете это не проверять.

    1. Очистите DNS-кеш операционной системы (для Windows - ipconfig /flushdns)

    2. Очистите DNS-кеш браузера, достаточно его закрыть и открыть по новой.

    3. Перейдите по этой ссылке.

    Как это работает:

    Скрытый текст

    С помощью правила iptables любые DNS-запросы от роутера (и его клиентов) «заворачиваются» на dnscrypt-proxy. Последний шифрует DNS трафик, для провайдера трафик выглядит как HTTPS. С настройками по умолчанию для разрешения DNS-имён будет использоваться сервер OpenDNS, на сегодняшний день это сервис принадлежит компании Cisco. Можно выбрать сервер поближе к себе, на этапе установки пакета выбрав сервер из предлагаемого списка.

    Зачем нужен пакет fake-hwclock:

    Скрытый текст

     

    На борту роутера нет часов реального времени. Этот пакет записывает системную дату роутера в процессе выключения и устанавливает её при следующем старте. Если этого не делать, то возможен следующий deadlock:

    1. dnscrypt-proxy не может начать работать, т.к. срок действия полученного им сертификата будет в будущем.

    2. NTP-клиент не может установить правильную системную дату, т.к. не сможет разрешить DNS-имя ntp.pool.org (или другое).

     

    Что теряем при использовании этого решения:

    Скрытый текст

     

    1. Теряем возможности встроенного в прошивку DNS-сервера/прокси. В частности, возможность кеширования DNS-запросов на роутере и возможность обращения к ресурсом локалки по DNS-именам. Если нынче DNS-запросы и без того замечтательно кешируются операционкой ПК и браузером, то разрешение DNS-имён в локалке может стать проблемой. Скажем, придётся обращаться к NAS'у в локалке не по имени \\MyNas\, а по IP: \\192.168.1.4\.

    2. В связи с тем, что мы отказываемся от провайдерских DNS-серверов, мы теряем возможность разрешения DNS-имён для локальных ресурсов провайдера. Если для установления L2TP/PPTP-соединения сервер задан DNS-именем, например, l2tp.beeline.ru, то лучше вписать в веб-интерфейс кинетика адрес сервера в виде ip.

    3. Теряем в скорости работы DNS-резолвинга. Чем ближе к роутеру находится DNS-сервер, тем быстрее разрешаются DNS-имена. Отказ о провайдерского DNS и накладные расходы на шифрования трафика увеличивают время резолвинга. IMHO, этим можно принебречь. Скажем «Ростелеком» не брезгует отдавать клиентам по DHCP вместе со своими, DNS-серверы Гугла.

     

     

    • Thanks 1
    • Upvote 1
×
×
  • Create New...