• Здраво и добредојдовте на форумот на IT.mk.

    Доколку сеуште не сте дел од најголемата заедница на ИТ професионалци и ентузијасти во Македонија, можете бесплатно да се - процесот нема да ви одземе повеќе од 2-3 минути, а за полесна регистрација овозможивме и регистрирање со Facebook и Steam.

Linux In Action, Part 1: Gateway и Network конфигурација

Статус
Затворена за нови мислења.
  • Ја почнал/а темата
  • #1

Aleks

Gaining Experience
18 мај 2007
5,748
288
Linux In Action, Part 1.

Ова е првиот туториал а се надевам дека кје се серија од неколку вакви туротијали преку кои кје објаснувам неколку практични употреби на оперативниот систем GNU/Linux.

Овде кје зборам како да направете домашен Gateway и како да се испраксирате за мини конфигурирација на network во GNU/Linux.

Почеток.

Сценарио:
Имате некој стар компјутер, имате 2 мрежни картички, АДСЛ/ОнНет Интернет ама нема што да правите. Еве идеја, ајде да направиме Linux Gateway преку кој целиот ваш интернет ќе оде.

Зошто? Епа, ова кје ви дојде како добра пракса за сваќање на основите на network конфигурирањето под Linux и ќе претставува основа за понатамошно унапредување на знаењата.

Подготовки:
1. Едно ЦД со Damn Small Linux (Верзија не е важна)
2. Еден network кабел со crossover конeктори
3. 30минути.

Инсталирање на DSL:

Значи, сега ќе го инсталираме оперативниот систем на нашиот компјутер. Ќе ви ја кажам јас мојата конфигурирација на која го инсталирав па вие судете дали вашиот стар компјутер е доволно јак за DSL:

CPU – 75MHz ; 16MB RAM ; 2GB HDD ; 2MB VGA ; 2 NIC

Boot -тираме DSL на нашиот иден мини сервер, кога ќе се појави менито каде што треба да притиснете ентер за да се бутира пишете “install” за да појде инсталацијата директно. После тоа инсталирајте го DSL нормално. Нема да може да го објаснувам целиот инсталациски процес на DSL поради практични причини (Нема ова да е дело од 1000 страни). Повеќе овде http://damnsmalllinux.org/dsl-hd-install.html

Забелешка*1 - Од сега натаму мора да сте логирани како root

После инсталацијата ќе мора да направеме неколку startup skripti за целосна автомација. Ќе одеме по ред. После инсталација поврзете ги компјутерите, кабелот од АДСЛ/ОнНет ставете го во една мрежна а преку другата мрежна картичка конектирајте го вашиот PC.

Сега ќе направиме PPPoE конекција и воедно ќе ги идентификуваме мрежните картички (Која е за интернет а која е за ЛАН). Во терминал пишете: pppoeconf , потоа направете нормална пппое конекција ама запамтете кој интерфејс ќе каже дека ќе биде користен за конакцијата (или eth0 или eth1). Сега ќе почнеме со едитирање на опции и правење на скрипти.

Прво ќе го едитираме boot менито и ќе ја додадеме опцијата “nodhcp” што значи дека при секое бутирање нема да бара автоматски IP адреса за мрежните картички. Ова го правиме за да мозе мануелно да зададеме IP адреса поради тоа што ова не е мрежа со мну компјутери а и ќе ни го олесни понатамошното надоградување и конфигурирање. Еве како се прави:

1 Од терминал пишуваме: nano /boot/grub/menu.lst
2 Ги местиме овие опции:

Timout 1 , и кај линијата kernel на крајот ставаме nodhcp . Треба да изгледа вака:
Код:
# This sets the default entry to boot.
# Remember that GRUB counts from 0, so 1 is the second entry.

default 0

# This sets the length of time in seconds that grub will wait for the user to select an OS
# before it boots the default on. I reccommend at least 15 seconds.

[B]timeout 1[/B]

# Enter the entry for DSL here. Something like this.

title DSL
kernel /boot/linux24 root=/dev/hda1 quiet vga=normal oacpi noapm nodma noscsi frugal nofstab [B]nodhcp[/B]
Сега притискаме CTRL+X и Y и завршивме со овој дел.
 
  • Ја почнал/а темата
  • #2

Aleks

Gaining Experience
18 мај 2007
5,748
288
Сега треба да инсталираме еден специјален модул наречен iptables со чија помош ќе направиме sharing на конекцијата т.е. кје направиме мини серверот да ни е gateway. Прво на веќе конектираниот интернет на мини серверот во терминал пишуваме:

wget http://vmetni.com/aleks/iptables.dsl
wget http://vmetni.com/aleks/iptables

После ги пишуваме овие команди една по една, после за сите ќе дадам објаснување:

mydsl-load iptables.dsl
rm –rf /etc/init.d iptables
cp iptables /etc/ini.d
chmod +x /etc/init.d/iptables


Првата команда значи да го лоадираме модулот, втората да ја избришеме веќе постоечката скрипта од /etc/init.d/, третата да ја копираме новата, четвртата да ставеме да може да се execute новата скрипта.

