LinuxForum.Fans
Тема

Несколько вопросов о samba и network

Автор: XliN 32 сообщений 6417 просмотров
#100817

Мужики. Если есть время помогите. Задача следующая.
Есть сервер на CentOS
eth0 смотрит в локалку 192.168.1.0/24
eth1 смотрит в локалку 192.168.3.0/24

IP eth0: 192.168.1.254
IP eth1: 192.168.3.254

И так. Планируется сделать из него шлюз. Как правильно прописать правила в iptables?
Т.е. врубить NAT. Что бы например компу из третьей сетки, прописать шлюз 192.168.3.254 и тем самым дать инет (шлюз должен проверить есть ли у него доступ и только потом пускать в нет)

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


Если есть у кого наработки, поделитесь пожалуйста.

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

#100818

А правильно мыслю?

text
iptables -A FORWARD —s 192.168.1.0/24 —j ACCEPT 
iptables -A FORWARD —d 192.168.1.0/24 —j ACCEPT 
iptables -A FORWARD —s 192.168.3.0/24 —j ACCEPT 
iptables -A FORWARD —d 192.168.3.0/24 —j ACCEPT 
iptables -t nat -A POSTROUTING --out-interface eth0 -j SNAT --to-source 192.168.3.254
iptables -t nat -A POSTROUTING --out-interface eth1 -j SNAT --to-source 192.168.1.254
#100820

Если будите в скрипте прописывать каждого пользователя то нет проблем. И укажите через какой интерфейс бегает инет?

#100821

Например

#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Маскардинг в инет и локалку
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE #ppp0 интерфейс где инет.
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -A FORWARD -i ppp0 -o eth1 -j ACCEPT
iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT

# Кому разрешаем. Можно и массив думаю но в програминге не силён.
iptables -A FORWARD -s ip -d ppp0 -j ACCEPT #ip ип адрес клиента кому положено
iptables -A FORWARD -s ip -d ppp0 -j ACCEPT #ip ип адрес клиента кому положено
iptables -A FORWARD -s ip -d ppp0 -j ACCEPT #ip ип адрес клиента кому положено

типо того.

#100824

Hа счёт сжатия надо скрипт сжимать папку в архив (man tar)
Hо сетевой диск лучше сначала при монтировать а потом cp и далее rm source.

#100831

Инета нет. Его потом прикручу.. как руки дойдут. Там как раз и будет pppoe через adsl.
Сначала надо наладить внутреннюю работу локальной сети. Мне достался такой бардак, аж руки опускаются.

Ладно. с tar я позже разберусь. Есть у меня уже наработачки smile
Вот если я так забадяжу, должно же работать?

text
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -A FORWARD -s 192.168.3.100 -d eth0 -j ACCEPT iptables -A FORWARD -s 192.168.1.100 -d eth1 -j ACCEPT

Побежит 192.168.3.100 в первую сеть? Ну и 192.168.1.100 в третью? Задача объединить две локалки и потом на нем же сделать выход в инет, но eth2 еще добавится.

#100832

Нет.
Вот так.

Таким макаром тупо делаем нат на подсети.
#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

#Маскардинг
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

А так ограничение по ип.
#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Маскардинг
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -A FORWARD -s 192.168.3.100 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.3.100 -j ACCEPT

iptables -A FORWARD -s 192.168.1.100 -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -d 192.168.1.100 -j ACCEPT

Ну или так
iptables -A FORWARD -s 192.168.1.100 -d 192.168.3.100 -j ACCEPT
iptables -A FORWARD -s 192.168.3.100 -d 192.168.1.100 -j ACCEPT

#100834
xlin написал:

Ладно. с tar я позже разберусь. Есть у меня уже наработачки smile

Просьба по делиться.

#100835

И ещё видел на сайте твоём что бьёшься на LDAP + SQUID если что могу посоветовать LDAP + TRAFFPRO. За traffpro стучи в личку.

#100847

Правила не сработали. Виндузовый комп 192.168.1.100 все равно лезет в третью сетку. Правила пробовал оба варианта.

На винде:
IP 192.168.1.100
mask: 255.255.255.0
gateway: 192.168.1.254

NAT срабатывает, а на FORWARD DROP пофигу.

debian:~# iptables -t nat -L -v
Chain PREROUTING (policy ACCEPT 69 packets, 7751 bytes)
pkts bytes target prot opt in out source destination

Chain POSTROUTING (policy ACCEPT 4 packets, 336 bytes)
pkts bytes target prot opt in out source destination
2 168 MASQUERADE all -- any eth0 anywhere anywhere
0 0 MASQUERADE all -- any eth1 anywhere anywhere

Chain OUTPUT (policy ACCEPT 6 packets, 504 bytes)
pkts bytes target prot opt in out source destination
#100849

iptables -L

#100850

Если так то будет видеть всю сеть.
iptables -A FORWARD -s 192.168.3.100 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.3.100 -j ACCEPT

iptables -A FORWARD -s 192.168.1.100 -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -d 192.168.1.100 -j ACCEPT

А так ток необходимые адреса.
iptables -A FORWARD -s 192.168.1.100 -d 192.168.3.100 -j ACCEPT
iptables -A FORWARD -s 192.168.3.100 -d 192.168.1.100 -j ACCEPT

#100851

Ну грубо говоря

#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Маскардинг
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu


iptables -A FORWARD -s 192.168.1.100 -d 192.168.3.100 -j ACCEPT
iptables -A FORWARD -s 192.168.3.100 -d 192.168.1.100 -j ACCEPT

Тут будет 192.168.1.100 видеть 192.168.3.100 и наоборот и жлюза и больше не что.

#100852
xlin написал:
Правила не сработали. Виндузовый комп 192.168.1.100 все равно лезет в третью сетку. Правила пробовал оба варианта.

Ну сам говорил чтоб с 1 подсети видно было третью.
Или я что не так понял обрисуй точнее чтоб кто кого видел.
Вывод iptables -L

#100880

Да. Нужно что бы первая видела вторую и наоборот. Например, я указал шлюз на виндузовой тачке и она заимела инет от прозрачного прокси. Еще нужно задропить определенный список IP из третьей сетки, что бы они не могли спереть файлы и документы с первой. Т.е. открывать доступ только тем, кому хочу.

Дома к сожалению проверить проблематично... Все на виртуалке делаю. И скорее всего из-за этого не точности. У меня первый интерфейс жестко привязан к реальной карточке, а второй был NAT. Из-за этого наверное на правила пофигу. Буду разбираться.

#100889

Последний пример самое то.

#101244
Kettler написал:
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Просвети про запись... pls...

#101255

Грубо говоря у проходящих пакетов меняет mtu хорошо помогает когда раздаёшь vpn инет.

#101265
Kettler написал:
Грубо говоря у проходящих пакетов меняет mtu хорошо помогает когда раздаёшь vpn инет.

Понял. Не сталкивался пока с такой необходимостью. Но спинным мозгом чую, что не далее как завтра столкнусь. Никак не могу настроить прохождение https с виндовых машин. С мой (linux) работает, а виндовые установить соединеие не могут. Подумалось, что собака именно в MTU зарылась.

#101266

порт открой tcp 443 или разреши прохождение.

Войдите или зарегистрируйтесь, чтобы ответить.