The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Создать новую тему
 - Свернуть нити
Пометить прочитанным
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Архив | Избранное | Мое | Новое | | |  
Форум Информационная безопасность
Возможно ли изменить src_addr с помощью VPN+внешний IP?, !*! mexel, (VPN, IPSec / Linux) 24-Ноя-14, 21:27  [ | | | ] [линейный вид] [смотреть все]
Доброго времени суток, помогите пожалуйста новичку!

Задача: Нужно чтобы сервер(с1) не знал что трафик к нему идет от сервера(с2).
с1 знает IP с2, поэтому надо как-то изменить заголовок пакетов. К настройкам с1 я доступа не имею, на с2 я могу прописать только адрес и порт куда ему послать трафик. Никаких настроек прокси и т.п. там нет. Все сервера и я находимся в разных странах.Я решил (возможно ошибся) что можно изменить src_addr пробросив трафик через себя, т.е. сказать с2 направлять трафик на мой внешний адрес, который я имею когда поднимаю VPN и переправлять пакеты на с1 через шлюз моего провайдера доступа в интернет(3G-modem). Но у меня ничего не выходит. Проброс трафика получается только если использовать шлюз VPN-a, но тогда нет смысла. Если я пробрасываю внешний IP на сайт который показывает IP (2ip.ru и т.п.) через шлюз VPN-a, то вижу тот-же IP,  как если бы я просто зашел на этот сайт без всяких пробросов. А надо чтоб показался адрес выданный мне 3G-провайдером.
Несколько дней рылся в гугле, но ничего подобного не нашел. Может этот вариант вообще тупиковый? Но как тогда решить задачу?

  • gt оверквотинг удален http www opennet ru openforum vsluhforumID10 4997 html, !*! reader (ok), 21:52 , 24-Ноя-14 (1)
    >[оверквотинг удален]
    > себя, т.е. сказать с2 направлять трафик на мой внешний адрес, который
    > я имею когда поднимаю VPN и переправлять пакеты на с1 через
    > шлюз моего провайдера доступа в интернет(3G-modem). Но у меня ничего не
    > выходит. Проброс трафика получается только если использовать шлюз VPN-a, но тогда
    > нет смысла. Если я пробрасываю внешний IP на сайт который показывает
    > IP (2ip.ru и т.п.) через шлюз VPN-a, то вижу тот-же IP,
    >  как если бы я просто зашел на этот сайт без
    > всяких пробросов. А надо чтоб показался адрес выданный мне 3G-провайдером.
    >  Несколько дней рылся в гугле, но ничего подобного не нашел. Может
    > этот вариант вообще тупиковый? Но как тогда решить задачу?

    http://www.opennet.dev/openforum/vsluhforumID10/4997.html

    сообщить модератору +/ответить


geoip и iptables, !*! skryalex, (Linux iptables, ipchains / Другая система) 30-Окт-14, 14:41  [ | | | ] [линейный вид] [смотреть все]
Всем привет.
Пытаюсь прикрутить geoip к iptables чтобы забанить китай.
Установил xtables-addons-common
Скачал и распаковал куда надо базу geoip, но при добавлении правила в iptables мне выдает ошибку:
Could not open /usr/share/xt_geoip/LE/CN.iv4: No such file or directory

Лезу в этот каталог и вижу файлы с расширением только .iv0 в том числе и CN.iv0
Где мне взять тот файл с расширением .iv4?

  • вопрос отпал сгенерировал новую базу, !*! skryalex (ok), 15:36 , 30-Окт-14 (1)
    > Всем привет.
    > Пытаюсь прикрутить geoip к iptables чтобы забанить китай.
    > Установил xtables-addons-common
    > Скачал и распаковал куда надо базу geoip, но при добавлении правила в
    > iptables мне выдает ошибку:
    > Could not open /usr/share/xt_geoip/LE/CN.iv4: No such file or directory
    > Лезу в этот каталог и вижу файлы с расширением только .iv0 в
    > том числе и CN.iv0
    > Где мне взять тот файл с расширением .iv4?

    вопрос отпал. сгенерировал новую базу

    сообщить модератору +/ответить
