Почтовый сервер на роутере keenetic

Устанавливаем пакет opkg install xmail
Создаём каталоги mkdir /opt/var/lib/xmail /opt/var/lib/xmail/MailRoot
Распаковываем архив tar xvjf /opt/etc/MailRoot.tar.bz2 -C /opt/var/lib/xmail/MailRoot
Копируем файл запуска cp /opt/var/lib/xmail/MailRoot/xmail /opt/etc/init.d/S37XMail
Устанавливаем права файлу chmod +x /opt/etc/init.d/S37XMail
Меняем владельца каталога и под каталогов chown -R nobody:nobody /opt/var/lib/xmail
Устанавливаем права каталогу chmod -R 700 /opt/var/lib/xmail
Выполняем XMCrypt password (запоминаем ответ 15041616120a1701)
Приводим файл запуска /opt/etc/init.d/S37XMail к виду.
В прошивке finger запущен на 79 порту, меняем порт -Fp 1045 или выключаем совсем заменив на -F-

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

#!/bin/sh

XMAIL_ROOT=/opt/var/lib/xmail/MailRoot
XMAIL_CMD_LINE="-MD 22 -PX 3 -SX 3 -Qn 3 -Yt 3 -Fp 1045 -CX 3 -Ln 3"
PATH=$XMAIL_ROOT/bin:/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/opt/bin/XMail
NAME=XMail
DESC="XMail Server"

test -f $DAEMON || exit 0

set -e
ulimit -c 10000
ulimit -s 128

start_xmail()
{
		MAIL_ROOT=$XMAIL_ROOT
		export MAIL_ROOT
		MAIL_CMD_LINE=$XMAIL_CMD_LINE
		export MAIL_CMD_LINE
		XMAIL_PID_DIR=/opt/var/run
		export XMAIL_PID_DIR 
		rm -f /opt/var/run/$NAME.pid
		$DAEMON
		while [ ! -f /opt/var/run/$NAME.pid ]
		do
				sleep 1
		done
}

stop_xmail()
{
		if [ -f /opt/var/run/$NAME.pid ]
		then
			echo `date` > $XMAIL_ROOT/.shutdown
			kill -INT `cat /opt/var/run/$NAME.pid`
			while [ -f $XMAIL_ROOT/.shutdown ]
			do
				sleep 1
			done
		fi
}


case "$1" in
	start)
			echo -n "Starting $DESC: "
			start_xmail
			echo "$NAME.[" `cat /opt/var/run/$NAME.pid` "]"
	;;
	stop)
			echo -n "Stopping $DESC: "
			stop_xmail
			echo "$NAME."
	;;
	restart|force-reload)
			echo -n "Restarting $DESC: "
			stop_xmail
			sleep 3
			start_xmail
			echo "$NAME.[" `cat /opt/var/run/$NAME.pid` "]"	
	;;
	*)
	N=/opt/etc/init.d/S37$NAME
	echo "Usage: $N {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0

Для отправки через /opt/bin/sendmail
Создаём каталог mkdir /opt/libexec и симлинк ln -sf /opt/bin/sendmail /opt/libexec/sendmail.xmail
Сделаем скрипт в каталоге /opt/libexec с названием sendmail.xmail.sh и симлинк ln -sf /opt/libexec/sendmail.xmail.sh /opt/sbin/sendmail

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

#!/bin/sh

export DEFAULT_DOMAIN="domain_name"
	if [ -z $MAIL_ROOT ];
	then
export MAIL_ROOT=/opt/var/lib/xmail/MailRoot
	fi
/opt/libexec/sendmail.xmail $*

Приводим файл /opt/var/lib/xmail/MailRoot/ctrlaccounts.tab к виду, где псевдоним «admin» и зашифрованый пароль XMCrypt «15041616120a1701».
Используется [TAB], а не пробел.

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

"admin"	"15041616120a1701"

Приводим файл /opt/var/lib/xmail/MailRoot/ctrl.ipmap.tab к виду

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

"0.0.0.0"	"0.0.0.0"	"DENY"	1
"127.0.0.1"	"255.255.255.255"	"ALLOW"	2
"192.168.1.0"	"255.255.255.0"	"ALLOW"	3

Приводим файл /opt/var/lib/xmail/MailRoot/smtprelay.tab к виду

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

"127.0.0.1"	"255.255.255.255"
"10.1.30.0"	"255.255.255.0"
"192.168.1.0"	"255.255.255.0"

Приводим файл /opt/var/lib/xmail/MailRoot/server.tab к виду

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

"RootDomain"	"domain_name"
"SmtpServerDomain"	"reverse_dns"
"POP3Domain"	"domain_name"
"HeloDomain"	"domain_name"
"PostMaster"	"root@domain_name"
"ErrorsAdmin"	"root@domain_name"

Приведены только нужые строки.
«domain_name» можно заегистрировать например no-ip, и mx-запись. «reverse_dns» можно посмотреть командой nslookup ip-address.
Открываем порты 25 и 110 и запускаем новенького /opt/etc/init.d/S37XMail start
Продолжение следует.

