-
Posts
205 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Gallery
Downloads
Blogs
Events
Posts posted by edm
-
-
-
28 минут назад, Александр Рыжов сказал:
Так под локальной сетью понимается не провайдерская локалка, а трафик между LAN-портами роутера?
не провайдерская. Трафик между адресами 192.168.1.0 - 192.168.1.255, то есть когда играем в мульти-плеер игру по общей точки доступа, или когда передам друг-другу файлы по вай-фай "сопряжениям" через роутер или когда пользуемся 192.168.1.1:portAll. Именно такой трафик не должен учитываться для каждого клиента, а должен учитываться все обращения на внешный мир - в интернет.
Ладно, скажи, пожалуйста, какой интерфес dev "ppp0" и какое правильное значение должен быть у subnet в конфиге Bandwidthd, чтобы работало так, как хочу?
-
1 час назад, Mamay сказал:
десяток другой килобайт локального трафика, испортит всю статистику...
не десяток и не КБ, а сотнями МБ и местами ГБ.
-
1 час назад, Александр Рыжов сказал:
@edm, вы настолько часто обращаетесь к WebUI роутера, что это портит статистику трафика?
именно.
модемный-инет (в сутки 100МБ):
и данные, передающиеся между локальной сетью:
Так как локальная сеть тип безлимитная, а у модемного-инета есть лимит, то мне важно знать, какой клиент и сколько МБ подтратил именно на модемный-инет. Притом что клиент будет заходить на свой локальный owncloud, и трафик локальной сети не толжен подсчитываться.
-
дело в том, что когда обращаюсь к веб-серверу 192.168.1.1:80 , то трафик засчитивается, а мне надо, чтобы трафик локальной сети (то есть 192.168.1.1:80) не вводилось в трафик модемного-инета
-
крч удалил. фигня всё это. vnstat и то лучше.
bandwidthd не удовлетворил требования: не смог мониторить интерфейс модемного инета и разложить трафик по клиентам
-
что-то не получилось настроить правильно.
какой должен быть
subnet 192.168.1.0/24
и какой должен быть интерфейс прослушки для модемного-инета (без трафика между локальными сетями)
dev "ppp0"
-
хм
в Debian уже есть
apt-get install bandwidthd
service bandwidthd start
https://192.168.1.1/bandwidthd/
-
1 минуту назад, Александр Рыжов сказал:
@edm, зачем закреплять? Вроде ничего нового.
зато всё разложено и понятно. И не надо бегать и искать в других местах. Всё в одном месте для чайников
- 2
-
Админ, закрепи этот топик.
Я всё с нуля устанавливал и писал параллельно свои действия.
поэтому тут в инструкции ошибки нет
-
- Popular Post
- Popular Post
(чтобы скачать прикрепленные файлы, нужно зарегаться на сайте)
Полная установка entware-3x совместно с Debian 8, и настройка всей системы: то есть одновременно могут работать две системы (entware и debian).
[Debian 8] или [entware-3x] - означает, что в данном статье описана инструкция установки для этой или иной системы
mc - Отличный инструмент: это файловый менеджен, редактор текста, архиватор. [Debian 8 и entware-3x]
owncloud - облачное локальное хранилище. [Debian 8]
ssl (https) - создание сертификата для локального веб-сервера. [Debian 8]
ssh - защищенное подключение к терминалу и sftp-подключение к флешке. [Debian 8 и entware-3x]
php - веб-интерпретатор для веб-программиста. [Debian 8]
apache - веб-сервер. [Debian 8]
nginx - веб-сервер. [Debian 8]
adminer - легкий веб-интерфейс для управление База Данных. [Debian 8]
phpmyadmin - тяжелый веб-интерфейс для управление База Данных. [Debian 8]
mysql - База Данных. [Debian 8]
postfix - отправка сообщения на любой адрес эл.почты через php-функцию mail(). [Debian 8]
swap - файл подкачки, или увеличения оперативной памяти. [entware-3x]
vnstat - Сбор статистики трафика: система слежения/потребления трафика по интерфейсам. [Debian 8]
bandwidthd - Сбор статистики трафика: система слежения/потребления трафика для каждого подключенного клиента к вай-фай. [entware-3x]gammu - принять/отправить смс через модем и другие функции модема. [Debian 8]
gammu-smsd - демон, которое работает и принимает все входящие смс'ки в модеме. [Debian 8]
datetimefix.sh (1.4.2) - демон исправления времени и даты при перезагрузке роутера (код сам написал). [entware-3x]
gammusmsdfix.sh (2.4) - демон исправляет права доступа к модему для фикса gammu-smsd. Еще демон для авто вкл/выкл gammu-smsd при подключении/извлечении модема. [Debian 8]
initrc (2.18.2) - стартовый скрипт OPKG, который запускает системы Debian и entware. [entware-3x]
и другие - ...
Написал полную инструкцию от меня (веб-мастера)
Требования
• НЕ нужен интернет на роутере
• только для прошивки 2.07 или старше
• прошивка с поддержкой opkg
• kernel 3.x.
• флешка минимум 2гб (у меня 16гб) и исключительно с файловой системой ext4. В Андроиде можно через PARTITION TOOLKIT SD 1.39.apk переформатировать. В Windows - EaseUS Partition Master free. В Линукс - через команду mke2fs -T ext4 -F /dev/путь_до_вашей_флешки
Начинаем.
1. Форматируем флешку в ext4, и подключаем ее к USB роутера.
2. Через 192.168.1.1 веб-интерфейс включаем на роутере FTP-доступ. А еще советую, но не объязательно, поменять порт веб-интерфейса с 80 на 777. Желательно это сделать именно в конце статьи.
3. Важное! Измените на "Чтение и запись" права Доступа к папкам нашей флешки через http://192.168.1.1/#usb.access
4. Заходим через ftp-клиент и создаем папку "install" на нашей флешке.
- скачиваем архив с Debian 8 Jessie и entware-3x mipsel_ent_deb_5.tar.gz (без регистрации можно скачать) 62 MB для ВСЕХ кинетиков.
(для Keenetic DSL, VOX, LTE не поддерживаю, воспользуйтесь другой инструкцией)
и копируем файл mipsel_ent_deb_5.tar.gz в папку "install"
5. Переходим в веб-интерфейс во вкладку OPKG http://192.168.1.1/#usb.opkg и включаем. Выбираем нашу флешку и нажимаем на "применить".
За процессом установки можно отследить в журнале http://192.168.1.1/#tools.log
примерно длиться 1 минуту
Скрытый текстinitrc Версия initrc: 2.18.1_modEntware 0 0 Старт демона для Даты /opt/etc/datetimefix.sh ndm Opkg::Manager: /opt/etc/initrc: start. 0 0 запуск /opt/etc/init.d/doinstall installer Info: Раздел пригоден для установки. installer [1/5] Начало развёртывания системы Entware-3x... installer Info: Создание папок... installer [2/5] Установка базовых пакетов без интернета из временной папки /opt/_pagesOpkg installer Установка: ndm Core::ConfigurationSaver: saving configuration... ndm Core::ConfigurationSaver: configuration saved. installer Info: Установка пакетов прошла успешно! Продолжаем... installer [3/5] Генерация SSH-ключей... ndm Opkg::Manager: /opt/etc/initrc: Generating key, this may take a while... installer Info: Ключ ecdsa создан ndm Opkg::Manager: /opt/etc/initrc: .Generating key, this may take a while... installer Info: Ключ rsa создан installer [4/5] Установка Entware-3x завершена! Сохранение временной зоны ndm Core::Server: started Session /var/run/ndm.core.socket. ndm Core::Server: client disconnected. installer [5/5] Настройка сценария запуска для прошивки NDMS... ndm Core::Server: started Session /var/run/ndm.core.socket. ndm Core::ConfigurationSaver: saving configuration... ndm Core::Server: client disconnected. installer Готово!!! installer Можно открыть SSH-сессию (порт: 22022) для соединения с устройством (войти в Entware-3x) (логин:пароль -> root:zyxel). root root Начало Entware-3x root start /opt/etc/init.d/rc.unslung dropbear[14480] Running in background root Конец Entware-3x root root root Старт демона "фикс gammu-smsd" ndm Opkg::Manager: /opt/etc/initrc: ash: can't kill pid 9281: No such process. ndm Opkg::Manager: /opt/etc/initrc: start. Сообщение Старт Debian сервисы... root с т а р т: ssh ndm Opkg::Manager: /opt/etc/initrc: Starting OpenBSD Secure Shell server: sshd. sshd[14518] Server listening on 0.0.0.0 port 22. sshd[14518] Server listening on :: port 22. root Сообщение Конец.
Всё! установлены и работают одновременно и Entware-3x и Debian 8.
зайти в Debian 8 на кинетике можно по ssh:
логин root
пароль debian
host 192.168.1.1
порт 22
и
зайти в Entware-3x на кинетике можно по ssh:
логин root
пароль zyxel
host 192.168.1.1
порт 22022
Пароль entware-3x никак не связан с паролем кинетика. Меняется он, если необходимо, стандартной командой:
# passwd
Советую изменить пароль в конце статьи.
6. Включаем на флешке Файл Подкачки (swap) http://192.168.1.1/#tools.settings
Размер файла (Мбайт) минимум пишем 200 или больше
7. Далее. Продолжаем настройку entware-3x.
Подключаемся к entware-3x посредством ssh.
Обновляем список пакетов
# opkg update
и устанавливаем нужные нам пакеты:
# opkg install mc # opkg install openssh-server # opkg install openssh-sftp-server
Конфигурация нового openssh-сервера находится в файле /opt/etc/ssh/sshd_config.
(1) через редактор "mc" поменяем порт:
# mcedit /opt/etc/ssh/sshd_config
(2) строчку меняем с
#Port 22
на
Port 2222
(3) Чтобы пользователь root мог заходить по ssh, добавим (отредактируем) строку
PermitRootLogin yes
(4) сохраняем и выходым из редактора.
Создадим ключи командой "ssh-keygen -A"
# ssh-keygen -A
Создадим пользователя sshd командой
# adduser -h /tmp -s /bin/false -D -H sshd
После этого можно запустить Новый SSH-сервер и проверить его работу:
# /opt/etc/init.d/S40sshd start
логин root
пароль zyxel
host 192.168.1.1
порт 2222
также, теперь работает и sftp-сервер на порту 2222
Если работает новый SSH-сервер, то покидаем ssh-подключение на порту 22022.
Далее: (если хотите) удаляем dropbear, который и работает на порту 22022:
подключаемся через новый SSH-сервер (порт 2222):
# /opt/etc/init.d/S51dropbear stop
удаление dropbear
# opkg remove dropbear
Если надо в entware-3x устанавливать какие-то пакеты, то пожалуйста:
# opkg install nginx # opkg install php7 # opkg install maria-db # opkg install и другие
Самое важное. Время от времени появляются обновления на initrc (исправляются ошибки и новое что-то добавляются), поэтому не забываем заходить проверять наличия обновления и обновлять свой старый initrc на новый.
Эти действия проводим через sftp-клиент (или любым другим способом):
initrc - (2.18.2) этот модифицированный файлик добавляем в папку "/opt/etc/". ТЕПЕРЬ в новом initrc (2.18 и выше) сервисы entware-3x уже запускаются автоматически из директории /opt/etc/init.d/, поэтому теперь НЕТ необходимости добавлять сервисы entware-3x в файл initrc вручную.
debian - (2.0) добавляем в папку "/opt/bin/"
lm - добавляем в папку "/opt/bin/"
mm - добавляем в папку "/opt/bin/"
fm - добавляем в папку "/opt/bin/"
в терминале entware-3x
# opkg install xmlstarlet # chmod +x /opt/etc/initrc # chmod +x /opt/bin/debian # chmod +x /opt/bin/lm # chmod +x /opt/bin/mm # chmod +x /opt/bin/fm
debian - через эту команду в entware-3x можно остановить, запустить или сделать резервную копию системы Debian.
# debian start # debian stop # debian backup 2017test
lm - выводит маленькую информацию о памяти диска и загрузки системы
mm - освобождает память от кэшированных записей (почему-то из-за этой команды начинает роутер плохо работать)
fm - алиас к команде "free -m"
ВСЁ. с entware-3x закончили.
в терминале entware-3x:
изменяем репозиторий Debian 8
# mcedit /opt/debian/etc/apt/sources.list
Если хотите остаться (рекомендую) на Debian 8, то:
удаляем всё и добавляем
deb http://ftp.ru.debian.org/debian jessie main deb http://security.debian.org/ jessie/updates main contrib non-free deb http://ftp.ru.debian.org/debian jessie-updates main
Если хотите обновиться до последней стабильной версии (на сегодняшний день это Debian 9), то:
удаляем всё и добавляем
deb http://ftp.ru.debian.org/debian stable main deb http://security.debian.org/ stable/updates main contrib non-free deb http://ftp.ru.debian.org/debian stable-updates main
Сохраняем.
8. Настройка пакетов в Debian 8.
Эти действия проводим через ftp-клиент (или любым другим способом):
lm - добавляем в папку "/debian/bin/"
mm - добавляем в папку "/debian/bin/"
fm - добавляем в папку "/debian/bin/"
в терминале Debian'a
# chmod +x /bin/lm # chmod +x /bin/mm # chmod +x /bin/fm
lm - выводит маленькую информацию о памяти диска и загрузки системы
mm - освобождает память от кэшированных записей (почему-то из-за этой команды начинает роутер плохо работать)
fm - алиас к команде "free -m"
Подключаемся по ssh к Debian 8.
обновления системы:
# apt-get update #будет грузить 40МБ # apt-get upgrade # ответьте "y"
установить окно диалога
# apt-get install dialog
скачать локализацию (3МБ)
# apt-get install locales
изменить на русскую "ru_RU.UTF-8 UTF-8"
# dpkg-reconfigure locales
переключиться на RU и перезайти в систему (то есть перезайти в ssh)
# update-locale LANG=ru_RU.UTF-8
Если у вас Debian 9, то объязательно удаляем systemd, чтобы избежать некоторых проблем (например, с Apache'м)
# apt-get remove systemd
изменить тимезоне
# dpkg-reconfigure tzdata
установить mc (15МБ)
# apt-get install mc
установить аналог apt, по желанию
# apt-get install aptitude
после установки sudo
# apt-get install sudo
добавить в /etc/hosts строчку
127.0.0.1 Keenetic_Giga
другие (объязательно) (10МБ)
# apt-get install apt-utils # apt-get install wget
при брутфорсе(подборе) пароля добавить этот параметр в /etc/ssh/sshd_config
MaxAuthTries 10
или использовать сторонную программу для этого:
# apt-get install fail2ban
Приветствие в консоли.
Все скрипты, отображающие информацию в приветствии лежат в /etc/profile.d/
Отображает (ниже код) системную информацию.
Создать новый файл
# mcedit /etc/profile.d/sshinfo.sh
содержимое sshinfo.sh:
Скрытый текстecho ""; echo ""; SystemMountPoint="/"; LinesPrefix=" "; b=$(tput bold); n=$(tput sgr0); SystemLoad=$(cat /proc/loadavg | cut -d" " -f1); ProcessesCount=$(cat /proc/loadavg | cut -d"/" -f2 | cut -d" " -f1); MountPointInfo=$(/bin/df -Th $SystemMountPoint 2>/dev/null | tail -n 1); MountPointFreeSpace=( \ $(echo $MountPointInfo | awk '{ print $6 }') \ $(echo $MountPointInfo | awk '{ print $3 }') \ ); UsersOnlineCount=$(users | wc -w); UsedRAMsize=$(free | awk 'FNR == 3 {printf("%.0f", $3/($3+$4)*100);}'); SystemUptime=$(uptime | sed 's/.*up \([^,]*\), .*/\1/'); if [ ! -z "${LinesPrefix}" ] && [ ! -z "${SystemLoad}" ]; then echo -e "${LinesPrefix}${b}System load:${n}\t${SystemLoad}\t\t${LinesPrefix}${b}Processes:${n}\t\t${ProcessesCount}"; fi; if [ ! -z "${MountPointFreeSpace[0]}" ] && [ ! -z "${MountPointFreeSpace[1]}" ]; then echo -ne "${LinesPrefix}${b}Usage of $SystemMountPoint:${n}\t${MountPointFreeSpace[0]} of ${MountPointFreeSpace[1]}\t"; fi; echo -e "${LinesPrefix}${b}Users logged in:${n}\t${UsersOnlineCount}"; if [ ! -z "${UsedRAMsize}" ]; then echo -ne "${LinesPrefix}${b}Memory usage:${n}\t${UsedRAMsize}%\t\t"; fi; echo -e "${LinesPrefix}${b}System uptime:${n}\t${SystemUptime}"; echo ""; echo "";
Для безопасности:
изменить пароль Debian 8 пользователя root:
# passwd
создать нового Юзера с логином dima
# adduser dima
добавить его в группу sudo
# adduser dima sudo
проверить ssh и sftp подключении для нового юзера (порт всегда 22). работает.
Запретить ssh-подключение пользователя "root"
# mcedit /etc/ssh/sshd_config
заменить "yas" на "no"
PermitRootLogin no
Выходим из "root" и подключаемся через "dima". Чтобы к консоле пользователь "dima" получил рут-доступ, то введите
$ sudo -s
а чтобы выйти из рут-режима, то
# exit
Создать папку /var/www и назначаем пользователя и группу "dima"
$ sudo -s # mkdir /var/www # chown -R dima:dima /var/www
и начинаем дальше установку пакетов
установить Apache
# apt-get install apache2
добавьте строку ServerName 127.0.0.1
# mcedit /etc/apache2/conf-available/security.conf
потом
# mcedit /etc/apache2/conf-available/security.conf
Находим строчки:
ServerTokens OS
ServerSignature On
Меняем их на:
ServerTokens Prod
ServerSignature Off
установить PHP5 (а для Debian 9 замените php5 на php7.0)
# apt-get install php5 php-pear libapache2-mod-php5 php5-mysql
установить остальные модули php5
# apt-get install php5-gd php5-memcached php5-curl php5-oauth php5-ssh2 php5-memcache php5-json php5-mcrypt
установить MySql
# apt-get install mysql-server mysql-client
старт MySql
# /etc/init.d/mysql start
установить PhpMyAdmin
# apt-get install phpmyadmin php-gettext
или/и установить adminer
# apt-get install adminer # mcedit /etc/apache2/sites-available/000-default.conf
добавить в конце между <VirtualHost *:80></VirtualHost>
строку
include /etc/adminer/apache.conf
Nginx будет принимать запросы на стандартном (80-ом) порту (или на 443) и передавать их апачу, который нужно перекинуть на другой порт, например на 81-ый, и разрешить ему принимать только локальные запросы. То есть апач будет невидим извне.
# mcedit /etc/apache2/ports.conf
Меняем строку:
Listen 80
на
Listen localhost:81
# mcedit /etc/apache2/sites-available/000-default.conf
Меняем строку:
<VirtualHost *:80>
на
<VirtualHost localhost:81>
установить Nginx
# apt-get install nginx
Создаем связку nginx+apache
# cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
# mcedit /etc/nginx/sites-available/default
Скрытый текст#обычное соединение http на порту 80, то есть http://192.168.1.1 #если веб-интерфейс кинетика работает на порту 777, то можно раскомментировать эти 11 строк #server { # listen 80 default_server; # listen [::]:80 default_server ipv6only=on; # root /var/www/html; # #index index.php index.html; # server_name 192.168.1.1; # # #перенаправление на httpS # rewrite ^(.*) https://$server_name$1 permanent; # #} #безопасное соединение httpS, то есть https://192.168.1.1 server { listen 443 default_server; listen [::]:443 default_server ipv6only=on; root /var/www/html; index index.php index.html; server_name 192.168.1.1; ssl on; #ssl_certificate /home/сертификат/server.pem; #ssl_certificate_key /home/сертификат/server.key; #ssl_dhparam /home/сертификат/dhparam.pem; ssl_certificate /var/сертификат/192.168.1.1.crt; ssl_certificate_key /var/сертификат/192.168.1.1.key; ssl_session_timeout 5m; ##ssl_protocols SSLv3 TLSv1; #ssl_protocols TLSv1.1 TLSv1.2; #для собременных браузеров ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #и для старых браузеров, TLSv1 содержит уязвимость. ##ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security max-age=31536000; # максимальный размер загружаемого файла client_max_body_size 2012M; #adminer location ~* ^/adminer/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/adminer/; } #статика owncloud location ~* ^/owncloud/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|apk|mp4|mp3|sh|gz|zip|tar|rar|bz|lz|win|obb)[^?])$ { root /var/www/owncloud; add_header Cache-Control max-age=864000; } # Разруливаем статику и динамку location ~* \.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|apk|mp4|mp3|sh|gz|zip|tar|rar|bz|lz|win|obb)[^?]$ { root /var/www/html; add_header Cache-Control max-age=864000; } # запрет на доступ к .htaccess location ~ /\.ht { deny all; } # передача запроса апачу location / { proxy_pass http://127.0.0.1:81; # Порт на котором висит Apache proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $remote_addr; proxy_set_header Host $host; proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300; proxy_redirect off; proxy_set_header Connection close; proxy_pass_header Content-Type; proxy_pass_header Content-Disposition; proxy_pass_header Content-Length; } }
Для того чтоб apache получал ip-адреса клиентов нужно установить модуль libapache2-mod-rpaf
# apt-get install libapache2-mod-rpaf
_____
SSL
Установка и создание сертификата SSL
# apt-get install openssl
Создаем наше CA (корневой центр сертификации).
# mkdir /var/сертификат #создаем папку # cd /var/сертификат #переходим в эту папку
Первая команда создаёт корневой ключ. Можно и на 4096 вместо 2048
# openssl genrsa -out rootCA.key 2048
Вторая команда создаёт корневой сертификат.
# openssl req -x509 -new -key rootCA.key -days 10000 -out rootCA.crt
Отвечать на вопросы тут можно как душе угодно.
Скрытый текстCountry Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Все! Теперь мы можем создавать сертификаты для наших серверов и устанавливать корневой сертификат на наши клиентские машины.
Создаем сертификат подписаный нашим СА
Генерируем ключ.
# openssl genrsa -out 192.168.1.1.key 2048
Создаем запрос на сертификат.
# openssl req -new -key 192.168.1.1.key -out 192.168.1.1.csr
Тут важно указать имя сервера: домен или IP (например, 192.168.1.1)
Common Name (eg, YOUR name) []: 192.168.1.1
и подписать запрос на сертификат нашим корневым rootCA.key сертификатом.
# openssl x509 -req -in 192.168.1.1.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out 192.168.1.1.crt -days 5000
Теперь на клиенты нужно установить корневой сертификат rootCA.crt
rootCA.crt — можно давать друзьям, устанавливать, копировать на сервера, выкладывать в публичный доступ
rootCA.key — следует держать в тайне
( эти файлы лежать в /var/сертификат/ )
и вот только теперь
Рестартуем nginx и apache
# service nginx restart # service apache2 restart
установить postfix (для php функции mail() )
# apt-get install postfix
виберите "интернет-сайт".
А в "Системное почтовое имя:" я лично прописал один из моих поддоменов (секрет), но вы можете любой сайт прописать, например: "local.mail.ru".
И в php-скриптах тогда надо указать отправителя "localhost@local.mail.ru".
ВАЖНОЕ! Вы найдёте файл /chroot-services.list, в котором по одному на строчку перечислены те Debian-сервисы, что должны запускаться при старте роутера. Изначально там только ssh. Строчки в этом файле соответствуют именам стартовых скриптов из /etc/init.d
То есть чтобы работала ssh, nginx и apache, нужно добавить в /chroot-services.list их, каждое с новой строки:
Скрытый текстssh
#cron
#php5-fpm
apache2
nginx
postfix
vnstat
mysql
## лучше gammu-smsd оставить на плечи /opt/etc/gammusmsdfix.sh
#gammu-smsd
Установка Owncloud находится по адресу.
Далее:
Установка vnstat в Debian 8
ssh-терминал Debian 8:# apt-get install vnstat
Скрытый текстсоздаем хранилище для каждого интерфейса
vnstat --create -i ra2 vnstat --create -i gre0 vnstat --create -i ppp0 vnstat --create -i eth2.1 vnstat --create -i lo vnstat --create -i br0 vnstat --create -i eth2 vnstat --create -i ra1 vnstat --create -i tunl0 vnstat --create -i teql0 vnstat --create -i ezcfg0 vnstat --create -i ra0 vnstat --create -i sit0 vnstat --create -i dummy0 vnstat --create -i eth2.3 vnstat --create -i ra3 vnstat --create -i apcli0 vnstat --create -i br1 vnstat -u -i ra2 vnstat -u -i gre0 vnstat -u -i ppp0 vnstat -u -i eth2.1 vnstat -u -i lo vnstat -u -i br0 vnstat -u -i eth2 vnstat -u -i ra1 vnstat -u -i tunl0 vnstat -u -i teql0 vnstat -u -i ezcfg0 vnstat -u -i ra0 vnstat -u -i sit0 vnstat -u -i dummy0 vnstat -u -i eth2.3 vnstat -u -i ra3 vnstat -u -i apcli0 vnstat -u -i br1
и подправим права
# chown -R vnstat:vnstat /var/lib/vnstat # chmod -R 666 /var/lib/vnstat/ # chmod 777 /var/lib/vnstat/
и стартуем
# service vnstat start
скачиваем архив "веб-интерфейс просмотра статистики vnstat.zip" и распаковываем в debian: /var/www/html/
Если нужно будет, то редактируйте /var/www/html/vt/config.php
В архиве есть две версии интерфейса, которые будут доступны по адресу:
http://192.168.1.1/vt/ - удобно через мобильный телефон просматривать статистику vnstat
http://192.168.1.1/vnstat/ - для ПКУстановка bandwidthd на entware-3x
ssh-терминал entware-3x:# opkg install bandwidthd-sqlite
создадим папку
# mkdir /opt/debian/var/bandwidthd/
редактируем файл конфигурации bandwidthd
# cp /opt/etc/config/bandwidthd.conf /opt/etc/config/orig_bandwidthd.conf # mcedit /opt/etc/config/bandwidthd.conf
стираем все и добавляем
Скрытый текст#################################################### # Bandwidthd.conf # # Commented out options are here to provide # documentation and represent defaults # Subnets to collect statistics on. Traffic that # matches none of these subnets will be ignored. # Syntax is either IP Subnet Mask or CIDR subnet 10.0.0.0 255.0.0.0 subnet 192.168.0.0/16 subnet 172.16.0.0/12 # Device to listen on # Bandwidthd listens on the first device it detects # by default. Run "bandwidthd -l" for a list of # devices. #dev "eth0" #dev "eth2" ################################################### # Options that don't usually get changed # An interval is 2.5 minutes, this is how many # intervals to skip before doing a graphing run #skip_intervals 0 # Graph cutoff is how many k must be transfered by an # ip before we bother to graph it #graph_cutoff 1024 #Put interface in promiscuous mode to score to traffic #that may not be routing through the host machine. #promiscuous true #Log data to cdf file htdocs/log.cdf #output_cdf false #Read back the cdf file on startup #recover_cdf false #Libpcap format filter string used to control what bandwidthd see's #Please always include "ip" in the string to avoid strange problems #filter "ip" #filter "ip and host 192.168.1.1" filter "ip and not host 192.168.1.1" #Draw Graphs - This default to true to graph the traffic bandwidthd is recording #Usually set this to false if you only want cdf output or #you are using the database output option. Bandwidthd will use very little #ram and cpu if this is set to false. graph false #Set META REFRESH seconds (default 150, use 0 to disable). meta_refresh 5 # SQLite DB path sqlite_filename "/opt/debian/var/bandwidthd/stats.db" # Provide a default sensor name to avoid "unset" value sensor_id "default"
и стартуем
# bandwidthd
чтобы в автозапуске была, то поместите S11bandwidthd в папку /opt/etc/init.d/ и выставьте права
# chmod +x /opt/etc/init.d/S11bandwidthd
потом скачиваем архив "веб-интерфейс для просмотра статистики bandwidthd .zip" и распаковываем в debian: /var/www/html/
Обязательно редактируйте /var/www/html/bd/config.php
В архиве есть одна версия интерфейса, которые будут доступны по адресу:
http://192.168.1.1/bd/ - удобно через мобильный телефон просматривать статистику bandwidthdУстановка gammu в Debian 8
ssh-терминал Debian 8:# apt-get install gammu
# gammu-config
выбираем порт (/dev/ttyUSB2) (или /dev/ttyUSB1, или /dev/ttyUSB0, у меня работает только /dev/ttyUSB2)
и conntection (at)документацию по gammu найдете в интернете.
Установка gammu-smsd в Debian 8. Кстати, для приема смс не нужна gammu, хватит и gammu-smsd.
ssh-терминал Debian 8:# apt-get install gammu-smsd # mcedit /etc/gammu-smsdrc
и изменяем на рабочий интерфейс модема
port = /dev/ttyUSB2кстати, чтобы не ругалась на ошибку доступа, то
# chmod 777 /dev/ttyUSB2
В новой версии initrc уже есть мини-демон, которое каждые 2.5 сек изменяет права именно /dev/ttyUSB2 на 777. Так что после перезагрузки роутера можно не делать в ручном режиме "chmod 777 /dev/ttyUSB2"
и стартуем
# service gammu-smsd start
и смотрим в логи роутера, чтобы ошибок не было
Смс'ки входящие сохраняются в папке /var/spool/gammu/inbox/
Установка демона Фикс-даты_времени. (код сам написал)
Демон исправляет время и дату при перезагрузке или выкл/вкл роутера. Так как у роутера нет собственных внутренных часов. Конечно существует сервис NTP-синхронизации с интернет-временем, но оно не сразу исправляет время, особенно если у вас модемный-интернет или нет интернета вообще.
Вы замечали, что после перезагрузки или отключения роутера время и дата сбиваются. И основая проблема в том, что без этого Демона нарушается статистика сервисов по мониторингу трафиков: vnstat и bandwidthd. Вторая проблема касается к веб-серверу на роутере.
datetimefix.sh - скачать и поместить в папку /opt/etc/ и замените старую initrc на новую initrc (см.выше выше выше еще выше и выше)
в ssh entware-3x:
права на запуск
# chmod +x /opt/etc/datetimefix.sh
Можно либо вручную в первый раз запустить
# /opt/etc/datetimefix.sh start
либо перезагрузите роутер, чтобы запустился /opt/etc/datetimefix.sh
Установка демона Фикс-gammu-smsd. (код сам написал)
Демон автоматичечки исправляет права доступа к модему, чтобы gammu-smsd работал и принимал смс'ки. Еще он автоматичечки включает/выключает gammu-smsd при подключении/извлечении модема. Полезно, чтобы в логе не выводились куча информации об отказе доступа и об ненайденном устройстве при извлечении модема.
gammusmsdfix.sh - скачать и поместить в папку /opt/etc/ и замените старую initrc на новую initrc (см.выше выше выше еще выше и выше)
в ssh entware-3x:
права на запуск
# chmod +x /opt/etc/gammusmsdfix.sh
Можно либо вручную в первый раз запустить
# /opt/etc/gammusmsdfix.sh start
либо перезагрузите роутер, чтобы запустился /opt/etc/datetimefix.sh
- 7
- 4
- 1
-
Столкнулся с проблемой, когда мощности Giga 2 не хватает для быстрой работы owncloud (при обработке картинок).
Кто торопиться, то само ускорение в понкуте 8. и 9.
Начинаем. [ Если возниклнут проблемы, сообщите ]
1. Устанавливаем debian на роутер и настраиваем на свой вкус (полная-установка-entware-3x-совместно-с-debian-8)
2. Устанавливаем openssl, php5, nginx, apache2, mysql, adminer, phpmyadmin (не объязательно)
3. Советую использовать версию owncloud 9+ потому, что в веб-версии будет досупна много новых полезных фич + Русская локал тоже. Но можно и стандартную версию owncloud 7 из debian.
4. Установка owncloud-9.1.4-2.1 (если хотите owncloud-7, то перейдите к пункту 5.)
Через ssh-терминал debian'a добавляем ключи к репозитории новой версии owncloud 9
# wget -nv https://download.owncloud.org/download/repositories/stable/Debian_8.0/Release.key -O Release.key # apt-key add - < Release.key
Адрес репозитории
# sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /' > /etc/apt/sources.list.d/owncloud.list"
И объязательно после этого делаем
# apt-get update
5. Установка owncloud
# apt-get install owncloud
6. Файлы конфигурации apache2 и nginx и тестовый httpS сертефикат.
Эти файлы
поместите в новую папку
/var/сертификат/
testCA.crt - а этот Корневой файл Сертификации можно установить на телефон или на комп, чтоб не выдавал предупреждение в браузере.
[предупреждение] чтобы было безопасно, нужно самым создавать сертификат через openssl. Выше прилагающиеся сертификаты для ознакомления.
nginx будет работать на порту :443. чтоб включить и :80 (раскомментируйте строки)
/etc/nginx/sites-available/default
Скрытый текст#обычное соединение http на порту 80, то есть http://192.168.1.1 #если веб-интерфейс кинетика работает на порту 777, то можно раскомментировать эти 11 строк #server { # listen 80 default_server; # listen [::]:80 default_server ipv6only=on; # root /var/www/html; # #index index.php index.html; # server_name 192.168.1.1; # # #перенаправление на httpS # rewrite ^(.*) https://$server_name$1 permanent; # #} #безопасное соединение httpS, то есть https://192.168.1.1 server { listen 443 default_server; listen [::]:443 default_server ipv6only=on; root /var/www/html; index index.php index.html; server_name 192.168.1.1; ssl on; #ssl_certificate /home/сертификат/server.pem; #ssl_certificate_key /home/сертификат/server.key; #ssl_dhparam /home/сертификат/dhparam.pem; ssl_certificate /var/сертификат/192.168.1.1.crt; ssl_certificate_key /var/сертификат/192.168.1.1.key; ssl_session_timeout 5m; ##ssl_protocols SSLv3 TLSv1; #ssl_protocols TLSv1.1 TLSv1.2; #для собременных браузеров ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #и для старых браузеров, TLSv1 содержит уязвимость. ##ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security max-age=31536000; # максимальный размер загружаемого файла client_max_body_size 2012M; #adminer location ~* ^/adminer/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/adminer/; } #статика owncloud location ~* ^/owncloud/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|apk|mp4|mp3|sh|gz|zip|tar|rar|bz|lz|win|obb)[^?])$ { root /var/www/owncloud; add_header Cache-Control max-age=864000; } # Разруливаем статику и динамку location ~* \.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|apk|mp4|mp3|sh|gz|zip|tar|rar|bz|lz|win|obb)[^?]$ { root /var/www/html; add_header Cache-Control max-age=864000; } # запрет на доступ к .htaccess location ~ /\.ht { deny all; } # передача запроса апачу location / { proxy_pass http://127.0.0.1:81; # Порт на котором висит Apache proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $remote_addr; proxy_set_header Host $host; proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300; proxy_redirect off; proxy_set_header Connection close; proxy_pass_header Content-Type; proxy_pass_header Content-Disposition; proxy_pass_header Content-Length; } }
apache будет работать на порту :81 (/etc/apache2/sites-available/000-default.conf)
Скрытый текст<VirtualHost localhost:81> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/html/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> <Directory /var/www/html/owncloud/> Options +FollowSymLinks AllowOverride All <IfVersion < 2.3> order allow,deny allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> </Directory> #чтоб работал adminer include /etc/adminer/apache.conf </VirtualHost> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
и не забудьте поменять порт в файле /etc/apache2/ports.conf
#Listen 80 Listen localhost:81 <IfModule ssl_module> Listen 443 </IfModule> <IfModule mod_gnutls.c> Listen 443 </IfModule> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
делаем рестарт
# service apache2 restart # service nginx restart
7. Посте установки открывает в браузере адрес, входим через "root" и добавляем нового пользователя в mysql
https://192.168.1.1/adminer/
или
https://192.168.1.1/phpmyadmin/
Создаем через SQL-запрос новую базу данных с названием "owncloud", нового пользователя "owncloud" и пароль "owncloud".
Код для ввода в SQL-запрос:
CREATE DATABASE `owncloud` COLLATE 'utf8_general_ci';
CREATE USER 'owncloud'@'localhost' IDENTIFIED BY 'owncloud';
GRANT ALL PRIVILEGES ON `owncloud`.* TO 'owncloud'@'localhost';
REVOKE ALL PRIVILEGES ON `owncloud`.* FROM 'owncloud'@'localhost'; GRANT ALL PRIVILEGES ON `owncloud`.* TO 'owncloud'@'localhost'WITH GRANT OPTION;
Всё.
Открываем адрес https://192.168.1.1/owncloud/ ,чтобы появился конфигурационный файл config.php.
Добавляем новое значение в файл конфигурации config.php
/var/www/owncloud/config/config.php
(для owncloud 7 путь /usr/share/owncloud/config/config.php)
<?php $CONFIG = array ( ... 'dbname' => 'owncloud', 'dbuser' => 'owncloud', 'dbpassword' => 'owncloud', //это пароль 'dbhost' => 'localhost', ... );
Снова переходим по адресу
https://192.168.1.1/owncloud/
и начинаем установку сервиса Owncloud. В поле базы данных указываем базу "owncloud", юзера "owncloud" и пароль "owncloud".
Для безопасности войдите в админку mysql и измените пароль пользователя "owncloud". и не забудьте новый пароль прописать в config.php.
8. Ускоряем работу owncloud 9 и owncloud 7.
Для owncloud 9:
переименовываем
/var/www/owncloud/lib/private/legacy/image.php
в
/var/www/owncloud/lib/private/legacy/image.php_original
и закачиваем в
/var/www/owncloud/lib/private/legacy/
новый файл
Потом переименовываем
/var/www/owncloud/lib/private/IntegrityCheck/Checker.php
в
/var/www/owncloud/lib/private/IntegrityCheck/Checker.php_original
и закачиваем в
/var/www/owncloud/lib/private/IntegrityCheck/
новый файл
Для owncloud 7:
переименовываем
/usr/share/owncloud/lib/private/image.php
в
/usr/share/owncloud/lib/private/image.php_original
и закачиваем в
/usr/share/owncloud/lib/private/
новый файл
9. Включаем кэширование
добавляем новое значение в файл конфигурации config.php
/var/www/owncloud/config/config.php
(для owncloud 7 путь /usr/share/owncloud/config/config.php)
Скрытый текст<?php $CONFIG = array ( ... 'memcache.local' => '\OC\Memcache\APCu', );
Закончили.
- 5
-
Ошибка: еще одна непонятная ситуация. Память 250, а zram умудрился быть больше 250, то есть zram 255
хотя вот тут всё верно
-
1 час назад, Mamay сказал:
Power off на оба порта usb идёт?
думаешь?? а это мысль!
-
1 час назад, r13 сказал:
а флешка случаем не в модем воткнута? Если да то все логично перезагрузка порта в который вставлен модем по питанию отключит и флешку.
если воткнуть в модем, то не видит флешку
-
Bandwidthd - анализатор трафика
in Вопросы по сборке и настройке Opkg
Posted
кстати, есть в bandwidthd.conf строчки:
#Libpcap format filter string used to control what bandwidthd see's
#Please always include "ip" in the string to avoid strange problems
#filter "ip"
filter "192.168.1.1" #добавил это, и пишет ошибку "Error: syntax error in filter expression: syntax error
Malformed libpcap filter string in bandwidthd.conf"