Проброс до TeamSpeak, !*! Wasiliy, (Linux iptables, ipchains / Linux) 24-Окт-14, 13:49  [ | | | ] [линейный вид] [смотреть все]
Здравствуйте!
Прошу помощи, не могу сам разобраться.
Ситуация такая, есть интернет по кабелю, воткнут в роутер, в роутер воткнут raspberry pi(ОС rasbian, основан на debian) имеет адресс 192.168.1.40.
В другом месте есть сервак на ubuntu 12.10 с интернетом, с установленным там teamspeak сервером.
Задача: подключаться к серверу teamspeak через интернет от первой точки.
Сделано: ubuntu подключается к raspberry с помощью openvpn и попадают в сеть 10.10.100.1(сервер rasbian) и 10.10.100.22(клиент ubuntu).
На роутере проброшен порт 9987 UDP на адресс 192.168.9.40(когда там стоял тоже ubuntu с teamspeak сервером и это было достаточно, всё работало)теперь там стоит raspberry, а на него нет порта teamspeak:(
На raspberry настроен iptables такого вида(видом было на самом деле уже очень много)
*mangle
:PREROUTING ACCEPT
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
COMMIT

*filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT

-A FORWARD -i tun0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o tun0 -j ACCEPT
COMMIT


*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
-A PREROUTING -i eth0 -p udp -m udp --dport 9987 -j DNAT --to-destination 10.10.100.22

-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT


что имеем с такими правилами, пытаемся подключиться клиентом teamspeak на внешний адрес роутера, выдает ошибку подключения
Смотрим tcpdump -i tun0 на обоих сереверах и видим
на raspberry
16:38:58.908512 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 34
16:03:11.062634 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 177
16:03:11.062634 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 34
и еще несколько похожих строк

на ubuntu
16:03:11.062634 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 34
16:03:11.062634 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 176
16:03:11.062634 IP user.ru.52362 > 10.10.100.22.9987: UDP, length 34
и еще несколько похожих строк


пакеты идут в одну сторону, обратно не идут

Если подключаться к teamspeak серверу, напрямую по локалке то работает, также работает если подключится к серверу впн и по тунелю уже к teamspeak серверу(в впн стоит, чтоб клиенты видели друг друга).

Почему через внешний адрес не работает? Буду рад любым советам.


Установка демона через telnet, !*! foton, (VPN, IPSec / Linux) 17-Окт-14, 19:39  [ | | | ] [линейный вид] [смотреть все]
Здравствуйте.
Подскажите как можно установить демона (sshd,pptpd может друго что посоветуете) через телнет на роутеры asus, dlink и т.п..
make, dpkg, rpm не работают уже 3 дня сижу не могу разобраться.
Цель: создать цепочку в три роутера (туннель), что-бы весь трафик шел через него.
Спасибо.
Как настроить маршрутизацию на впн серверах?, !*! miruss, (VPN, IPSec) 08-Июл-14, 10:03  [ | | | ] [линейный вид] [смотреть все]
есть 6 серверов. все они являются впнсерверами и подключены между собой. сервера в разных странах.
как настроить маршрутизацию, чтобы можно было трафик пускать через несколько серверов?
например
сервера по странам UA,RU,MD,RO,PL,DE
клиент подключился к UA трафик пошел на RU потом на MD и вышел в мир через DE.
Или такой вариант client --> MD = RO = Pl = RU --> Internet.
в какую сторону смотреть? динамическая маршрутизация? на ospf? или как это все организовать грамотно?
Запрет командной оболочки при подключении по SSH, !*! s1edge, (Шифрование, SSH, SSL / Linux) 29-Авг-14, 14:38  [ | | | ] [линейный вид] [смотреть все]
Привет всем,
подключаюсь с машины с Windows через интернет к серверу sshd на Ubuntu для работы через тоннель. Подключение проходит нормально. Для подключения использую параметры командной строки:
ssh -i id_rsa -L 127.0.0.1:999:192.168.10.10:999 -p 443 admin@95.172.95.95
После авторизации образуется тоннель и выполняется вход в командную оболочку под пользователем admin.

Вопрос: мне от этого подключения нужен только тоннель, командная оболочка не нужна. Как ее запретить для подключающегося пользователя? Либо может быть запретить выполнение любых команд в ней?
Отключать нужно по логике со стороны sshd... Почитал справку - как сделать не нашел. Есть только упоминание об этом в описании параметра конф.файла AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...

AllowTcpForwarding
    Определяет, будет ли разрешено перенаправление TCP. По умолчанию ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока пользователям не запрещен доступ к командной оболочке, так как они всегда могут установить свои собственные перенаправления.

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



Устранение уязвимости Bash, !*! unixman, (BSD привязка / FreeBSD) 01-Окт-14, 12:57  [ | | | ] [линейный вид] [смотреть все]
Коллеги, в связи с уязвимостью в bash, стала задача обновить его на продакшн вэб сервере, т.к. Bash  является шеллом по умолчанию. На сервере
FreeBSD версии 7.2-RELEASE-p4, досталось всё это мне от предыдущего админа, и т.к. с этим сервером работать не приходилось лично мне до сего дня, то не могу в данный момент сказать насколько там Bash актуален, т.е. зависим ли nginx от Bash, если не зависим тогда вероятно можно было бы с bash сменить шелл по умолчанию.
Коллеги, с FreeBSD работал немного, с принципами портов и пакетов знаком, но  времени крайне мало чтобы решать тонкие моменты, т.к. параллельно и другие есть задачи, поэтому нужна ваша помощь.
Каким максимально быстрым/правильным/безопастным путем решить эту задачу, можно ли решить эту задачу без обновления всей системы ?
Спасибо!
  • ну так как bash по-умолчанию в FreeBSD не инсталлируется и не предлагается в кач, !*! aurved (?), 22:09 , 01-Окт-14 (1)
    ну так как bash по-умолчанию в FreeBSD не инсталлируется и не предлагается в качестве шелла по-умолчанию, то думаю можно его снести на хрен, предварительно конечно всем пользователям у которых он в качестве шелла поставив что-то другое.
    Ну а если очень хочется bash, ну можно наверно скачать исходники и патчи с сайта проекта и самому собрать, из портов я думаю его уже не получится новый получить-собрать, 7-ка уже не актуальна.
    сообщить модератору +/ответить
ipkungfu что творит, !*! mitay2, (Linux iptables, ipchains / Linux) 01-Окт-14, 06:48  [ | | | ] [линейный вид] [смотреть все]
Попробовал пользоваться ipkungfu дабы рутинные операции автоматизировать, в результате он генерирует следующие правила:

# Generated by iptables-save v1.4.14 on Tue Sep 30 14:56:55 2014
*nat
:PREROUTING ACCEPT [61:5293]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed on Tue Sep 30 14:56:55 2014
# Generated by iptables-save v1.4.14 on Tue Sep 30 14:56:55 2014
*mangle
:PREROUTING ACCEPT [61:5293]
:INPUT ACCEPT [61:5293]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A OUTPUT -p icmp -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 20 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 25 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p udp -m udp --dport 53 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 63 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 80 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 110 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 113 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 123 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 143 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 443 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 993 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 995 -j TOS --set-tos 0x08/0x3f
-A OUTPUT -p tcp -m tcp --dport 1080 -j TOS --set-tos 0x10/0x3f
-A OUTPUT -p tcp -m tcp --dport 6000:6063 -j TOS --set-tos 0x08/0x3f
COMMIT
# Completed on Tue Sep 30 14:56:55 2014
# Generated by iptables-save v1.4.14 on Tue Sep 30 14:56:55 2014
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:syn-flood - [0:0]
-A INPUT -s 192.168.1.0/24 -i lo -m state --state NEW -j ACCEPT
-A INPUT -i lo -m state --state NEW -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 0.0.0.1/32 -i lo -j LOG --log-prefix "IPKF_IPKungFu "
-A INPUT -m recent --rcheck --seconds 120 --name badguy --rsource -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_ALL: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_NONE: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_PORTSCAN_nmap_XMAS: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN -m limit --limit 3/sec -j LOG --log-prefix "IPKF_PORTSCAN_nmap_FIN: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_SYN_FIN: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_SYN_RST: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_SYN_RST_ACK_FIN_URG: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -m limit --limit 3/sec -j LOG --log-prefix "IPKF_PORTSCAN_nmap_NULL: "
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p tcp -m state --state INVALID -m limit --limit 3/sec -j LOG --log-prefix "IPKF_Invalid_TCP_Flag: "
-A INPUT -m state --state INVALID -j DROP
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 13 -m limit --limit 3/sec -j LOG --log-prefix "IPKF_ICMP_Timestamp: "
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 13 -j DROP
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
-A INPUT -i eth0 -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -m limit --limit 3/sec -j LOG --log-prefix "IPKF_New_Not_SYN: "
-A INPUT -i eth0 -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -i eth0 -p tcp -m multiport --dports 137,6666 -j DROP
-A INPUT -i eth0 -p udp -m multiport --dports 1434 -j DROP
-A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -o eth0 -p udp -m state --state INVALID -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -s 192.168.1.0/24 -o eth0 -p tcp -m state --state INVALID -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i eth0 -m recent --rcheck --seconds 120 --name badguy --rsource -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_ALL: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_NONE: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_FIN_URG_PSH: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN -m limit --limit 3/sec -j LOG --log-prefix "IPKF_PORTSCAN_nmap_XMAS: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_SYN_FIN: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -m limit --limit 3/sec -j LOG --log-prefix "IPKF_flags_SYN_RST: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -m limit --limit 3/sec -j LOG --log-prefix "IPKF_SYN_RST_ACK_FIN_URG: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -m limit --limit 3/sec -j LOG --log-prefix "IPKF_PORTSCAN_nmap_NULL: "
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN -j DROP
-A FORWARD -i eth0 -p tcp -m state --state INVALID -m limit --limit 3/sec -j LOG --log-prefix "IPKF_Invalid_TCP_flag: "
-A FORWARD -i eth0 -m state --state INVALID -j DROP
-A FORWARD -i eth0 -p icmp -m icmp --icmp-type 13 -m limit --limit 3/sec -j LOG --log-prefix "IPKF_ICMP_Timestamp: "
-A FORWARD -i eth0 -p icmp -m icmp --icmp-type 13 -j DROP
-A FORWARD -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
-A FORWARD -i eth0 -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -m limit --limit 3/sec -j LOG --log-prefix "IPKF_New_Not_SYN: "
-A FORWARD -i eth0 -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j DROP
-A FORWARD -i eth0 -p tcp -m multiport --dports 137,6666 -j DROP
-A FORWARD -i eth0 -p udp -m multiport --dports 1434 -j DROP
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -m state --state NEW -j ACCEPT
-A syn-flood -m limit --limit 10/sec --limit-burst 24 -j RETURN
-A syn-flood -m limit --limit 3/sec -j LOG --log-prefix "IPKF_SYN_flood: "
-A syn-flood -j DROP
COMMIT

Это базовый набор, которые будет дополняться уже вручную.
К такому набору есть немало вопросов, например:
зачем вот это правило: -A INPUT -m recent --rcheck --seconds 120 --name badguy --rsource -j DROP
какие пакеты под него подпадают?
Ну и общие вопросы - кто как формирует правила фаервола на серверах, бэстпрактикс?
Насколько оправданно использование ipkungfu на серверах?

iptables и редирект портов, !*! Dekart_Kain, (Firewall и пакетные фильтры / Другая система) 15-Сен-14, 19:37  [ | | | ] [линейный вид] [смотреть все]
Здравствуйте!
Есть сервер в локалке с роутером, на роутере сделан проброс порта 8080 до сервера.
Роутер TP-Link 3220 с Мегафон М100-4, статика.
В связи со спецификой Мегафона прямой доступ между устройствами, использующими интернет от Мегафон невозможен.

Задача - обеспечить возможность удаленного доступа по внешнему ip на сервер с любых устройств, использующих интернет Мегафон (это беспорядочный набор мобильных телефонов)

У меня есть такая идея - дома стоит Asus RT-N16 со статикой. Он умеет telnet, iptables. Хотелось бы через него гнать весь трафик. То есть все заходят по ip:port на Asus RT-N16, а он уже редиректит все на TP-Link 3220 и обратно.

Пусть ip Asus RT-N16 = 1.1.1.1
ip TP-Link 3220 = 2.2.2.2
Я прописал:
iptables -A INPUT -p tcp -m multiport --dports 8080 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp -d 1.1.1.1 --dport 111 -j DNAT --to-destination 2.2.2.2:111
iptables -t nat -I POSTROUTING -d 2.2.2.2 ! -s 1.1.1.1 -j SNAT --to-source 1.1.1.1

но оно не сработало.

  • gt оверквотинг удален у них белые ip в таблице фильтров порт 111 разрешен пок, !*! reader (ok), 12:38 , 16-Сен-14 (1)
    >[оверквотинг удален]
    > В связи со спецификой Мегафона прямой доступ между устройствами, использующими интернет
    > от Мегафон невозможен.
    > Задача - обеспечить возможность удаленного доступа по внешнему ip на сервер с
    > любых устройств, использующих интернет Мегафон (это беспорядочный набор мобильных телефонов)
    > У меня есть такая идея - дома стоит Asus RT-N16 со статикой.
    > Он умеет telnet, iptables. Хотелось бы через него гнать весь трафик.
    > То есть все заходят по ip:port на Asus RT-N16, а он
    > уже редиректит все на TP-Link 3220 и обратно.
    > Пусть ip Asus RT-N16 = 1.1.1.1
    > ip TP-Link 3220 = 2.2.2.2

    у них белые ip?
    > Я прописал:
    > iptables -A INPUT -p tcp -m multiport --dports 8080 -j ACCEPT
    > iptables -t nat -I PREROUTING -p tcp -d 1.1.1.1 --dport 111 -j
    > DNAT --to-destination 2.2.2.2:111

    в таблице фильтров порт 111 разрешен?
    показывайте текущие правила.
    > iptables -t nat -I POSTROUTING -d 2.2.2.2 ! -s 1.1.1.1 -j SNAT
    > --to-source 1.1.1.1
    > но оно не сработало.

    сообщить модератору +/ответить
  • Это вам техподдержка мегафона ответила лучше решать прямыми методами, а не трафи, !*! name (??), 14:07 , 16-Сен-14 (2)
    > статика.
    > В связи со спецификой Мегафона прямой доступ между устройствами, использующими интернет
    > от Мегафон невозможен.

    Это вам техподдержка мегафона ответила?

    лучше решать прямыми методами, а не трафик пускать через огород

    сообщить модератору +/ответить


Пропускная способность IPSEC в режиме туннеля, !*! yokon, (VPN, IPSec / FreeBSD) 24-Сен-14, 15:39  [ | | | ] [линейный вид] [смотреть все]
День Добрый!
Настроил ipsec туннель между двумя FreeDSD 10.0 шлюзами.
Канал интернета между шлюзами 100 мбит.
Пробую копировать информацию с рабочих станций за шлюзами, скорость до 2.5 мб/сек.
Один из шлюзов стоит на Hyper-V.

-->>В чем может быть причина такой низкой скорости? <---- Помогите разобраться!!!!

FreeBSD-10.0-RELEASE-i386-dvd1.iso
Стоит вот этот релиз.
Для FreeBSD на виртуалке выделено 5 гб. оперативки и 4 процессора. Я не уверен что используются все ресурсы, так как не знаю как это проверить.
Второй шлюз стоит на машине с i7 и 8 гб. оперативки.

Я пробовал настраивать туннель с шифрованием, без, с gif интерфейсом и без него, но скорость все-равно больше не становится.

На всякий случай скажу, к виртуалке у меня подключено 2 устаревших сетевых адаптера.

Заранее благодарю!


  • Для успокоения души, хотелось бы поднять скорость до 4-5 мб сек , !*! yokon (ok), 15:41 , 24-Сен-14 (1)
    Для успокоения души, хотелось бы поднять скорость до 4-5 мб/сек.
    сообщить модератору +/ответить
  • С гиперв вообще всё плохо gt оверквотинг удален , !*! Денис (??), 10:52 , 25-Сен-14 (2)
    С гиперв вообще всё плохо


    >[оверквотинг удален]
    > Стоит вот этот релиз.
    > Для FreeBSD на виртуалке выделено 5 гб. оперативки и 4 процессора. Я
    > не уверен что используются все ресурсы, так как не знаю как
    > это проверить.
    > Второй шлюз стоит на машине с i7 и 8 гб. оперативки.
    > Я пробовал настраивать туннель с шифрованием, без, с gif интерфейсом и без
    > него, но скорость все-равно больше не становится.
    > На всякий случай скажу, к виртуалке у меня подключено 2 устаревших сетевых
    > адаптера.
    > Заранее благодарю!

    сообщить модератору +/ответить
На роутерах открыты TCP порты 10000 и 8888, !*! gavrik, (Обнаружение и предотвращение атак) 10-Сен-14, 18:56  [ | | | ] [линейный вид] [смотреть все]
Провожу аудит сети после увольнения системного администратора и заметил два непонятных нюанса в сети. Помогите разобраться.

1. Роутер Linksys EA6400 - две штуки. Работают в режиме точки
2. Роутер D-Link DAP-1360/D1 - одна штука. Работает в режиме точки.

Просканировав nmap'ом их, увидел, что у них открыты странные порты. У Linksys'ов открыт порт 10000/tcp, а у D-Link'а открыт 8888/tcp. На pastebin выложил лог nmap'а.

http://pastebin.com/mSmfWcGK

Пытаюсь понять, это какой-то троян/бэкдор или системные службы. Подскажите.

Спасибо.

Промежуточный центр сертификации для OpenVPN, !*! Markoff, (VPN, IPSec / Linux) 25-Июл-14, 12:41  [ | | | ] [линейный вид] [смотреть все]
Добрый день коллеги!
В связи с производственной необходимостью (IT аутсорсинг), возникла задача по созданию собственного центра сертификации, дабы генерировать ключи к OpenVPN для своих сотрудников и сотрудников обслуживаемых организаций.
Идея такая:
Все (кому надо) мои сотрудники получают личный ключ, подписанный нашим СА, и с его помощью ходят по всем нашим организациям. Так же, во многих обслуживаемых нами организациях, руководство и не только, тоже желает подключаться к своей конторе из дома/командировки... Для этого на их сервере тоже стоит свой СА, но подписанный нашим СА (т.е. является как бы дочерним). Он собственно и выдает ключи для целей конкретной организации. Все дочерние организации периодически скачивают у нас список отозванных сертификатов, дабы блокировать скомпрометированные ключи.
Т.е. получается такая схема:

----------------------------           ----------------------------
|    СА0 наш               |-----> | СА1 организации1|
|самоподписанный  |--       | подписанный СА0 |
----------------------------    |      ----------------------------
   |                                     |                         |
User0                               |                      User1
                                          |                      ServerOVPN1
                                          |
                                          |         ----------------------------
                                             -->  | СА2 организации2|
                                                    | подписанный СА0 |
                                                     ----------------------------
                                                               |
                                                             User2
                                                             ServerOVPN2

(криво получилось... в редакторе один шрифт, предпросмотр другой, результат вообще третий :( )

СА0 - выдает моим сотрудникам ключи и с их помощью, наример User0, нормально подключается к ServerOVPN1 и ServerOVPN2.
СА1 - подписан нашим СА и выдает для сотрудников организации1, например User1, ключи для подключения к ServerOVPN1.
СА2 - подписан нашим СА и выдает для сотрудников организации2, например User2, ключи для подключения к ServerOVPN2.

Все замечательно работает...
Одно НО! Очень большое НО. User1 может подключиться к ServerOVPN2 и наоборот, User2 подключается к ServerOVPN1. Но этого не должно быть!... по задумке... и по фэншую.

Как генерирую ключи:
# Создание основного CA сертификации
openssl dhparam -out /etc/openvpn/keys/dh2048.pem 2048
openssl req -days 7000 -nodes -new -newkey rsa:4096 -x509 -keyout ca.key -out ca.crt

# Генерация СА1
openssl req -nodes -new -newkey rsa:3072 -keyout /etc/openvpn/keys/Test1/ca.key -out /etc/openvpn/keys/Test1/ca.csr -config /root/Scripts/ssl/openssl.cnf -batch
openssl ca -days 3650 -out /etc/openvpn/keys/Test1/ca.crt -in /etc/openvpn/keys/Test1/ca.csr -extensions v3_ca -config /root/Scripts/ssl/openssl.cnf -batch
cat /etc/openvpn/keys/ca.crt>>/etc/openvpn/keys/Test1/ca.crt

Далее копируем по scp Test1/ca.key,Test1/ca.csr, Test1/ca.crt на сервер клиента1, там стандартными средствами от OpenVPN создаем ключ сервера (ServerOVPN1) и клиента User1

Аналогично поступаем с CA2, ServerOVPN2, User2

openssl.cnf взят из OpenVPN, только дополнен несколькими переменными для автоматической генерации из скриптов.

Что я делаю не так? Может какие параметры надо дописать в openssl.cnf на СА0?

Задача: Аццкий криптоанализ , !*! pavlinux, (Шифрование, SSH, SSL / Другая система) 17-Авг-14, 04:01  [ | | | ] [линейный вид] [смотреть все]
Дано:

1-й файл, контрольная сумма: 0x30A83700, размер: 588800
2-й файл, контрольная сумма: 0x27D65500, размер: 70983868
3-й файл, контрольная сумма: 0xC072BC00, размер: 3560767488  

Найти: Алгоритм расчёта контрольной суммы. :D

---
Для второго файла, CRC32 и Adler не канают.

Adler32: 0x5b53aaa9
CRC32:   0xc78df808

  • Дано Лицензии на работу системы в виде таблицы интервал-разрешающий хеш 2011 2, !*! PavelR (??), 10:23 , 17-Авг-14 (1)
    >Задача: Аццкий криптоанализ

    Дано:

    Лицензии на работу системы в виде таблицы "интервал-разрешающий хеш".

    2011=203ef1df167cebe475bc790c1e6de2a7
    2012=fc5cd3fe336a8718c890511315aa55d0
    2013=3a4a5dd6243c59d20f8847f34d094002
    2014=e98b8de9024d935e88cc3685ed413900

    и так далее.

    Хеш должен строиться с использованием функции:

    R = F(year,K1,K2,....)

    year  - год
    Kх    - параметры, выбираемые произвольным или непроизвольным образом
    R     - результат для использования в построении "разрешающего хеша".

    Соответственно "система", используя year и зашитые в ней компоненты Kх, сможет проверить "лицензию".

    При этом функция должна обеспечивать следующее:

    1) Должны существовать либо ложная функция F' либо "ложные" параметры Кx' для функции F,вычисляемые исходя из year', year'', при использовании которых для всех year' < year < year'' вычисленное значение R совпадает c вычисленным функцией F(year,K1,K2,...), а для year вне этого интервала значения должны различаться.

    2) Функции не должны использовать условий для определения порогов year' year'' выдачи корректных/некорректных значений.
    2.1)   Если имеется ложная функция F', то функция F может использовать условия для проверки порогов  year' year''

    3) Функции не должны содержать таблиц, значения из которых берутся/формируются по ключу year.

    Т.е. должно быть можно "безопасно" открыть код генератора "лицензий", предоставив компоненты для получения "лицензий" только на определенный интервал year.

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

    Задача - найти такую функцию/алгоритм построения "лицензий".

    сообщить модератору +/ответить
  • файлов маловато , !*! chinarulezzz (ok), 02:12 , 18-Авг-14 (4)
    > Дано:
    > 1-й файл, контрольная сумма: 0x30A83700, размер: 588800
    > 2-й файл, контрольная сумма: 0x27D65500, размер: 70983868
    > 3-й файл, контрольная сумма: 0xC072BC00, размер: 3560767488
    > Найти: Алгоритм расчёта контрольной суммы. :D
    > ---
    > Для второго файла, CRC32 и Adler не канают.
    > Adler32: 0x5b53aaa9
    > CRC32:   0xc78df808

    файлов маловато))

    сообщить модератору +/ответить
  • Хэш функции по ГОСТ , !*! name (??), 10:12 , 18-Авг-14 (7)
    Хэш функции по ГОСТ?
    сообщить модератору +/ответить