Страницы 1 2 Далее

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Topic RSS feed

Сообщений [ с 1 по 25 из 43 ]

1 2013-12-03 21:36:04

  • arnisoft
  • New member
  • Неактивен
  • Зарегистрирован: 2012-09-09
  • Сообщений: 8

Тема: Ищу почтовый сервер. Есть что-то под Keenetic?

В доме ПК и 2 ноута. С учетом двойных загрузок и виртуалок получается 7 ОС (Linux, Win разных версий). Из каждой хочется ходить на почтовый ящик. Точнее этих ящиков 3.
Глупо подключаться и вытягивать почту в тот почтовый клиент, которым пользуешься в данный момент — как потом посмотреть сообщение с другого компа?
Так же глупо не удалять сообщения на сервере и вытягивать одно и тоже письмо на каждый почтовый клиент.
Можно было бы использовать какой-то один почтовый ящик для сбора почты со всех, а к нему ходить через web, но веб-интерфейс не нравится совершенно, кроме того не хочется быть в заложниках от доступности инета. Да и Яндекс почта (а у меня именно Яндекс в качестве основного ящика) периодически подвисает под Ubuntu — что-то там флеш бажит.

Как я понял, меня бы устроил IMAP почтовый сервер, который сам будет централизовано хранить всю почту, а почтовые клиенты будут лишь удаленно отображать её. Развернув такой централизованный почтовик на роутере, я похоже решил бы все свои пожелания. Есть ли под Keenetic почтовый сервер IMAP? Поиск по форуму и по списку пакетов вобщем-то показал что нет.
Или быть может есть какое-то другое техническое решение под мои пожелания (почта хранится централизовано, в локальной сети, управление происходит через обычные десктопные почтовые клиенты)?

2 Ответ от Zyxmon 2013-12-04 21:24:47

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Можно попробовать собрать http://www.dovecot.org. Подходит?
Тестировать будете? Кинетик какой?

3 Ответ от Floppik 2013-12-05 07:30:32

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Я тоже заинтересован в почтовом сервере.
И могу помочь с тестированием, keenetic giga 2, v. 1.11

Отредактировано Floppik (2013-12-05 07:31:13)

4 Ответ от arnisoft 2013-12-05 09:28:23

  • arnisoft
  • New member
  • Неактивен
  • Зарегистрирован: 2012-09-09
  • Сообщений: 8

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Конечно буду. Первая (белая) гига.

5 Ответ от Zyxmon 2013-12-05 10:37:08

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

6 Ответ от Floppik 2013-12-05 12:42:56

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Установил, пока разбираюсь в конфигах и пытаюсь победить

doveconf: Error: default_login_user doesn't exist: dovenull

Написано, что нужно создать пользователей dovecot и dovenull и группы. Только где их надо создать?
Ещё я где-то прочитал, что нужен postfix для полноценной работы сервера:

Dovecot — это фактически способ хранить почту на сервере и предоставить доступ к этой почте авторизованным пользователям. Чтобы Dovecot получил эту почту, ее надо ему передать. Для этого есть МТА, в моем случае Postfix. Проще говоря, сам по себе Dovecot — один в поле не воин.

Отредактировано Floppik (2013-12-05 12:56:23)

7 Ответ от Zyxmon 2013-12-05 13:15:23

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik :

Написано, что нужно создать пользователей dovecot и dovenull и группы. Только где их надо создать?

Это мне сначала нужно сделать патч. А нет ли другой софтины отсюда, более простой
https://dev.openwrt.org/browser/packages/mail

В репе сейчас mini_sendmail и msmtp — как писали рабочие. С postfix возиться нет времени. В репе openwrt отсутсвует.

8 Ответ от Floppik 2013-12-05 13:51:01

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

На сайте dovecot’а пишут что в качестве MTA могут использоваться следующие программы:

MTA is a generic term and usually refers to one of these popular software packages:

Postfix is Wietse Venema’s secure, fast and flexible mailer. Default on SUSE Linux and NetBSD.

Exim is Philip Hazel’s flexible mailer. Default on Debian GNU/Linux.

Sendmail the original BSD mailer. Default on FreeBSD; a Sun spinoff is used on Solaris.

Courier was inspired by qmail, but intends to do things right.


qmail
is an obsolete and unmaintained server. Its POP3 part can be taken over by Dovecot. Qmail started off boasting about speed and security in the mid-1990s, but has lots of unfixed bugs (this document includes patches where known), among them security bugs that remain unfixed, and the security guarantee (500 USD) denied. If you really intend to continue using it, read Dave Sill’s Life with qmail which contains instructions to work around some of qmail’s security issues.

В общем, из всех присутствующих в репе OpenWRT может быть подойдет mini_sendmail. Но как подружить их вместе, я так и не нашел. Сдается мне, что завести полноценный почтовый сервер будет проблематично..

9 Ответ от Zyxmon 2013-12-05 14:15:13

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik :

Но как подружить их вместе, я так и не нашел.

