от Галин Грозев(28-02-2001)
рейтинг (23)
[ добре ]
[ зле ]
Вариант за отпечатване
Функцията на един gateway най-общо казано е да позволи на
компютрите от една мрежа да комуникират с такива от външни
мрежи и да контролира заявките от други компютри.Ако имате
повече от един компютър тогава има смисъл единият от тях да
бъде gateway към вашия интернет доставчик.По този начин
всичките ви компютри могат да използват интернет като
поделят само един модем.Това е лесно и най-вече евтино..
Един от най-добрите начини да се направи gateway е с
използването на ipfw и natd. ipfw е съкращение от Internet
Packet Firewall. Дори и да не искате firewall това е
най-добрия начин да реализирате gateway.
Инструкции по инсталацията:
Тези инструкции са взети от FreeBSD natd ръководството
което е достъпно на http://www.freebsd.org/cgi/man.cgi?natd
или чрез командата man natd под FreeBSD.За по-подробна
информация е желателно да разгледате въпросния документ.
Нека да приемем че мрежовата карта е ed0. Ако не е ed0
трябва да заместите със името на вашия мрежов интерфейс.
1) Нуждаете се от FreeBSD 2.2 или по-нова версия
Тук няма да разглеждаме инсталацията на FreeBSD. За повече
информация по този въпрос се обърнете към частта Installing
FreeBSD във FreeBSD Handbook която се намира на адрес http://www.freebsd.org/handbook/install.html.
2) Изграждане на собствен кернел
Преди да прекомпилирате кернела е препоръчително да сте се
запознали със Configuring the FreeBSD Kernel в FreeBSD
handbook на адрес http://www.freebsd.org/handbook/kernelconfig.html.
Първо за да си прекомпилирате кернела ви е нужен неговия
source код. Ако на вашата система няма /usr/src/sys/
директория тогава вие не разполагате със sorce кода му.
Най-лесния начин да се сдобиете с него е като пуснете
/stand/sysinstall като root, изберете Configure,след това
Distributions, след това src и най-накрая sys.
Сега трябва да направите копие на текущия или GENERIC
кернел.
# cd /usr/src/sys/i386/conf
# cp GENERIC NOV-KERNEL
Добавете тези два реда в новия кернел.
options IPFIREWALL
options IPDIVERT
Следващите стъпки са:
# /usr/sbin/config NOV-KERNEL
# cd ../../compile/NOV-KERNEL
# make depend
# make
# make install
След това трябва да рестартирате системата за да заредите
новия кернел. Уверете се че при рестарта няма никакви
съобщения за грешки. Ако все пак има такива - желателно е да
заредите стария кернел и да открите причината за
грешките.
3) Създаване на gateway/firewall
За да стане вашата машина gateway и firewall трябва да
добавите следните два реда в /etc/rc.conf:
gateway_enable="YES"
firewall_enable="YES"
4) Конфигуриране на мрежовата карта
Убедете се че мрежовите ви карти са вече конфигурирани. Ако
използвате ppp трябва да стартирате ppp преди natd.
5) Добавете natd към вашите услуги
Проверете дали следният ред присъства в /etc/services и ако
не е там добавете го:
natd 8668/divert # Network Address
Translation socket
6) Стартиране на natd
Добавете го към /etc/rc.local за да се стартира всеки път
заедно със системата по следния начин:
natd -interface ed0
7) Пренасочете трафика към natd
Като начало трябва да изпълите следните команди:
/sbin/ipfw -f flush
/sbin/ipfw add divert natd all from any to any via
ed0
/sbin/ipfw add pass all from any to any
С довянето на допънителни правила вие може да збранявате
използването на определени портове и услуги от определени
потребители във или извън вашата локална мрежа. Вижте
FreeBSD natd manpage за подробности и описание на всички
опции.
8) Рестарт на машината
Заради промените които бяха направени дотук се налага да
рестартирате системата.
Ако всичко е минало нормално вече трябва да имате действащ
gateway благодарение на ipfw/natd.
Внимание - тук са показани само принципите на създаване на
gateway под FreeBSD. При различните системи са възможни
разлики в горепосочените стъпки.
Галин Грозев - thug@smrad.com
<< Как да защитите вашият Linux (част 1) | Линукс Съвместими Модеми >>
|