FreeRadius исскуственный параметр для проверки на этапе auth, !*! switchua, (Авторизация и аутентификация / FreeBSD) 25-Май-14, 15:47  [ | | | ] [линейный вид] [смотреть все]
Здравствуйте. Переработываю под свои нужды связку Freeradius + mariadb-server + mpd5
Для авторизации и аккаунтинга подключений из mpd5 использую стандартный модуль rlm_sql для Freenibs.

Возникла необходимость явно блокировать абонентов на этапе авторизации используя свой выдуманный атрибут, как пример HLink-Blocked. Прописал атрибут в словари, определил для него значение, но почему-то когда этот атрибут присутствует в sql-таблице, то radiusd не авторизует абонента и выдает сообщение в отладке:
Found Auth-Type = MSCHAP
# Executing group from file /usr/local/etc/raddb/sites-enabled/default
+group MS-CHAP {
[mschap] No Cleartext-Password configured.  Cannot create LM-Password.
[mschap] No Cleartext-Password configured.  Cannot create NT-Password.
[mschap] Creating challenge hash with username: hubbs
[mschap] Client is using MS-CHAPv2 for hubbs, we need NT-Password
[mschap] FAILED: No NT/LM-Password.  Cannot perform authentication.
[mschap] FAILED: MS-CHAP2-Response is incorrect
++[mschap] = reject
+} # group MS-CHAP = reject
Failed to authenticate the user.


