Запуск OpenMeetings на 80-м порту

Установил я OpenMeetings на сервере debian. Пока ещё не всё, но сервер поднялся. Беда только в том, что логиниться на него надо по http по порту 5080. А на 80-м порту ничего нет. Не удобно это. Поизучав инструкцию на сайте я резво забрался в указанные там файлы конфигурации и установил порты 80 и 443. После перезапуска сервисы не поднялись. Изучение инструкций и почтовой рассылки привело к пониманию того, что на портах выше 1024 сервис слушать ничего не имеет права, только если его из-под рута запустить. Как они в своей инструкции так просто пишут про изменение порта в конфигах — не понимаю. В результате я сделал перенаправление порта средствами iptables по инструкции. Получился такой скрипт:
Читать далее

Урри, где у него кнопка!?! (с) «Кiборг-забойца, албо прыгоды Электронiка»

Задача скорее академическая, но не знаю чья это форма ответственности. Собственно, есть CentOS, который я мучаю последнее время. И накручиваю на нём iptables всякие. У него два интерфейса. Сейчас один будет воткнут в DMZ, а второй я попытался воткнуть в локальную сеть. Собственно, пока работает только интерфейс DMZ, то вопросов нет. Из локальной сети по адресу DMZ я его нормально обрабатываю. Если включены оба интерфейса, то я из локальной сети вижу его только по локальному интерфейсу. А по адресу DMZ не вижу.
Моё скромное представление о мире подсказывает мне, что таблица маршрутизации route предполагает, что ответы моего сервера надо отправлять через локальный интерфейс. А если я обращаюсь к серверу через интерфейс DMZ, то ответы с локального интерфейса не радуют получателя, то есть меня.
Таблица iptables имеет понятие о том, что соединение может быть уже установленным, и я могу менять трансляции адресов и прочие разрешения выдавать в зависимости от состояний RELATED и ESTEBLISHED у моего соединения. А вот как быть в данном случае? В таблице маршрутизации там многого не наисправишь — потому что маршрут по умолчанию в локальную сеть через локальный интерфейс — это верно. А вот как направить ответ через DMZ-шный интерфейс, если обращение шло через него?

То есть просится какая-то строка, что, дескать, если адрес отправилеля не локальный, а адрес получателя локальный, то всё равно использовать интерфейс DMZ, но у меня нет режима обработки в iptables «использовать интерфейс eth1».

PS: Я знаю, что извращение и в продакшен это не пойдёт, даже если настрою 🙂

Настройка маршрутизации закончена!

Собственно, после настройки сервер всё равно не мог отправлять почту. Меня это расстраивало, а сервер копил в себе мегатонны тестовых писем, но не отдавал их дальше. Я включил опцию LOG на iptables и dmesg показал мне, что у меня по 25-му порту 10.0.0.1 пытается соединиться с 10.0.0.1. Я немного пободался с командами iptables, у меня всё получилось, а потом (что бы не отключать навключенные логи) тупо подредактировал строку в файле /etc/sysconfig/iptables.myown

-A PREROUTING -p tcp -m tcp ! -s 10.0.0.0/24 —dport 25 -j DNAT —to-destination 10.0.0.1

И перезагрузился. Почта пошла! Уррра!

Итак, финальное: виртуальная машина eSafe, проброс портов, настройка маршрутизации

1) С теми, кто делает reject до моих пробрасывающих правил, я не разобрался, поэтому загнал болезнь вовнутрь: Читать далее

iptables меня бесит!

Обратите внимание на выделенные строки! Они появляются при каждой перезагрузке. Ни service iptables save, ни записываение напрямую в файл iptables-save > /etc/sysconfig/iptables не помогает от того, что бы при перезагрузке появились дополнительные строки В НАЧАЛЕ ТАБЛИЦЫ! А «DROP всё остальное» в начале таблицы как-бы делает бесполезными мои полезные правила, которые подгружаются из /etc/sysconfig/iptables.
Сумасшедший Бобёр-извращенец! Как ты это сделал? Откуда ты берёшь эти строки?! Зачем!? Читать далее

Открыть форвард портов на сервер eSafe

UPD: ЭТО ВСЁ НЕПРАВДА! ВСЁ РАБОТАЕТ СОВСЕМ ПО-ДРУГОМУ!!!!

Собственно, почему так я разбирался вчера, а сегодня только выяснил все порты, которые для этого нужны. 🙂

# iptables -t nat -A PREROUTING -p tcp —dport 25 -j DNAT —to-destination 10.0.0.1
# iptables -t nat -A PREROUTING -p tcp —dport 37233 -j DNAT —to-destination 10.0.0.1
# iptables -t nat -A PREROUTING -p tcp —dport 43970 -j DNAT —to-destination 10.0.0.1
# iptables -t filter -I FORWARD 3 -p tcp —dst 10.0.0.1 —dport 25 -j ACCEPT
# iptables -t filter -I FORWARD 3 -p tcp —dst 10.0.0.1 —dport 37233 -j ACCEPT
# iptables -t filter -I FORWARD 3 -p tcp —dst 10.0.0.1 —dport 43970 -j ACCEPT
#

Как запустить сервер на виртуальной машине с единственным адресом DMZ

Собственно, это решение для моей задачи. Задача на самом деле простая, но для меня оказалось не так прямолинейно. Есть современный IBM сервер, на который не ставился коробочный продукт на основе RedHat4 (и сам RedHat4 не ставится, по крайней мере без применения бубна). Продукт ставится в виртуальной машине, но адрес DMZ всего один, поэтому простой вариант настройки (через бридж) не подходит. Сейчас реальный ip назначен хостовой машине, а в виртуальную машину через nat проброшены с хостовой машины только те порты, которые нужны. [тут место для всех спецов, которые будут ржать надо мной как лошади, а лично у меня сегодня это всё случилось впервые] Читать далее