Понедельник, 29.04.2024, 19:21
Приветствую Вас Гость

Free Operating Systems

Меню сайта
Категории каталога
Главная » Статьи » Unix-образные системы » Сеть

Настройка NAT в Linux(не FreeBSD)
Итак, представим что у нас есть локальная сеть 192.168.1.0 с маской 24. Допустим интернет-провайдер выделил для нас 1 ip адрес: пусть это будет 81.18.1.1(все совпадения случайны). Мы поставили на нужный компьютер debian (конечно можно и другую unix-подобную ОС поставить), определились с ip адресом шлюза для нашей локальной сети: пусть у нас это будет 192.168.1.1 ,настроили подключение с интернетом.

В нашей локальной сети все компьютеры должны иметь шлюз по умолчнию 192.168.1.1. Надеюсь на надо объяснять для чего это нужно. Если ваши пользователи локальной сети будут иметь полный доступ до Интернета,- то с помощью iptables это реализуется следующим образом. Допустим нам надо открыть доступ до интернета компьютеру с ip-адресом 192.168.1.22, тогда:

Code
root@server# iptables -A POSTROUTING -t nat -s 192.168.1.22 -j MASQUERADE

Теперь ваш компьютер с ip-адресом 192.168.1.22 получит доступ до Интернета. Конечно может вы не захотите отрывать полный доступ, а захотите отрыть только получение и отправку электронной почты с сервера yandex.ru. Тогда вам необходимо в командной строке выполнить:

Code
root@server# iptables -A POSTROUTING -t nat -s 192.168.1.22 -d 213.180.204.67 -p tcp --dport 110 -j MASQUERADE

и
Code
root@server# iptables -A POSTROUTING -t nat -s 192.168.1.22 -d 87.250.251.38 -p tcp --dport 25 -j MASQUERADE

В проделжении статьи о iptables и применении NAT на практике хотелось бы затронуть очень важный и интересный момент. А именно применении уже DNAT на практике.

Что нам дано: есть локальная сеть соединенная с интернетом через шлюз(назовем его Сервер_1) и какой то другой сервер(Сервер_2). В данном случае нам не принципиально, какие функции возложены на Сервер_2.

Что нам нужно: не заходя на Сервер_1, т.е. на шлюз по ssh иметь возможность выйти на внутренний Сервер_2 "напрямую". Почему "напрямую" в кавычках? Очень просто,- потому что все равно мы будем заходить на шлюз,а он в свою очередь будет пробрасывать данные до нужного сервера_2 и нужного порта этого же сервера.

Решение: итак, организовать проброс данных организовать очень просто. Делается это так:

Code
root@server# iptables -A PREROUTING -i eth0 -d 10.128.1.1 --dport 222 -j DNAT --to-destination 192.168.1.12:22

Можно отменить сделанные изменения например так:

Code
root@server# iptables -D POSTROUTING -t nat -s 192.168.1.22 -d 87.250.251.38 -p tcp --dport 25 -j MASQUERADE
Категория: Сеть | Добавил: Dominator (23.05.2009)
Просмотров: 1260 | Рейтинг: 3.5/2 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Друзья сайта