Если же я убераю параметр из sql-таблицы, то авторизация проходит
Found Auth-Type = MSCHAP
# Executing group from file /usr/local/etc/raddb/sites-enabled/default
+group MS-CHAP {
[mschap] Creating challenge hash with username: hubbs
[mschap] Client is using MS-CHAPv2 for hubbs, we need NT-Password
[mschap] adding MS-CHAPv2 MPPE keys
++[mschap] = ok
+} # group MS-CHAP = ok


Атрибут я явно пытался инициализировать на этапе authorize.
update control {
   Hlink-Blocked := allowed
}

Все конфигурационные файлы и SQL-таблицы прилагаются.
[url="https://mega.co.nz/#!ck1XlSZB!dO4WVKuE2iRxk-8Ao-1MLkmbMYEG84... 94 KB[/url]


Прошу вашей помощи. Заранее благодарен.

Запретить пользователю ssh но открыть FTP, !*! serg, (Авторизация и аутентификация / Linux) 28-Июн-14, 17:13  [ | | | ] [линейный вид] [смотреть все]
Подскажите, имеем Ubuntu 14.04.
На ней установлен sshd и vsftpd. Все ставилось через apt-get instal...

Так вот, когда добавил группу как запрещенную в пользователя в /etc/ssh/sshd_config
то доступ на ftp пропал.

Как сделать, чтобы пользователи ходили только по ftp или sftp?

  • чего сделал , !*! pavel_simple (ok), 22:56 , 29-Июн-14 (1)
    > когда добавил группу как запрещенную в пользователя в /etc/ssh/sshd_config

    чего сделал?

    сообщить модератору +/ответить
  • проще всего отобрать шелл у пользователя в etc passwdЗамените значение bin bas, !*! rusadmin (ok), 12:41 , 04-Июл-14 (2)
    > Подскажите, имеем Ubuntu 14.04.
    > На ней установлен sshd и vsftpd. Все ставилось через apt-get instal...
    > Так вот, когда добавил группу как запрещенную в пользователя в /etc/ssh/sshd_config
    > то доступ на ftp пропал.
    > Как сделать, чтобы пользователи ходили только по ftp или sftp?

    проще всего отобрать шелл у пользователя в /etc/passwd
    Замените значение /bin/bash (или какой у вас шелл) на /sbin/nologin например

    сообщить модератору +/ответить
  • А надо ж было отнять у пользователя группу, разрешающую ssh Если настроено, как, !*! Andrey Mitrofanov (?), 13:24 , 04-Июл-14 (3)
    > Так вот, когда добавил группу как запрещенную в пользователя в /etc/ssh/sshd_config
    > то доступ на ftp пропал.

    А надо ж было отнять у пользователя группу, разрешающую ssh. Если настроено, как в el6 (см.ниже).

    ftp может пропасть по куче причин. Например, права на /ftp (cd не может сделать под пользователем), shell в /dev/false (говорят, мешает). Наверняка есть много других причин...

    > Как сделать, чтобы пользователи ходили только по ftp или sftp?

    На el6 по ssh пускают только пользователей из группы sshd вот так:

    # grep AllowGroups /etc/ssh/sshd_config
    AllowGroups sshd

    В vsftpd, Судя по интернетам (google://vsftpd users allowed), то же делается списком пользователей в файле и userlist_enable=YES и ко.

    После изменения как одного (добавления/уделения группы у пользователя), так и другого (редактирования файла) может понадобиться перезапуск соотв.службы, и запущенные, но не завершённые сессии могут быть не прерваны.

    ---
    Возможно, для vsftpd есть вариант настройки с группой - через права на конень /ftp.
    freelinuxtutorials.com/tutorials/setting-up-ftp-server-via-vsftpd/

    сообщить модератору +/ответить
нужно проанализировать логи squid и возможно iptables, !*! longcat, (Linux iptables, ipchains) 01-Июл-14, 12:57  [ | | | ] [линейный вид] [смотреть все]
есть шлюз на debian 7, в локалке сервак с 1с, 1с ежедневно пытается попасть на определенный адрес, но выдается ошибка, dll для 1с, которая соединяется с каким то сервером закрытая, никто сказать не может как и через какие порты лезет 1с, потому нужно (как мне кажется) почитав логи) дописать правила в iptables и/или squid

ipt перенаправляет все forward пакеты с 80 порта на 3128, squid в прозрачном режиме
по большей части везде всё разрешено, через старый роутер всё работает, через шлюз не работает, следовательно проблема в шлюзе

вот кусочек лога squid, не могу понять удачное или нет подключение и что вообще значат эти числа

1404181637.086      1 192.168.0.77 NONE/417 4816 POST http://monolit.unitedbakers.ru/xDataLink/xDataLink.asmx - NONE/- text/html
1404181638.040      4 192.168.0.77 NONE/417 4816 POST http://monolit.unitedbakers.ru/xDataLink/xDataLink.asmx - NONE/- text/html
1404181638.907      4 192.168.0.77 NONE/417 4816 POST http://monolit.unitedbakers.ru/xDataLink/xDataLink.asmx - NONE/- text/html
1404181639.686      2 192.168.0.77 NONE/417 4814 POST http://monolit.unitedbakers.ru/xDataLink/xDataLink.asmx - NONE/- text/html

может дадите ссылку где почитать про логирование iptables, может там настройки какие надо для этого

нарантия отсутствия руткитов, закладок и пр., !*! mitay, (Блокирование спама и вирусов / Другая система) 17-Мрт-14, 12:51  [ | | | ] [линейный вид] [смотреть все]
Задача: просканировать компьютеры(Windows 7) и дать заключение(или выявить) что там нет никаких червей, руткитов, шпионов, программных закладок, вирусов и т.д. и т.п.

Обычного DrWeb CureIT и утилиты от Касперского недостаточно, чем ещё можно проверить?
Какое программное обеспечение существует для гарантирования отсутствия вредоносного ПО?
Прошу прощения за косноязычность.



strongSwan, !*! Михаил Дроздов, (VPN, IPSec / Linux) 12-Июн-14, 13:33  [ | | | ] [линейный вид] [смотреть все]
Доброе время суток!
Есть у кого опыт с strongSwan?
Везде есть примеры как настраивать его и создавать сертификаты и ключи с помощью openssl.
Есть ли пример по созданию ключей или сертификатов с помощью crypto  иль pki?
Или другой способ не openssl.
freebsd10+PF, !*! vladimirxxx, (BSD ipfw, ipf, ip-filter / FreeBSD) 11-Июн-14, 15:50  [ | | | ] [линейный вид] [смотреть все]
В первом офисе стоит usergate 5.4 постоянно подвисает решил его поменять на freebsd10+pf. Столкнулся с такой проблемой как то странно отрабатывать PF фильтр касаемо протокола GRE. В двух других офисах стоят тоже шлюзы freebsd9.2+pf и vpn сервер на mpd5.
Во всех офисах политика в pf
block in log all
block out log all
правило разрешающее gre
pass quick inet proto gre to any keep state
В двух офисах где freebsd9.2 с этим правилом все работает. Между офисами по vpn все соединяется без проблем. В офисе где поставил вместо ug5 freebsd10+pf. Это правило перестало отрабатывать соединение по vpn, с двумя офисами где freebsd9. Перестало соединяться и отваливается на моменте проверки имени и пароля пользователя т.е. как будто gre не проходит.
Я смотрю в лог pflog и вижу
если стоит правило
pass quick inet proto gre to any keep state
соединение отваливается с ошибкой 619
но в логе где em1 это внутренний интерфейс а em0 внешний интерфейс а 85.22.22.22 адрес сервера vpn, 192.168.100.80 адрес машины с которой я хочу подключиться к серверу vpn:
#########################################
00:00:06.318768 rule 8..16777216/0(match): pass in on em1: 192.168.100.80 > 85.22.22.22: GREv1, call 55004, seq 0, proto PPP (0x880b), length 37: LCP (0xc021), length 25: LCP, Conf-Request (0x01), id 0, length 23

00:00:00.001076 rule 8..16777216/0(match): pass out on em0: 192.168.100.80 > 85.22.22.22: GREv1, call 55004, seq 0, proto PPP (0x880b), length 37: LCP (0xc021), length 25: LCP, Conf-Request (0x01), id 0, length 23
#########################################
Судя по логу gre проходит и все должно подключатся так как gre правильно проходит что мы и видим в логе. Но нет соединение не происходит и отваливается с ошибкой 619.

Но если я вместо правила указанного выше ставлю два правила
pass in log on $int_if inet proto gre to any keep state
pass out log on $ext_if inet proto gre to any keep state
то соединение устанавливается без проблем.
Правда в логах как то странно показывается что отрабатывает только первое правило, которое пропускает gre на внутреннем интерфейсе.
в логе pflog где em1 это внутренний интерфейс а 85.22.22.22 адрес сервера vpn, 192.168.100.80 адрес машины с которой я хочу подключиться к серверу vpn
##########################################################
00:00:34.863975 rule 8..16777216/0(match): pass in on em1: 192.168.100.80 > 85.22.22.22: GREv1, call 55004, seq 0, proto PPP (0x880b), length 37: LCP (0xc021), length 25: LCP, Conf-Request (0x01), id 0, length 23
############################################################
и записи в логе для правила внешнего интерфейса так и не будет. Но соединение с офисами устанавливается без проблем.

В чем причина такого поведения PF????????? Подскажите. Менял сетевые карты, ставил realtek, 3COM сейчас стоят intel 1000MT. Пробовал все также настроить на дистрибутиве freebsd9.2. Результат один и тот же. Причем есть еще два офиса в одном стоит cisco pix506
в другом vpn сервер поднят на windows 7 с этими офисами соединятся без проблем хоть с первым хоть со вторыми двумя правилами. Через UG5 соединение по vpn устанавливается без проблем с любым офисом где стоит freebsd9.2+pf, в UG открыты 1723 и разрешен протокол GRE.


Прошу помочь написать правила для iptables, !*! longcat, (Linux iptables, ipchains / Linux) 04-Июн-14, 11:47  [ | | | ] [линейный вид] [смотреть все]
Собственно, почитал вот это http://www.opennet.dev/docs/RUS/iptables/#HOWARULEISBUILT и много другого, но толком ничего не понял.
Стоит задача:
1)настроить шлюз на debian
2)настроить проброс портов для всяких внешних приложений
3)настроить маршрутизацию внутри сети (если это нужно, потому как я не догоняю, как шлюз будет и будет ли вообще (все компы и точки доступа в локале подключены через тупой свитч)  пересылать пакеты от одного локального клиента другому локальному клиенту)
4)настроить удаленный доступ к серваку по ssh
5)правила iptables поставить в автозагрузку
6)запретить определенные сайты для всех кроме определенных ip