Может тут ….usr/share/doc/dovecot/example-config/example-config/conf.d/15-lda.conf
Там строка, которую нужно исправить (после создания конфига)
#sendmail_path = /usr/sbin/sendmail

Похоже там лишняя папка создалась.

10 Ответ от Zyxmon 2013-12-05 15:24:34

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Пакеты dovecot перезалиты. Исправлена лишняя вложенность папок с примером конфигов (идет из openwrt).
Юзеры и группы должны теперь читаться из /media/DISK_A1/system/etc/{passwd,group} — проверить праильность и полноту такого патча я не могу.

На самом деле версия 2.x собирается в openwrt относительно недавно. Раньше была 1.2.x — если лучше старая, напишите.

11 Ответ от arnisoft 2013-12-10 07:42:00

  • arnisoft
  • New member
  • Неактивен
  • Зарегистрирован: 2012-09-09
  • Сообщений: 8

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Прошу прощения у участников и особенно у Zyxmon, но от идеи развертывания IMAP сервера на роутере пришлось отказаться. Пакет сложный, не атомарный (нужен MTA Exim/Postfix или аналог), объем конфигурирования выше комфортной отметки. Попробовал поставить, почитал доки и осознал для себя, что вставать в зависимость от столь сложного инструмента не могу себе позволить. Я все же не админ.
В итоге сделал сбор всей почты на один ящик, а доступ к тому организовал через IMAP со всех своих почтовых клиентов всех ОС. Вроде бы пока устаивает: почта не дублируется, изменения в одном клиенте видны в другом в силу централизованного хранилища. Немного напрягает, что теперь Яндексе хранит весь объем почты. Но это хотя бы надежнее, чем флешка и роутер.
Еще раз спасибо Zyxmon за труды.

12 Ответ от c61 2013-12-10 08:32:51

  • c61
  • Member
  • Неактивен
  • Зарегистрирован: 2013-03-09
  • Сообщений: 231

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Есть решение, кажущееся значительно проще, Rumble — http://rumble.sourceforge.net/ , для кинетиков не хватает всего двух-трёх зависимых пакетов, и со спамом вопрос открытый. Посмотрите, пожалуйста, годится ли ? Остальное неподъёмно, имхо…

13 Ответ от ryzhov_al 2013-12-10 08:54:19

  • ryzhov_al
  • Member
  • Неактивен
  • Откуда: Смоленск, Россия
  • Зарегистрирован: 2011-12-29
  • Сообщений: 353

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

c61, знаю, что пользователи эксплуатируют Xmail, но от этого не легче: Xmail заброшен три года назад, Rumble — два.

Со всеми вытекающими…

14 Ответ от Zyxmon 2013-12-10 10:09:50

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

c61 :

для кинетиков не хватает всего двух-трёх зависимых пакетов

Вроде бы все нужное есть.

arnisoft :

объем конфигурирования выше комфортной отметки.

В версии dovecot 1.2.x (эта версия в репе AA openwrt) похоже всего один конфигурационный файл. Если что, можно попробовать собрать.
Floppik — Ваше мнение — бросаем dovecot?

15 Ответ от Floppik 2013-12-10 10:52:52

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Zyxmon,  думаю да, можно поробовать этот Rumble.

16 Ответ от Zyxmon 2013-12-10 14:10:27

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik, мне проще xmail собрать — он есть в openwrt.

Случайно наткнулся (на немецком) http://www.okami.de/2013/08/13/openwrt- … -procmail/ — может поможет? Речь наверняка о dovecot 1.2.x

17 Ответ от Floppik 2013-12-10 15:02:30

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Zyxmon,  я так понял, что к dovecot’у нужно ещё fetchmail и procmail. Они в репе есть, или их тоже надо собирать?
Может тогда действительно проще xmail собрать?

18 Ответ от Zyxmon 2013-12-10 15:05:04

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik, почти все, что есть в репе openwrt (есть редкие исключения) собрать не сложно. Сложнее собрать, чтобы работало. Сейчас гляну — что там с xmail.

19 Ответ от Zyxmon 2013-12-10 16:10:05

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

20 Ответ от Floppik 2013-12-11 09:04:39

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Zyxmon,

Downloading http://keenetic.zyxmon.org/packages/xmail_1.26-4_keeneticII.ipk.
Installing xmail (1.26-4) to root...
Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for xmail               :
 *      libpthread *
 * opkg_install_cmd: Cannot install package xmail.
/media/DISK_A1/system/root #

21 Ответ от Zyxmon 2013-12-11 09:57:47

  • Zyxmon
  • Administrator
  • Неактивен
  • Зарегистрирован: 2008-12-07
  • Сообщений: 5,567

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik, забыл выкинуть ненужную зафисимость. В таких случаях нужно использовать флаг (—forcedepends или похожий, посмотрите сами). Сейчас пересоберу, чтобы было проще.

Добавление — перезалил

