К основному контенту

Настройка прокси сервера (часть 1)

Приспичило мне настроить NAT(маскарадинг), называйте как хотите. Для чего? Есть две сетевые. Одна eth1 — интернет, вторая eth0 — внутренняя подсеть 192.168.0.0/28
Собственно, пакеты из внешней подсети должны перенаправляться во внутреннюю и наоборот.

Для начала, нужно включить ip forwarding. Проверим, не включен ли он:

$ cat /proc/sys/net/ipv4/ip_forward

Если выдаст 0 — выключен, 1 — соответственно включен.
Чтобы включить:
$ echo 1 > /proc/sys/net/ipv4/ip_forward

А чтобы включит навсегда в файл /etc/sysctl.conf добавляем следующие строчки:

net.ipv4.conf.default.forwarding=1 net.ipv4.conf.all.forwarding=1

Создаем файл в /etc/network/if-pre-up.d/NAT и делаю исполняемым chmod +x /etc/network/if-pre-up.d/NAT. Теперь, при подъёме интерфейсов в up запускается наш «NAT».

Собственно, всё делается через iptables. Содержание файла NAT:
# Первым делом очистим существующую таблицу правил: iptables -F # Добавляем первое правило которое позволит нам не потерять удаленный контроль над сервером iptables -A INPUT -p tcp -i eth1 --dport 22 -j ACCEPT # Прописываем политики по умолчанию: # Принимать все пакеты, которые инициированы из уже установленного соединения, и имеющим признак ESTABLISHED. # Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении. iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #Запрешаем на передачу всё, что не разрешено. iptables -P INPUT DROP iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # Разрешаем хождение трафика по localhost iptables -A INPUT -i lo -j ACCEPT #Разрешаем пинг(DROP - запретить) iptables -A INPUT -i eth1 -p icmp --icmp-type 8 -j ACCEPT #NAT #Должен быть включен ip forwarding iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/28 -j ACCEPT iptables -A POSTROUTING -t nat -j MASQUERADE iptables -A INPUT -i eth0 -p icmp --icmp-type 8 -j ACCEPT

Теперь, настроем наш eth0, сделав его шлюзом
Лезим в /etc/network/interfaces

address 192.168.0.1 netmask 255.255.255.240 broadcast 192.168.0.15

Всё, готово. Но, чтобы не вбивать каждый раз адрес и dns вручную, особенно, если компов несколько, поднимем ещё и dhcp сервер.

Для начала установим его:

# apt-get install dhcp3-server

Он естественно не запустится, правим файлик конфигурации /etc/dhcp/dhcpd.conf
Конфиг приблизительно такой:
#Опция динамического обновления для dns ddns-update-style none;

#Домен и dns'ы 
option domain-name "admin-pc";
option domain-name-servers <ip dns серверов, если несколько - через запятую>;
#Время жизни адресов default-lease-time 600; 
max-lease-time 7200;
 # # Для логирования в отдельный файл 
log-facility local7;
 #Подсеть из которой выдаются ip 
#диапазон #шлюз #brodcast #интерфейс на котором работает 
subnet 192.168.0.0 netmask 255.255.255.240 { range 192.168.0.2 192.168.0.14; option routers 192.168.0.1; option broadcast-address 192.168.0.15; interface eth0; }

Запускаем демона:

# /etc/init.d/isc-dhcp-server start

Проверяем, работает, радуемся!
Но, по умолчанию, логируется всё в /var/log/syslog, что не очень удобно если вам нужно работать с логами.
Предлагаю, можно всё в отдельный файл.

Создадим файл /etc/rsyslog.d/dhcpd.conf с содержимым:
local7.* /var/log/dhcpd.log

Для ротации логов в файл /etc/logrotate.d/rsyslog вставить строку:

/var/log/dhcpd.log

Перезапускаемся:

# /etc/init.d/isc-dhcp-server restart # /etc/init.d/rsyslog restart

Теперь, смотрим лог в /var/log/dhcpd.log

Копирайт

Комментарии

Популярные сообщения из этого блога

Типичные неисправности ЖК-мониторов

Случилось у меня беда: умерли два одинаковых монитора. И вот стал я искать типовые неисправности для своей модели. (Умерли одинаково.) И вот нашёл такую вещь на просторах. Решил скопировать, дабы не потерять. А то ведь всякое случается с сайтами. Так надёжнее.

Запретить пользователям изменять настройки Google Chrome

Для запрета нужно использовать политики Хрома. Чтобы их активировать, необходимо скачать архив по этой ссылке -  отсюда  или  отсюда Далее по инструкции: Существует два типа шаблонов: шаблоны ADM и шаблоны ADMX. Вам потребуется определить, какой тип шаблонов можно использовать в вашей сети. В этих шаблонах показано, какие разделы реестра можно задать для настройки Google Chrome и какие значения параметров являются допустимыми. Значения параметров в этих разделах реестра определяют поведение Google Chrome. Настройте параметры сети. Откройте загруженный шаблон ADM или ADMX, выполнив указанные ниже действия. Выберите Пуск > Выполнить: gpedit.msc. Перейдите к узлу Политика локального компьютера > Конфигурация компьютера > Административные шаблоны. Нажмите правой кнопкой мыши Административные шаблоны и выберите Добавление и удаление шаблонов. В открывшемся диалоговом окне добавьте шаблон chrome.adm. В результате в узле Административные шаблоны" появится папка Google/G...

Автоматическое рисование топологии сети и прочие "плюшки" FPinger

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