Что я сделал, но ,к сожалению, нормально даже это не заработало:
1) ну дебиан7 я поставил, управление по ssh, обе сетевые настроены: eth1 это локалка,
eth0 это в интернет(статика). Настроил dhcp, с ним все как надо.
2)для блокировки сайтов поставил squid3, запускается с конфигом без ошибок, настроен как прозрачный, порт 3128
3)на этапе настроек iptables уперся в не понимание его работы, на руках только готовые правила отсюда http://howitmake.ru/blog/ubuntu/86.html
раскомментил строку net.ipv4.ip_forward=1 в файле /etc/sysctl.conf

iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth0 -j REJECT
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

с этими настройками интернет заработал на одном ноутбуке подключенном через точку доступа->свитч->шлюз, кучу других в интернет не пустило, большинство подключены к свитчу

настройки iptables загружаю через строку в /etc/network/interfaces # iptables-restore > /etc/iptables-save

есть примерные наборы правил, но в каком порядке  их писать и будут ли они работать как надо, и где ошибка, не могу сейчас разобраться

подскажите, пожалуйста, какие правила написаны не правильно, и где бы почитать мануал попроще чем по ссылке в начале

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
это правило подменяет адрес пакетам из локальной сети?
для обратных пакетов нужно ли что либо еще?
#iptables -A FORWARD -i eth0 -o eth0 -j REJECT
это правило для маршрутизации пакетов в локалке, без интернета?
# iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
вот это правило вообще не понимаю
хочу добавить проброс портов правилом
iptables -t nat -A PREROUTING -d "внешний ip" -p tcp -m tcp --dport "внешний порт" -j DNAT --to-destination "локальный компьютер":"внутренний порт"
заработает ли оно и куда ставить все эти пробросы портов?

# правила для прокси, вроде бы перенаправляют, раз один компьютер сайты открывал
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to "ipпрокси_и_шлюза":3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
будет ли их достаточно для открывания страничек в том числе по https?

#для ssh, достаточно ли этого правила для подключения с обеих сторон от шлюза?
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

я понимаю, что никто не обязан мне помогать или что нибудь объяснять, буду благодарен за любую помощь, ссылки, объяснения, критику и прочее.

  • в таблице маршрутизации есть маршрут для локальной подсети согласно которому кли, !*! reader (ok), 13:13 , 04-Июн-14 (1) +2
    > Собственно, почитал вот это http://www.opennet.dev/docs/RUS/iptables/#HOWARULEISBUILT
    > и много другого, но толком ничего не понял.
    > Стоит задача:
    > 1)настроить шлюз на debian
    > 2)настроить проброс портов для всяких внешних приложений
    > 3)настроить маршрутизацию внутри сети (если это нужно, потому как я не догоняю,
    > как шлюз будет и будет ли вообще (все компы и точки
    > доступа в локале подключены через тупой свитч)  пересылать пакеты от
    > одного локального клиента другому локальному клиенту)

    в таблице маршрутизации есть маршрут для локальной подсети согласно которому клиенты будут обмениваться пакетами на прямую, даже если прописан шлюз

    >[оверквотинг удален]
    > только готовые правила отсюда http://howitmake.ru/blog/ubuntu/86.html
    > раскомментил строку net.ipv4.ip_forward=1 в файле /etc/sysctl.conf
    > iptables -F
    > iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    > iptables -A FORWARD -i eth0 -o eth0 -j REJECT
    > iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
    > с этими настройками интернет заработал на одном ноутбуке подключенном через точку доступа->свитч->шлюз,
    > кучу других в интернет не пустило, большинство подключены к свитчу
    > настройки iptables загружаю через строку в /etc/network/interfaces # iptables-restore
    > > /etc/iptables-save

    это не загрузка ,а перенаправление вывода iptables-restore в файл /etc/iptables-save

    > есть примерные наборы правил, но в каком порядке  их писать и
    > будут ли они работать как надо, и где ошибка, не могу
    > сейчас разобраться
    > подскажите, пожалуйста, какие правила написаны не правильно, и где бы почитать мануал
    > попроще чем по ссылке в начале

    там и так просто и понятно для понимающих как работает сеть, после первого прочтения может получится каша в голове, но как только начинаете сами писать правила все проясняется.

    > # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    > это правило подменяет адрес пакетам из локальной сети?

    да
    > для обратных пакетов нужно ли что либо еще?

    автоматом, в мануале сказано
    > #iptables -A FORWARD -i eth0 -o eth0 -j REJECT
    > это правило для маршрутизации пакетов в локалке, без интернета?

    блокирует с уведомлением пакеты которые пришли и должны были уйти через eth0
    > # iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
    > вот это правило вообще не понимаю

    при проблемах с mtu, если проблем нет то не нужно его вставлять, ну и логичней было бы -A, а не -I
    > хочу добавить проброс портов правилом
    > iptables -t nat -A PREROUTING -d "внешний ip" -p tcp -m tcp
    > --dport "внешний порт" -j DNAT --to-destination "локальный компьютер":"внутренний порт"
    > заработает ли оно и куда ставить все эти пробросы портов?

    да если в таблице фильтров разрешено прохождение для этих пакетов и для ответов
    > # правила для прокси, вроде бы перенаправляют, раз один компьютер сайты открывал
    > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j
    > DNAT --to "ipпрокси_и_шлюза":3128

    да
    > iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j
    > REDIRECT --to-port 3128

    заварачивать на прокси то что пришло с инета опасно
    > будет ли их достаточно для открывания страничек в том числе по https?

    https будет идти через  MASQUERADE

    > #для ssh, достаточно ли этого правила для подключения с обеих сторон от
    > шлюза?
    > iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

    есть политики по умолчанию, если они в ACCEPT, то не имеет значения, а так да разрешит обращения через все сетевые интерфейсы

    > я понимаю, что никто не обязан мне помогать или что нибудь объяснять,
    > буду благодарен за любую помощь, ссылки, объяснения, критику и прочее.

    сообщить модератору +2 +/ответить
locks, !*! Анатолий, (Разное / Solaris) 09-Июн-14, 13:02  [ | | | ] [линейный вид] [смотреть все]
Всем привет.
Не могли бы вы помочь разобраться с одним вопросом, а именно: что будет если заблочить файл fcntl'ем, а на другом терминале cat'ом попытаться его читать?
Возможно ли в iptables разрешить доступ только для squid?, !*! Dmitry943, (Linux iptables, ipchains / Linux) 19-Ноя-13, 11:15  [ | | | ] [линейный вид] [смотреть все]
Необходимо настроить доступ в интернет только на "белые" сайты.
Есть рабочая станция с linux mint.
Ставим на ней squid, настраиваем, в браузере прописываем прокси.
Теперь доступ только на "белые" сайты.

Но если пользователь в браузере уберет прокси?

Если закрыть 80-й порт
iptables -A OUTPUT -p TCP --dport 80 -j DROP
то даже через прокси в инет не выйдешь...