22 Ответ от sirota202 2013-12-11 10:23:09

  • sirota202
  • Member
  • Неактивен
  • Зарегистрирован: 2013-01-28
  • Сообщений: 273

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Я не знаю для каких оно задачь на кинетике нужно, но, почтовый сервер не слабо так нагружает даже отдельно взятый сервер при большом объёме отправляемых писем (типа, рассылки что-нить). Если глобальные задачи не стоят, то тоже нафиг надо на роутере почту разруливать? Дело личное каждого, но, порой, кажется, что из-за возможности что-то поставить на роутер люди начинают перегибать палку пытаясь сотворить с кинетика чуть-ли не сервер. Раз почту разруливать хотите, небось и DNS сервер на кинетике подняли со всеми соответствующими записями? Или другой сервер на кинетик ссылается? А почту хранить на флешке/диске юсб? Не слишком много гемороя ради фигни?)

23 Ответ от ryzhov_al 2013-12-11 10:51:32

  • ryzhov_al
  • Member
  • Неактивен
  • Откуда: Смоленск, Россия
  • Зарегистрирован: 2011-12-29
  • Сообщений: 353

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

sirota202 :

Не слишком много гемороя ради фигни?)

Безусловно! Тем более при наличии копеечных хостингов.
Никакого смысла, кроме спортивного интереса, кто ж спорит.

Отредактировано ryzhov_al (2013-12-11 10:51:49)

Со всеми вытекающими…

24 Ответ от Floppik 2013-12-11 10:59:07

  • Floppik
  • Member
  • Неактивен
  • Зарегистрирован: 2013-07-08
  • Сообщений: 36

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

sirota202, имхо, если есть есть возможность не зависить не от каких гуглов и яндексов, то почему бы и нет? У меня на роутере поднят сервер с DDNS, xupnpd, торренты, сервер обновления nod. И еще так по мелочи. Проц совершенно не загружен, даже joomla приемлимо работала (SQL) Поэтому пока есть возможность дома иметь свой сервачок с преферансом и танцовщицами под собственные нужды, вообще без каких-либо затрат, этот геморрой оправдан)

25 Ответ от ryzhov_al 2013-12-11 11:02:37

  • ryzhov_al
  • Member
  • Неактивен
  • Откуда: Смоленск, Россия
  • Зарегистрирован: 2011-12-29
  • Сообщений: 353

Re: Ищу почтовый сервер. Есть что-то под Keenetic?

Floppik, выше приведена ссылка на куда более значимые процессорные мощности за 22 рубля в месяц. Потерять почту, SQL-базу или что-то другое, отличное от свободноскачиваемого медиаконтента из-за проблем с роутером будет по настоящему обидно.

Со всеми вытекающими…

Страницы 1 2 Далее

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Размещаем сайт на домашнем роутере

Время на прочтение
7 мин

Количество просмотров 59K

Мне давно хотелось «потрогать руками» интернет-сервисы, настроив веб-сервер с нуля и выпустив его в Интернет. В этой статье хочу поделиться полученным опытом превращения домашнего роутера из узкофункционального устройства в практически полноценный сервер.

Началось всё с того, что служивший верой и правдой роутер TP-Link TL-WR1043ND перестал удовлетворять потребности домашней сети, захотелось 5ГГц диапазона и быстрого доступа к файлам на накопителе, подключенном к роутеру. Просмотрев профильные форумы (4pda, ixbt), сайты с отзывами и посмотрев на ассортимент местных магазинов — решил приобрести Keenetic Ultra.

В пользу именно этого устройства сработали хорошие отзывы владельцев:

  • отсутствие проблем с перегревом (тут пришлось отказаться от продукции Asus);
  • надежность в работе (тут вычеркнул TP-Link);
  • простота в настройке (побоялся не справиться и вычеркнул MikroTik).

Пришлось примириться с минусами:

  • нет WiFi6, хотелось взять оборудование с запасом на будущее;
  • 4 LAN порта, хотелось больше, но это уже не домашняя категория.

В итоге получилась вот такая «серверная»:

  • слева оптический терминал Ростелекома;
  • справа наш подопытный роутер;
  • проводом к роутеру подсоединен завалявшийся m.2 SSD на 128 ГБ, помещенный в коробку USB3 с алиэкспресса, сейчас он аккуратно закреплен на стенке;
  • на переднем плане удлинитель с независимым отключением розеток, провод от него идет к недорогому UPS;
  • на заднем плане пучок витой пары — на этапе ремонта квартиры сразу запланировал RJ45 розетки в местах предполагаемого размещения техники, чтобы не зависеть от замусоренности WiFi.

Итак, у нас есть оборудование, необходимо его настроить:

  • первичная настройка роутера занимает около 2 минут, указываем параметры подключения к провайдеру (у меня оптический терминал переключен в режим бриджа, PPPoE соединение поднимает роутер), название WiFi сети и пароль — в принципе всё, роутер запускается и работает.

Ставим переадресацию внешних портов на порты самого роутера в разделе «Сетевые правила — Переадресация»:

Теперь можно перейти к «продвинутой» части, чего я хотел от роутера:

  1. функционал небольшого NAS для домашней сети;
  2. выполнение функций веб-сервера для нескольких частных страничек;
  3. функционал персонального облака для доступа к личным данным из любой точки мира.