Сега откако го лоадиравме модулот iptables ќе го активираме и потоа ни преостанува уште да ги напишиме скриптите за авоматизација при бутирање. Истотака и овие команди ги пишувајте една по една:

Код:
iptables --flush  

iptables --table nat –flush

iptables --delete-chain

iptables --table nat --delete-chain 

iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE t

iptables --append FORWARD --in-interface eth1 -j ACCEPT # со претпоставка дека ова е мреќната картичка на која е поврзак вашиот PC

echo 1 > /proc/sys/net/ipv4/ip_forward 

/etc/init.d/iptables save
/etc/init.d/iptables start
/etc/init.d/iptables restart
Првите 7 команди се за правење на Connection Sharing т.е. претворање на мини серверот во GateWay. Повеќе информации за iptables на http://www.netfilter.org/projects/iptables/index.html (Благодарност до LT)

Последните три команди се за зачувување на претходните и за рестартирање на сервисите одговорни за интернетот што ќе поминува низ двете мрежни картички. Мора да истакнам дека eth1 овде е земено како пример, а вие би требало да наместите т.е. овде да го впишете оној интерфејс преку кој е поврзан вашиот ПЦ со мини серверот. Тоа може да го до знаете така што, ако eth0 е интерфејсот кој се користи за пппое конекцијата тогаш eth1 ќе биде другиот кој ќе е наменет за вмрежување на драта компјутери.

Сега ни преостанува да направиме boot скрипта која ќе ни уклучува некои сервиси и неколку други работи како задавање на статична IP на оној интерфејс кој ни е за конекциза на двата компјутери меѓусебно.

Во терминал пишуаме:

nano /etc/init.d/start-all

И ја внесуваме следнава скрипта:


Код:
#!/bin/sh
# Скрипта за автоматизација на нашава цел, By Aleks

# Konfiguracija na eth1 so statican IP (Zabeleshka*2)
ifconfig eth1 DOWN
ifconfig eth1 inet 192.168.0.1
ifconfig eth1 UP

# startuvanje na eth0 (Zabeleshka*2) I konektiranje na internet
ifconfig eth0 UP
pppd call dsl-provider

# iptables & ipforwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/init.d/iptables start

# startuvanje na web server
/opt/monkey-0.9.1/bin/monkey -D

# start SSH server
/etc/init.d/ssh start
После зачувување направете на скриптата можноста за execution
 
  • Ја почнал/а темата
  • #3

Aleks

Gaining Experience
18 мај 2007
5,748
288
Забелешка*2 eth1/eth0 овде е земено како пример, а вие би требало да наместите т.е. овде да го впишете оној интерфејс преку кој е поврзан вашиот ПЦ со мини серверот. Тоа може да го до знаете така што, ако eth0 е интерфејсот кој се користи за пппое конекцијата тогаш eth1 ќе биде другиот кој ќе е наменет за вмрежување на драта компјутери.

Сега ќе направеме линкови за start up (види Додаток 1 за подетални информации околу некои проблеми).

Во терминал пишуваме:

cd /etc/rc3.d/
ln –s /etc/init.d/start-all S100startall


Подетално за овие команди најдете во мојот претходен туторијал овде.

Сега сте готови. Рестартирајте го мини серверот и прегледајте дали се работи како што треба.

ДОДАТОК 1. Преслаба РАМ меморија

Доколку компјутерот ви е премногу слаб(мислам на оној што сте го одбрате за реализација на овој проект), и доколку неможете успешно да ја уклучите десктоп средината би ви препорачал да го направите DSL да нсе вклучува во runlevel 3. Како да го направите тоа, еве ќе ви објаснам.

При старт на DSL, поточно кога X серверот ќе проба да се стартува притиснете CTRL+ALT+F1 и логирајлте се. Потоа едитирајте го iniitab со помош на комадата: nano /etc/inittab и сменете го од id:5:initdefault: во id:3:initdefault: . Потоа зачувајте го и при следниот рестарт DSL кје се bootира во runlelvel 3.

ПС: Мојот сервер кој беше инспирација за сето ова се наоѓа на http://aleks.honelinux.net/


Поздрав и со среќа
 

hmmm

Gaining Experience
30 ноември 2007
1,242
80
hmmm's setup  
Processor & Cooler
i5 3570k @4.2GHz & CM Hyper 212+
Motherboard
AsRock Z77 Pro3
Storage
Samsung 840 EVO 120GB + WD Black 1TB
PSU
Corsair CX600
RAM
2x4GB G.Skill Sniper 1600MHz
Video card
HD4000
Case
Custom
Mouse
Gigabyte GM-M7000
Keyboard
Generic
Audio
Asus Xonar DG
Monitor
Compaq Q2159
OS
Windows 8 64bit
:bravo: samo taka prodolzi :bravo:
 
Статус
Затворена за нови мислења.

Нови мислења

Последни Теми

Статистика

Теми
42,728
Мислења
831,402
Членови
28,719
Најнов член
loxxY
На врв Дно