Возможно ли разрешить 80-й порт только для squid-а?

  • Можно использовать owner в iptables 1 Прокси сделать прозрачным, например на по, !*! dispay666 (??), 11:49 , 19-Ноя-13 (1)
    > Необходимо настроить доступ в интернет только на "белые" сайты.
    > Есть рабочая станция с linux mint.
    > Ставим на ней squid, настраиваем, в браузере прописываем прокси.
    > Теперь доступ только на "белые" сайты.
    > Но если пользователь в браузере уберет прокси?
    > Если закрыть 80-й порт
    > iptables -A OUTPUT -p TCP --dport 80 -j DROP
    > то даже через прокси в инет не выйдешь...
    > Возможно ли разрешить 80-й порт только для squid-а?

    Можно использовать owner в iptables.
    1. Прокси сделать прозрачным, например на порту 3128.
    2. Весь трафик, идущий на 80 порт редиректить в порт прокси 3128.
    3. Прокси должен работать от своего какого-нибудь имени
    4. В iptables разрешить выход на 80 порт только для пользователя, от которого работает прокси.

    чего-нить типа такого:
    iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 3128
    iptables -t nat -A OUTPUT -p tcp --dport 80 -m owner --uid-owner squid -j ACCEPT



    сообщить модератору +/ответить
  • Вам нужно это http www opennet ru docs HOWTO-RU mini TransparentProxy html, !*! stereoPANDA (ok), 11:52 , 19-Ноя-13 (2) –1
  • Сама машина и выступает в качестве шлюза , !*! ALex_hha (ok), 02:24 , 02-Янв-14 (3)
    > Необходимо настроить доступ в интернет только на "белые" сайты.
    > Есть рабочая станция с linux mint.
    > Ставим на ней squid, настраиваем, в браузере прописываем прокси.
    > Теперь доступ только на "белые" сайты.
    > Но если пользователь в браузере уберет прокси?
    > Если закрыть 80-й порт
    > iptables -A OUTPUT -p TCP --dport 80 -j DROP
    > то даже через прокси в инет не выйдешь...
    > Возможно ли разрешить 80-й порт только для squid-а?

    Сама машина и выступает в качестве шлюза?

    сообщить модератору +/ответить
  • Если локальная сеть, в которой компьютер 192 168 1 0 24,IPT sbin iptables IF_I, !*! billybons2006 (ok), 15:19 , 11-Апр-14 (4)
    Если локальная сеть, в которой компьютер 192.168.1.0/24,

    IPT="/sbin/iptables"
    IF_INT="eth1"

    $IPT -t nat -A PREROUTING -i $IF_INT -p tcp ! -d 192.168.1.0/24 --dport 80   -j REDIRECT --to-port 3128
    $IPT -t nat -A PREROUTING -i $IF_INT -p tcp ! -d 192.168.1.0/24 --dport 8080 -j REDIRECT --to-port 3128

    сообщить модератору +/ответить
  • Запрещаешь на роутере FORWARD 80 порта , !*! Влад (??), 21:40 , 05-Июн-14 (5)
    > Необходимо настроить доступ в интернет только на "белые" сайты.
    > Есть рабочая станция с linux mint.
    > Ставим на ней squid, настраиваем, в браузере прописываем прокси.
    > Теперь доступ только на "белые" сайты.
    > Но если пользователь в браузере уберет прокси?
    > Если закрыть 80-й порт
    > iptables -A OUTPUT -p TCP --dport 80 -j DROP
    > то даже через прокси в инет не выйдешь...
    > Возможно ли разрешить 80-й порт только для squid-а?

    Запрещаешь на роутере FORWARD 80 порта.

    сообщить модератору +/ответить
Чтение логов в tcpdump. Кодировка., !*! Abrabr, (Обнаружение и предотвращение атак / Linux) 08-Май-14, 12:01  [ | | | ] [линейный вид] [смотреть все]
Добрый день.
Прошу совета и помощи, так как работать в линуксе стал не так давно.
Вопрос вот в чем: хочу читать логи от tcpdumpa в текстовом файле. Но, как я понял, у него какая-то своя кодировка. Что делать в подобной ситуации, я не очень понимаю, так как действия по выбору кодировки были безуспешны.
Прилагаю скрин.
http://pixs.ru/showimage/123jpg_5842390_12021252.jpg
Помогите прикрыть порты, !*! Vadim_d67, (Linux iptables, ipchains / Linux) 02-Май-14, 15:41  [ | | | ] [линейный вид] [смотреть все]
Доброго времени суток.
Подскажите пож-та новичку.
Есть чисто роутер на ubuntu 12.04 сервер (192.168.0.2). У клиентов в сети все адреса статические, есть сервер Вин 2003 Задача: пробросить RDP порт на вин.сервер 192.168.0.1 и дать части клиентов доступ в инет, но при этом максимально прикрыть неиспользуемые порты, т.е. разрешить только ВЭБ, почту и скайп (это все что надо для работы). Но у меня получилось только дать доступ по всем портам, если я указываю конкретные порты (80,25,110,443) то инет у клиентов полностью отваливается. Сейчас работает вот так:
#!/bin/bash
/sbin/iptables -F
/sbin/iptables -t nat -F

# Прописываем политики по умолчанию:
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT DROP

# Включаем форвардинг
sysctl -w net.ipv4.ip_forward="1"
# Включаем Маскарад
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o eth0 -j REJECT
/sbin/iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

#*****************************************************************************
# Защита самого сервера!!

# Номера непривилегированных портов
UNPRIPORTS="1024:65535"
# Разрешаем прохождение любого трафика по интерфейсу обратной петли.
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT

# Запрещаем любые новые подключения с любых интерфейсов, кроме lo к компьютеру.
/sbin/iptables -A INPUT -m state ! -i lo --state NEW -j DROP

# Если интерфейс не lo, то запрещаем входить в список его адресов.
/sbin/iptables -A INPUT -s 127.0.0.1/255.0.0.0 ! -i lo -j DROP

#Делаем защиту от Dos атак:
/sbin/iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

# Отбрасывать все пакеты, которые не могут быть идентифицированы и поэтому не могут иметь определенного статуса.
/sbin/iptables -A INPUT -m state --state INVALID -j DROP
/sbin/iptables -A FORWARD -m state --state INVALID -j DROP

# Принимать все пакеты, которые инициированы из уже установленного соединения, и имеющим признак ESTABLISHED.
# Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении.

/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Предупреждаю вас о туповатых провайдерах, которые назначают IP адреса, отведенные IANA для локальных сетей.
# Например адреса 10.X.X.X. Для этого надо установить правило, пропускающие трафик с этих серверов, ранее цепочки INPUT.
/sbin/iptables -t nat -I PREROUTING -i eth0 -s 10.0.0.1/32 -j ACCEPT

# Эти правила предохраняют от некоторых типов атак:

# SYN наводнение.
# Приводит к связыванию системных ресурсов, так что реальных обмен данными становится не возможным.
/sbin/iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
/sbin/iptables -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP

# UDP наводнение
# Службы использующие UDP, очень часто становятся мишенью для атак с целью вывода системы из строя.
/sbin/iptables -A INPUT -p UDP -s 0/0 --destination-port 138 -j DROP
/sbin/iptables -A INPUT -p UDP -s 0/0 --destination-port 113 -j REJECT
/sbin/iptables -A INPUT -p UDP -s 0/0 --source-port 67 --destination-port 68 -j ACCEPT
/sbin/iptables -A INPUT -p UDP -j RETURN
/sbin/iptables -A OUTPUT -p UDP -s 0/0 -j ACCEPT

# ICMP - перенаправление
# ICMP - сообщение указывает системе изменить содержимое таблиц маршрутизации с тем, что бы направлять
# пакеты по более короткому маршруту. Может быть использовано взломщиком для перенаправления вашего трафика через свою машину.
/sbin/iptables -A INPUT --fragment -p ICMP -j DROP
/sbin/iptables -A OUTPUT --fragment -p ICMP -j DROP

# Разрешаем ICMP соединение. Значительная часть ICMP используется для передачи сообщений о
# том, что происходит с тем или иным UDP или TCP соединением.
/sbin/iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type source-quench -j ACCEPT
/sbin/iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type source-quench -j ACCEPT

# Разрешаем себе ping наружу - нас же не попингуешь - пакеты отбрасываются.
/sbin/iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type echo-reply -j ACCEPT
/sbin/iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type echo-request -j ACCEPT

# Запрещаем подключение к X серверу через сетевые интерфейсы.
/sbin/iptables -A INPUT -p tcp -m tcp -i eth0 --dport 6000:6063 -j DROP --syn

# Прописываем порты, которые открыты в системе, но которые не должны быть открыты на сетевых интерфейсах:
# /sbin/iptables -A INPUT -p tcp -m tcp -m multiport -i eth0 -j DROP --dports #порта
/sbin/iptables -A INPUT -p tcp -m tcp -m multiport -i eth0 -j DROP --dports 783
/sbin/iptables -A INPUT -p tcp -m tcp -m multiport -i eth0 -j DROP --dports 3310
/sbin/iptables -A INPUT -p tcp -m tcp -m multiport -i eth0 -j DROP --dports 10000

# DNS сервер имен разрешаем.
/sbin/iptables -A OUTPUT -p udp -m udp -o eth0 --dport 53 --sport $UNPRIPORTS -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp -o eth0 --dport 53 --sport $UNPRIPORTS -j ACCEPT
/sbin/iptables -A INPUT -p udp -m udp -i eth0 --dport $UNPRIPORTS --sport 53 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp -i eth0 --dport 1024:65353 --sport 53 -j ACCEPT