Первое реализуется встроенными средствами, не требуя особых усилий:

  • берем предназначенный для этой роли накопитель (флешку, карту памяти в картридере, жесткий диск или SSD во внешнем боксе и форматируем в Ext4 с помощью MiniTool Partition Wizard Free Edition (у меня нет компьютера с linux под рукой, там можно встроенными средствами). Как я понимаю, при работе система пишет на флешку только логи, поэтому, если их ограничить после настройки системы — можно использовать и карты памяти, если планируете много и часто писать на накопитель — лучше SSD или HDD.

После этого подключаем накопитель к роутеру и наблюдаем его на экране системного монитора

Переходим щелчком по «USB-диски и принтеры» в раздел «Приложения» и настраиваем общий ресурс в разделе «Сеть Windows»:

И у нас имеется сетевой ресурс, который можно использовать с компьютеров под Windows, подключив при необходимости как диск: net use y: \\192.168.1.1\SSD /persistent:yes

Скорость такого импровизированного NAS вполне достаточна для домашнего применения, по проводу он использует весь гигабит, по WiFi скорость составляет около 400-500 мегабит.

Настройка хранилища — один из необходимых шагов для настройки сервера, далее нам нужно:
— приобрести домен и статический IP адрес (можно обойтись и без этого, используя Dynamic DNS, но статический IP у меня уже был, поэтому проще оказалось воспользоваться бесплатными сервисами Яндекса — делегировав туда домен, мы получаем DNS-хостинг и почту на своем домене);

— настроить DNS сервера и добавить A-записи, указывающие на ваш IP:

Вступление в силу настроек делегирования домена и DNS занимает несколько часов, поэтому параллельно занимаемся настройкой роутера.

Для начала необходимо установить репозиторий Entware, из которого мы сможем ставить на роутер необходимые пакеты. Я воспользовался этой инструкцией, только не заливал установочный пакет по FTP, а создал папку прямо на подключенном ранее сетевом диске и скопировал туда файл обычным способом.

Получив доступ по SSH, меняем пароль командой passwd и ставим командой opkg install [имена пакетов] все нужные пакеты:

В ходе настройки на роутере оказались установлены следующие пакеты (результат вывода команды opkg list-installed):

Список пакетов

bash — 5.0-3
busybox — 1.31.1-1
ca-bundle — 20190110-2
ca-certificates — 20190110-2
coreutils — 8.31-1
coreutils-mktemp — 8.31-1
cron — 4.1-3
curl — 7.69.0-1
diffutils — 3.7-2
dropbear — 2019.78-3
entware-release — 1.0-2
findutils — 4.7.0-1
glib2 — 2.58.3-5
grep — 3.4-1
ldconfig — 2.27-9
libattr — 2.4.48-2
libblkid — 2.35.1-1
libc — 2.27-9
libcurl — 7.69.0-1
libffi — 3.2.1-4
libgcc — 8.3.0-9
libiconv-full — 1.11.1-4
libintl-full — 0.19.8.1-2
liblua — 5.1.5-7
libmbedtls — 2.16.5-1
libmount — 2.35.1-1
libncurses — 6.2-1
libncursesw — 6.2-1
libndm — 1.1.10-1a
libopenssl — 1.1.1d-2
libopenssl-conf — 1.1.1d-2
libpcap — 1.9.1-2
libpcre — 8.43-2
libpcre2 — 10.34-1
libpthread — 2.27-9
libreadline — 8.0-1a
librt — 2.27-9
libslang2 — 2.3.2-4
libssh2 — 1.9.0-2
libssp — 8.3.0-9
libstdcpp — 8.3.0-9
libuuid — 2.35.1-1
libxml2 — 2.9.10-1
locales — 2.27-9
mc — 4.8.23-2
ndmq — 1.0.2-5a
nginx — 1.17.8-1
openssl-util — 1.1.1d-2
opkg — 2019-06-14-dcbc142e-2
opt-ndmsv2 — 1.0-12
php7 — 7.4.3-1
php7-mod-openssl — 7.4.3-1
poorbox — 1.31.1-2
terminfo — 6.2-1
zlib — 1.2.11-3
zoneinfo-asia — 2019c-1
zoneinfo-europe — 2019c-1

Возможно, тут что-то лишнее затесалось, но места на накопителе много, поэтому разбираться не стал.

После установки пакетов настраиваем nginx, я пробовал с двумя доменами — на втором настроен https, и пока висит заглушка. 81 и 433 внутренние порты вместо 80 и 443 используются, поскольку на нормальных портах висят админки роутера.

etc/nginx/nginx.conf

user  nobody;
worker_processes  1;
#error_log  /opt/var/log/nginx/error.log;
#error_log  /opt/var/log/nginx/error.log  notice;
#error_log  /opt/var/log/nginx/error.log  info;
#pid        /opt/var/run/nginx.pid;

events {
    worker_connections  64;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    #access_log  /opt/var/log/nginx/access.log main;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;

server {
    listen 81;
    server_name milkov.su www.milkov.su;
    return 301 https://milkov.su$request_uri;
}

server {
        listen 433 ssl;
        server_name milkov.su;
        #SSL support
        include ssl.conf;
        location / {
            root   /opt/share/nginx/html;
            index  index.html index.htm;
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
            }
        }
}

etc/nginx/ssl.conf

ssl_certificate /opt/etc/nginx/certs/milkov.su/fullchain.pem;
ssl_certificate_key /opt/etc/nginx/certs/milkov.su/privkey.pem;
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:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
ssl_prefer_server_ciphers on;
ssl_dhparam /opt/etc/nginx/dhparams.pem;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;
ssl_stapling on;

Для того, чтобы сайт работал по https, воспользовался известным скриптом dehydrated, установив его по этой инструкции. Затруднений этот процесс не вызвал, запнулся только на том, что в тексте скрипта для работы на моем роутере надо закомментировать строчку в файле /opt/etc/ssl/openssl.cnf:

[openssl_conf]
#engines=engines

И отмечу, что генерация dhparams.pem командой «openssl dhparam -out dhparams.pem 2048» на моем роутере занимает больше 2 часов, если бы не индикатор прогресса — потерял бы терпение и перезагрузил.

После получения сертификатов перезапускаем nginx командой «/opt/etc/init.d/S80nginx restart». В принципе на этом настройка закончена, но сайта еще нет — если положим в каталог /share/nginx/html файл index.html, увидим заглушку.

<!DOCTYPE html>
<html>
<head>
<title>Тестовая страничка!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Тестовая страничка!</h1>
<p>Это простая статическая тестовая страничка, абсолютно ничего интересного.</p>
</body>
</html>

Чтобы разместить информацию красиво, непрофессионалу типа меня проще воспользоваться готовыми шаблонами, после долгого перебора различных каталогов нашел templatemo.com — там неплохой выбор бесплатных шаблонов, не требующих обязательного указания авторства (что редкость в интернете, большая часть шаблонов в лицензии требуют сохранить ссылку на ресурс, откуда они получены).

Выбираем подходящий шаблон — там есть на самые разные случаи, скачиваем архив, и раcпаковываем его в каталог /share/nginx/html, делать это можно уже со своего компьютера, затем редактируем шаблон (тут потребуются минимальные знания HTML, чтобы не нарушить структуру) и заменяем графику, как показано на рисунке ниже.

Резюме: роутер вполне пригоден для размещения на нем легкого сайта, в принципе — если не предполагается большой нагрузки, можно поставить и php, и экспериментировать с более сложными проектами (смотрю на nextcloud/owncloud, вроде есть успешные установки на такое железо). Возможность установки пакетов поднимает его полезность — например, когда надо было защитить RDP порт ПК в локальной сети, поставил knockd на роутер — и проброс порта к ПК открывался только после port knocking.

Почему именно роутер, а не обычный PC? Роутер — одна из немногих компьютерных железяк, круглосуточно работающих во многих квартирах, домашний роутер обычно абсолютно бесшумен и легкий сайт с числом посещений в сутки меньше сотни его совершенно не напряжет.

  • Интернет
  • Телевидение
  • Видеонаблюдение
  • Умный домофон
  • Безопасный двор
  • Абонентам

Для настройки роутеров Keenetic необходимо выполнить следующие действия:

Подключите кабель питания, ethernet-кабель в разъем INTERNET или WAN. Патч-корд, который был в комплекте, подключите в любой LAN порт одним разъемом и в сетевую карту компьютера другим.

Откройте браузер (Internet explorer, Opera, Chrome, Firefox и т.д.) и в адресной строке введите 192.168.0.1 или 192.168.1.1, нажмите ENTER. В появившимся окне введите логин и пароль, по умолчанию это (admin,admin), если не подходит, то аутентификационные данные написаны на наклейке в нижней части роутера.

Если вас переключили на новую технологию IPOE, то пункт №1 необходимо пропустить.

1. Зайдите в меню Интернет > PPPoE/VPN и нажмите кнопку Добавить соединение для настройки параметров подключения к Интернету.

В окне Настройка соединения выполните следующее:

  • Убедитесь, что установлена галочка в поле Включить для активизации создаваемого подключения и в поле Использовать для выхода в Интернет.
  • В поле Тип (протокол) укажите протокол подключения PPTP.
  • В поле Подключаться через укажите интерфейс, через который вы будете выходить в Интернет (в нашем примере это интерфейс ISP).
  • В поле Адрес сервера впишите доменное имя PPTP-сервера: vpn.itnet33.ru
  • В поля Имя пользователя и Пароль введите соответственно логин и пароль, предоставленные провайдером для подключения к Интернету.
  • Поля Имя сервиса и Имя концентратора являются необязательными, оставьте их пустыми.

В поле Настройка параметров IP оставьте значение Автоматическая, IP-адрес для выхода в Интернет вы получаете от провайдера автоматически по DHCP.
Нажмите Применить для сохранения настроек.

Далее, Вам необходимо позвонить в нашу службу техподдержки по номеру 8-800-555-49-15 и сообщить об установке нового оборудования для его регистрации в сети.

2. Установите пароль на Wi-Fi (беспроводную сеть).
Выполните следующие действия:

  • Нажмите на 4 иконку в нижнем меню и выберите вкладку Точка доступа.
  • Поставьте галку у пункта «Включить точку доступа».
  • Введите имя сети – это имя, как будет называться ваш Wi-Fi, в пункте «Защита сети»
  • Выберите пункт WPA-PSK или WPA2-PSK (Рекомендуется).
  • В строку «ключ сети» пропишите пароль от 8 символов и нажимаем кнопку «Применить».

Всем привет! Сегодня я расскажу вам про проброс портов на роутере ZyXEL Keenetic. Я постарался описать все как можно подробнее, если у вас будут возникать какие-то вопросы при прочтении, то пишите в комментариях. Если вы не знаете, что такое порты, то читаем эту статью.

ПРИМЕЧАНИЕ! Инструкции подходят для всех моделей ZyXEL Keenetic: OMNI 2, VIVA, GIGA, 4G, Lite, Start, Air, Extra, Duo, SpeedSter, Ultra и другие.

Содержание

  1. ШАГ 1: Вход в настройки роутера
  2. ШАГ 2: Проверка или включение UPnP (Universal Plug and Play)
  3. ШАГ 3: Проброс портов
  4. ШАГ 4: Открытие портов на компьютере с ОС Windows
  5. Решение проблем с удаленным доступом
  6. Задать вопрос автору статьи

ШАГ 1: Вход в настройки роутера

Все настройки мы будем производить через обычный Web-интерфейс, куда можно попасть с обычного браузера. Вы можете делать настройки с любого устройства – будь это компьютер, ноутбук, телефон или даже телевизор. Откройте браузер и в адресную строку впишите один из предложенных адресов (или перейдите по ссылкам):

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  • 192.168.1.1
  • keenetic.net

Далее вам нужно будет вписать логин и пароль. По умолчанию используется комбинация admin-admin. Всю информацию по входу в админку маршрутизатора можно подсмотреть на этикетке, которая находится на нижней части аппарата.

Как открыть порты в роутере ZyXEL Keenetic? Далее мы и будем этим заниматься, но прежде чем мы начнем, то давайте будем правильно использовать это понятие. На маршрутизаторе все же не открывают, а именно пробрасывают (переадресовывают или перенаправляют) порты. Роутеру сами эти порты не нужны, а их используют конечные приложения или даже устройства, которые находятся в локальной сети. Интернет-центр в этом плане выступает неким проливом, через который идет трафик. Открывают же порты уже на конечном устройстве. Например, на компьютере – об этом я также расскажу чуть ниже. Надеюсь, с этим понятием мы разобрались.

ШАГ 2: Проверка или включение UPnP (Universal Plug and Play)

Для начала давайте разберем понятие UPnP на примере. Вообще по умолчанию на всех роутерах, в том числе на ZyXEL Keenetic запрещены входящие подключения из интернета за счет работы межсетевого экрана. Это сделано для безопасности в локальной сети. Технология UPnP позволяет автоматически делать проброс порта через роутер при запуске программ на компьютере, телефоне или даже телевизоре.

Например, запустили вы Torrent на компьютере. На роутере автоматически идет проброс этого порта. Когда вы программу закрываете, то порт и проброс закрывается. Аналогично касается почти всех программ, которые работают с интернетом. По умолчанию данная функция включена на роутере, но лучше это сразу проверить. По сути UPnP постоянно контролирует проброс именно тех портов, которые необходимы для работы приложений на компьютере, телефоне или других устройствах, работающих с интернетом.

Прежде чем мы приступим еще пару слов. Иногда даже при включенной функции UPnP некоторые программы могут не работать. А возможно вам нужно пробросить порты для работы отдельных устройств, например, для работы выделенного сервера или для доступа к камере видеонаблюдения. В таком случае проброс нужно делать вручную, а это описано в 3-м шаге. В любом случае вам нужно проверить, что данная функция включена, поэтому не пропускайте этот шаг.

Новая прошивка

В меню выберите раздел «Общие настройки» и далее выберите «Изменить набор компонентов». Убедитесь, что служба включена и установлена.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

Старая прошивка

  1. Кликните по шестеренке.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Перейдите на вкладку «Обновление» и в списке найдите нашу службу. Если она включена, то рядом будет стоять галочка, а состояние будет в режиме «Установлен».

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Если вы хотите включить функцию, то включите галочку, а если хотите выключить, то уберите.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Для того, чтобы изменения вступили в силу, нужно нажать на кнопку установки в самом низу.

ШАГ 3: Проброс портов

Для начала вам нужно выяснить, какой именно порт, а также протокол использует ваша программа или устройство. Список всех портов можно посмотреть в PDF файлике ниже.

Новая прошивка

В качестве примера я буду настраивать проброс порта для компьютера – для работы с удаленным рабочим столом из-под Windows. Для этого используется порт 3389 протокола TCP.

  1. В разделе «Мои сети и Wi-Fi» нажмите на «Список устройств».

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Вам нужно произвести регистрацию аппарата, на который вы будете пробрасывать порт. Просто нажмите по нему.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Для начала просто вводим название и кликаем по кнопке регистрации.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Этот аппарат появился в списке ниже, опять жмем по нему.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Установите галочку, как на картинке ниже, чтобы устройство всегда имело один IP адрес. Далее ниже в разделе «Переадресация портов», кликаем «Добавить правило».

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. А теперь пройдемся по всем важным пунктам:
    1. Описание – вводим любое понятное вам название.
    2. Вход – тут указываем то подключение, которое вы используете для интернета. Указываем именно то, которое вы создавали в самом начале при первом настройки интернет-центра.
    3. Выход – указываем наше зарегистрированное устройство, на которое будет идти проброс портов.
    4. Протокол – указываем TCP или UDP. Если вам нужно создать правило сразу для двух протоколов, то придется создавать две отдельные настройки (для TCP и UDP).
    5. Тип правила – указываем один порт или диапазон, а ниже вводим значение.
    6. Порт назначения – используется крайне редко, обычно для подмены портом. Например, 80 на 8080.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Сохраняем правило.

Старая прошивка

Я покажу пример проброса для подключения к FTP-серверу. То есть внутри локальной сети к роутеру еще будет подключен системный блок, на котором будет расположен FTP. Для этого будет использоваться 21 порт с протоколом TCP.

  1. Для начала нам нужно зарегистрировать устройство, которое подключено к сети – это нужно для того, чтобы этому аппарату выдавался постоянный IP адрес. Нажмите по значку «Домашняя сеть».

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. На вкладке «Устройства», нажимаем по нашему аппарату. Устанавливаем галочку «Постоянный IP-адрес». Можно также ввести название. Кликаем «Применить».

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. Нажимаем по значку щита.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. На первой вкладке «NAT» нажимаем по кнопке добавления правила.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

  1. А теперь давайте пройдемся по всем пунктам:
    1. Выключить – можно включать и выключать проброс в любое время.
    2. Рабочее расписание – задаете расписание включенного или выключенного проброса.
    3. Описание – сюда можно вводить, все что пожелает.
    4. Интерфейс – это то подключение, через, которое у вас течет интернет. Его можно посмотреть в разделе «Интернет» (значок планетки), на вкладке «Подключения». Для PPPoE используется свое подключения. Для динамического IP «Broadband connection (ISP)».
    5. Протокол – можно выбрать из списка, как сделал это я. Или указать порт вручную, для этого выберите тип «TCP» или «UDP». После этого ниже в поле «Открыть» выбираем или диапазон портов, или конкретный вход.
    6. Перенаправлять на адрес – указываем зарегистрированное наше устройство.
    7. Новый номер порта назначения – используется для подмены портов. Часто используется при маппинге. Например, при использовании порта 2121, подменять его на 21. Нам он не нужен, да и редко используется на практике.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

ПРИМЕЧАНИЕ! Если вам нужно открыть какой-то порт для TCP и UDP протоколов, то нужно создавать два правила.

  1. Сохраняем правило. В моем случае нужно также включить компонент («Система» – «Обновление»), который работает с FTP. Возможно для вашей задачи понадобится какой-то другой компонент, поэтому можете пробежать глазами по компонентам, если у вас не будет что-то работать.

Как пробросить порты на роутере ZyXEL Keenetic: 4 простых шага

ШАГ 4: Открытие портов на компьютере с ОС Windows

Если вы пробрасывали порты для определенной программы или приложения, то на Windows вам нужно их открыть – по этому поводу есть детальная инструкция тут.

Решение проблем с удаленным доступом

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

Скорее всего ваш провайдер постоянно меняет вам внешний IP адрес, то есть он является динамический. Это значит, что в какой-то момент IP поменяется, и доступ к выделенному устройству оборвется. В таком случае вам поможет DDNS (или динамический DNS).

Но DDNS можно использовать только, если ваш провайдер использует динамический белый IP. Если же ваш провайдер использует серый IP, то настроить удаленный доступ можно только на новых прошивках Keenetic – для этого используется служба KeenDNS.

Есть еще одна проблема, с которой вы можете столкнуться. Например, если вы пытаетесь пробросить какой-то порт, а он уже используется. В таком случае вам нужно использовать DMZ. DMZ по сути открывает интернет подключение для вашего выделенного устройства.

Все эти темы уже описаны в отдельных статьях:

  • Что такое серый и белый IP.
  • Что такое DDNS и как его настроить.
  • Что такое DMZ и как его настроить

Если у вас еще остались вопросы, или я что-то не написал, то смело пишите в комментариях, я или кто-то из моей команды обязательно вам поможет. Всем добра!

  • Почему увеличивается пинг до роутера
  • Почему телефон не подключается к интернету через wifi роутер
  • Почему через роутер не работает интернет а на прямую работает
  • Почему я не могу настроить вай фай роутер
  • Почему точка доступа дороже роутера