# Разрешаем AUTH-запросы на удаленные сервера, на свой же компьютер - запрещаем.
/sbin/iptables -A OUTPUT -p tcp -m tcp -o eth0 --dport 113 --sport $UNPRIPORTS -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp -i eth0 --dport $UNPRIPORTS --sport 113 -j ACCEPT ! --syn
/sbin/iptables -A INPUT -p tcp -m tcp -i eth0 --dport 113 -j DROP
# Разрешаем 22-й порт.
/sbin/iptables -A INPUT -p tsp -i eth0 -m multiports –-dports 22 -j ACCEPT
/sbin/iptables -A OUTPUT -p tsp -o eth0 -m multiports --sports 22 -j ACCEPT

# указываем путь к текстовому файлу, содержащему список запрещенных сайтов
badsite=($(cat”/home/vadim/sbd.txt”))

# указываем путь к текстовому файлу, содержащему список хороших IP
goodip=($(cat”/home/vadim/ipgood.txt))
# Делаем проброс портов, для достпа через удаленный рабочий стол RDP
# из внешней сети к компу (серверу) в локалке.
/sbin//sbin/iptables -t nat -A PREROUTING –dst eth0 -p tcp –-dport 3389 -j DNAT –-to-destination 192.168.0.1:3389
/sbin//sbin/iptables -t nat -A POSTPOUTING -p tcp --dst 192.168.0.1 –-dport 3389 -j SNAT –-to-sourse eth0

# теперь разрешаем траффик между этим компом и интернетом, но только на этот #порт.
/sbin/iptables -A FORWARD -i eth0 -o eth1 -d 192.168.0.1 -p tcp -m tcp --dport 3389 -j ACCEPT
# Ответ разрешаем с любого порта
/sbin/iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.1 -j ACCEPT

###################################################
# Запрещаем "плохие сайты"
##################################################
i=0
for i in "${badsite[@]}"
do
/sbin/iptables -A FORWARD -s $i -j DROP
done

################################################
Разрешаем интернет “хорошим” АйПи
###############################################
i=0
for i in "${goodip[@]}"
do
# tcp
#/sbin/iptables -A FORWARD -s $i -o eth0 -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A FORWARD -s $i -i eth1 -o eth0 -j ACCEPT
#/sbin/iptables -A FORWARD -i eth0 -o eth1 -d $i -j ACCEPT
#/sbin/iptables -A FORWARD -s $i -i eth1 -o eth0 -j ACCEPT
#/sbin/iptables -A FORWARD -i eth0 -o eth1 -d $i -p tcp --destination-port 8080 -j ACCEPT
#/sbin/iptables -A FORWARD -o eth0 -s $i -p tcp -m multiport --dports 53,80,25,110,443,5190 -j ACCEPT
#/sbin/iptables -A FORWARD -i eth0 -d $i -p tcp -m multiport --sports 53,80,25,110,443,5190 -j ACCEPT
#/sbin/iptables -A INPUT -p tcp -s $i --dport 80 -j ACCEPT
#/sbin/iptables -A FORWARD -p tcp -s $i ! -d 192.168.0.0/24 --sport 80 -j ACCEPT
#/sbin/iptables -A FORWARD -p tcp -d $i ! -s 192.168.0.0/24 -m multiport –-dports 80,53,25,110,5190,443 -j ACCEPT
#/sbin/iptables -A FORWARD -p tcp -s $i ! -d 192.168.0.0/24 -m multiport –-sports 80,53,25,110,5190,443 -j ACCEPT
#udp
#/sbin/iptables -A FORWARD -p udp -d $i ! -s 192.168.0.0/24 -m multiport --dports 53 -j ACCEPT
#/sbin/iptables -A FORWARD -p udp -s $i ! -d 192.168.0.0/24 -m multiport --sports 53 -j ACCEPT
done

Проброс портов на сервер пока не тестировал. (Дай бог с клиентами в локалке разобраться) В цикле "Разрешаем интернет “хорошим” АйПи" те строчки которые закомментированы я перепробовал. работает только так как с сейчас записано. Но по всем портам сразу. А я бы хотел комуто разрешить и скайп и ВЭБ а кому-то оставить только почту. Как сделать?
Зараннее благодарен.

Исходный код шифрования текста универсальным алгоритмом., !*! demakviktor, (ПО для увеличения безопасности) 23-Апр-14, 15:28  [ | | | ] [линейный вид] [смотреть все]
Private Sub zasS_S_Rand(ByRef textIsxod As String, ByRef textRez As String, ByRef ChifrVxod As Short, ByRef RotorVxod As Short, ByRef NomerVxod1 As Integer, ByRef NomerVxod2 As Integer, ByRef BazisVxod As String, ByRef OblikVxod As String, ByRef ChaosVxod() As UShort, Optional ByRef LocalBB As Short = 1)
Dim J0 As Integer, J1 As Integer, Ich0 As Integer, Ich1 As Integer, Ich2 As Integer, DlinaIsxod As Integer
Dim L0 As String, DlinaBazis As UShort, DlinaChaos As Integer, DlinaNomer As Integer, DlinaProgres As Short
Dim AdresBazis As Integer, AdresOblik As Integer, AdresChaos As Integer, Ichet As Integer, Ipro As Short
Dim Simvol As Char, Lbuilder As New System.Text.StringBuilder("")
Dim Progres1 As Integer
'Процедура на языке Visual Basic 9.0 (Visual Basic 2008) Все параметры передаются по ссылке, так как тексты в виде строк могут быть очень большими.
'Типы данных:
'Byte = От 0 до 255 (беззнаковый). Один байт
'Short = От –32 768 до 32 767 (знаковый). Два байта.
'Integer = От –2 147 483 648 до 2 147 483 647 (знаковый). 4 байта.
'Long = От –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 (9,2... E+18 †) (знаковый). 8 байтов.
'String = От 0 до приблизительно 2 миллиардов знаков в кодировке Юникод.
'USort = От 0 до 65 535 (беззнаковый). Два байта.
'Char = От 0 до 65535 (беззнаковый). Два байта.
'System.Text.StringBuilder("") - инструмент VB9 для работы со строками переменной длины. Обычные инструменты работы со строками при любом изменении строки создают новую строку. При больших строках это очень сильно замедляет вычисления. Новый инструмент чрезвычайно быстро производит операции со строками.

'Шифрование текста в виде строки. Алфавит символьный - строка символов BazisVxod с адресами от 1 до 65535, второй алфавит строка символов OblokVxod с адресами от 1 до 65535, вектор чисел - ChaosVxod() с адресами от 0 до 65535
'Вход: textIsxod     - исходный текст в виде строки символов, который нужно зашифровать или расшифровать с адресами от 1 до DlinaIsxod
'      textRez       - результат шифрования строки символов textIsxod с адресами от 1 до DlinaIsxod
'      NomerVxod1    - номер первого символа в тексте textIsxod, подлежащий шифрованию, отсчет с 1
'      NomerVxod2    - номер последнего символа в тексте textIsxod, подлежащий шифрованию, отсчет с 1
'      LocalBB       - учет относительного влияния порядка отсчета чисел вектора. Результаты шифрования различны при различных значения параметра.
'                    = 0 - отсчет ведется с начала textRez
'                    = 1 - отсчет ведется от NomerVxod1 до NomerVxod2
'                    = 2 - отсчет ведется по BazisVxod от 1 до DlinaBazis+1
'Параметры шифрования:
'      ChifrVxod = 0 - расшифровать textIsxod, 1 - зашифровать textIsxod, понятие расшифровать и зашифровать выбрано произвольно. Можно расшифровывать, а восстанавливать, зашифровывая.
'      RotorVxod = 0 - левое вращение, 1 - правое вращение. Результаты шифрования абсолютно различны, в лучшем случае совпадает один символ в середине.
'      BazisVxod - алфавит символьный в виде строки - перечень символов в textIsxod, подлежащих шифрованию, индекс с 1. Количество символов от 2 до 65535. Все символы должны быть различными. Символы, не входящие в BazisVxod, копируются из textIsxod в textRez без изменения. Длина BazisVxod равна DlinaBazis, изменяется от 2 до 65535.
'      OblikVxod - второй символьный алфавит, отличается от первого только порядком следования одних и тех же символов. Может быть равен первому.
'      ChaosVxod() - вектор чисел от 1 до длины BazisVxod. Количество чисел в векторе может быть от 1 до длины textIsxod по выбору пользователя. Числа в векторе - произвольные из области значений. Например, длина вектора = 3. Это означает, что в векторе 3 числа: 1)Первое от 1 до DlinaBazis. 2)Второе от 1 до DlinaBazis, может быть равно первому. Третье от 1 до DlinaBazis, может быть равное первому или второму.

'DlinaProgres = 100            'Параметр для индикатора отображения выполняемой операции
'ProgressBar1.Maximum = 100    'Параметр для индикатора отображения выполняемой операции
'Progres1 = 100000             'Параметр для индикатора отображения выполняемой операции
DlinaBazis = Len(BazisVxod)         'Длина первого алфавита, количество символов
DlinaChaos = UBound(ChaosVxod) + 1  'Длина вектора, количество чисел
Ich0 = NomerVxod1 - 1: Ich1 = 0: Ich2 = 0
DlinaIsxod = Len(textIsxod)         'Длина текста, подлежащего шифрованию
Lbuilder.Capacity = DlinaIsxod
'Копирование не шифруемой начальной части текста без изменения
For J0 = 1 to NomerVxod1 - 1
  Simvol = Mid(textIsxod, J0, 1)
  Lbuilder.Append(Simvol, 1)
Next

DlinaNomer = NomerVxod2 - NomerVxod1 + 1
Ichet = 0
Select Case ChifrVxod
Case 0  'Расшифровать
  For J0 = NomerVxod1 To NomerVxod2
    Ich0 = Ich0 + 1
    Ich1 = Ich1 + 1
    L0 = Mid(textIsxod, J0, 1)
    AdresOblik = InStr(OblikVxod, L0)
    Select Case RotorVxod
    Case 0
      Select Case AdresOblik
      Case 0
        'Если символ отсутствует в алфавите, то копируется в результат без изменения
        If L0 <> Nothing Then Simvol = L0: Lbuilder.Append(Simvol, 1)
      Case Else
        Ich2 = Ich2 + 1
        Select Case LocalBB
        Case 0
          J1 = Ich0 Mod DlinaChaos
        Case 1
          J1 = Ich1 Mod DlinaChaos
        Case 2
          J1 = Ich2 Mod DlinaChaos
        Case Else
        End Select
        AdresChaos = ChaosVxod(J1)
        AdresBazis = AdresOblik + AdresChaos
        If AdresBazis > DlinaBazis Then AdresBazis = AdresBazis - DlinaBazis
        Simvol = Mid(BazisVxod, AdresBazis, 1)
        Lbuilder.Append(Simvol, 1)
      End Select
    Case Else
      Select Case AdresOblik
      Case 0
        'Если символ отсутствует в алфавите, то копируется в результат без изменения
        If L0 <> Nothing Then Simvol = L0: Lbuilder.Append(Simvol, 1)
      Case Else
        Ich2 = Ich2 + 1
        Select Case LocalBB
        Case 0
          J1 = Ich0 Mod DlinaChaos
        Case 1
          J1 = Ich1 Mod DlinaChaos
        Case 2
          J1 = Ich2 Mod DlinaChaos
        Case Else
        End Select
        AdresChaos = ChaosVxod(J1)
        AdresBazis = AdresOblik - AdresChaos
        If AdresBazis < 1 Then AdresBazis = AdresBazis + DlinaBazis
        Simvol = Mid(BazisVxod, AdresBazis, 1)
        Lbuilder.Append(Simvol, 1)
      End Select
    End Select
    'Необязательная часть
    'Ichet = Ichet + 1
    'If Ichet = Progres1 Then
    '   Ipro = Int(((J0 - NomerVxod1 + 1) / (DlinaNomer)) * DlinaProgres): Ichet = 0
    '   ProgressBar1.Value = Ipro
    '   ProgressBar1.Refresh
    '   Form7.PausaSecond7
    'End If
  Next J0
  'ProgressBar1.Value = 0
Case 1    'Зашифровать
  For J0 = NomerVxod1 To NomerVxod2
    Ich0 = Ich0 + 1
    Ich1 = Ich1 + 1
    L0 = Mid(textIsxod, J0, 1)
    AdresBazis = InStr(BazisVxod, L0)    'Адрес символа в базисе
    Select Case RotorVxod
    Case 0
      Select Case AdresBazis
      Case 0
        'Если символ отсутствует в алфавите, то копируется в результат без изменения
        If L0 <> Nothing Then Simvol = L0: Lbuilder.Append(Simvol, 1)
      Case Else
        Ich2 = Ich2 + 1
        Select Case LocalBB
        Case 0
          J1 = Ich0 Mod DlinaChaos
        Case 1
          J1 = Ich1 Mod DlinaChaos
        Case 2
          J1 = Ich2 Mod DlinaChaos
        Case Else
        End Select
        AdresChaos = ChaosVxod(J1)
        AdresOblik = AdresBazis - AdresChaos
        If AdresOblik < 1 Then AdresOblik = AdresOblik + DlinaBazis
        Simvol = Mid(OblikVxod, AdresOblik, 1)
        Lbuilder.Append(Simvol, 1)

      End Select
    Case Else
      Select Case AdresBazis
      Case 0
        'Если символ отсутствует в алфавите, то копируется в результат без изменения
        If L0 <> Nothing Then Simvol = L0: Lbuilder.Append(Simvol, 1)
      Case Else
        Ich2 = Ich2 + 1
        Select Case LocalBB
        Case 0
          J1 = Ich0 Mod DlinaChaos
        Case 1
          J1 = Ich1 Mod DlinaChaos
        Case 2
          J1 = Ich2 Mod DlinaChaos
        Case Else
        End Select
        AdresChaos = ChaosVxod(J1)
        AdresOblik = AdresBazis + AdresChaos
        If AdresOblik > DlinaBazis Then AdresOblik = AdresOblik - DlinaBazis
        Simvol = Mid(OblikVxod, AdresOblik, 1)
        Lbuilder.Append(Simvol, 1)

      End Select
    End Select
    'Необязательная часть
    'Ichet = Ichet + 1
    'If Ichet = Progres1 Then
    '   Ipro = Int(((J0 - NomerVxod1 + 1) / (DlinaNomer)) * DlinaProgres): Ichet = 0
    '   ProgressBar1.Value = Ipro
    '   ProgressBar1.Refresh
    '   Form7.PausaSecond7
    'End If
  Next J0
  'ProgressBar1.Value = 0
Case Else
End Select
'Копирование не шифруемой конечной части текста без изменения
For J0 = NomerVxod2 + 1 to DlinaIsxod
  Simvol = Mid(textIsxod, J0, 1)
  Lbuilder.Append(Simvol, 1)
Next
textRez = Lbuilder.ToString
End Sub

iptables PREROUTING, !*! Vitaliy, (Linux iptables, ipchains) 17-Апр-14, 00:00  [ | | | ] [линейный вид] [смотреть все]
Всем привет

Нужно сделать переброс

Пытался:
iptables -t nat -A PREROUTING -p udp -d 1.1.1.1 --dport 27015 -j DNAT --to 2.2.2.2:27015
sysctl -w net.ipv4.ip_forward="1"


Суть:
с одной машины (айпи: порт) перенаправить подключение на другую машину в другом ДЦ на (айпи: порт)


Правилом выше, не получилось, подскажите куда копнуть  или как правильно

Спасибо

  • Одного правила может быть мало iptables как язык программирования - для решен, !*! Andrey Mitrofanov (?), 09:54 , 17-Апр-14 (1)
    > Правилом выше, не получилось, подскажите куда копнуть  или как правильно

    Одного правила [может быть] мало: iptables как язык программирования - для решения задачи может понадобиться писать несколько правил и учитывать [и настраивать, возможно] другие условия (обычно sysctl~).

    > Спасибо

    Во-первых, в FORWARD ACCEPT-ить проходящие пакеты. http://wiki.vpsget.com/index.php/Forward_(redirect/nat)_traffic_with_iptables

    Во-первых с  половинов, ip_forward=1 включён же уже?

    Во-вторых, говорят, conntrack может влиять: http://serverfault.com/questions/421304/iptables-port-forwar...
    NAT-ы в netfilter делаются по первому пакету соединеия, остальные идут по _ранее принятому "решению".

    В-третьих, это всё для "транзитного" трафика - с ethA на athB, но случай разный может быть. Например, для форварда с eth0 на этот же eth0 нужен ещё POSTROUTING/SNAT, чтобы получатель видел форвардера, как отправителя, и, соответственно, слал обратные пакеты ч-з него, и клиент получал _ответы с форвардера.

    сообщить модератору +/ответить
Не открываются определенные сайты, !*! AntonSmasH, (BSD ipfw, ipf, ip-filter) 11-Апр-14, 11:05  [ | | | ] [линейный вид] [смотреть все]
Есть FreeBSD 8.2, все работает отлично. На днях выяснилась проблема, что не открываются сайты tumen.roskazna.ru и подобные третьего уровня домена, хотя сам сайт roskazna.ru открывается без проблем. Также не открывается сайт mvd.ru.
Трассировка уходит за аплинка и теряется. Аплинк говорит, что у них все работает и открывается.
В чем может быть проблема??? Может какой-то черный список блокирующий есть у гос сайтов???
Что думать, куда копать, даже не знаю!!!
  • mtu mss проверяли , !*! PavelR (??), 11:11 , 11-Апр-14 (1)
    > Есть FreeBSD 8.2, все работает отлично. На днях выяснилась проблема, что не
    > открываются сайты tumen.roskazna.ru и подобные третьего уровня домена, хотя сам сайт
    > roskazna.ru открывается без проблем. Также не открывается сайт mvd.ru.
    > Трассировка уходит за аплинка и теряется. Аплинк говорит, что у них все
    > работает и открывается.
    > В чем может быть проблема??? Может какой-то черный список блокирующий есть у
    > гос сайтов???
    > Что думать, куда копать, даже не знаю!!!

    mtu/mss проверяли?

    сообщить модератору +/ответить


Ключи SSH против OpenSSL Heartbleed, !*! billybons2006, (Шифрование, SSH, SSL / Linux) 11-Апр-14, 16:42  [ | | | ] [линейный вид] [смотреть все]
Прошу прощения, если вопрос покажется кому-то ламерским. Пытаюсь понять в суматохе OpenSSL Heartbleed, если есть почтовый сервер (Dovecot, Postfix) с включенным TLS/SSL для POP3 и IMAP и доступ к нему настроен через ssh на нестандартном порту с обязательной аутентификацией по ключу (а ключ с паролем), то после yum update + reboot, надо ли переделывать сертификаты для почты:

ssl_cert = </etc/pki/dovecot/certs/server.crt
ssl_key = </etc/pki/dovecot/private/server.key

и для доступа по ssh?

 
Пометить прочитанным Создать тему
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Архив | Избранное | Мое | Новое | | |



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру