Webserver telepítése, konfigurálása Ha virtualboxban szeretnénk a szerverünket telepíteni, akkor a meglévőoperációs rendszerünkhöz szükségünk van a Vbox alkalmazásra. Linux rendszer estén, így telepítsük: •vbox, •uml-utilities, •bridge-utils. Amikor ezeket a programokat telepítettük, írjuk meg a nat-be.src-t és a vbox.src-t. Vboxscript
#!/bin/sh # set PATH for the case we are called via sudo or su root PATH=/sbin:/usr/bin:/bin:/usr/sbin # create a tap tunctl -t tap1 -u marcsi ip link set up dev tap1 # create the bridge brctl addbr br0 brctl addif br0 tap1 # set the IP address and routing ip link set up dev br0 ip addr add 10.1.1.1/24 dev br0 ip route add 10.1.1.0/24 dev br0
Másik alhálózat esetén kell: brctl addbr br1 brctl addif br1 tap4 ip link set up dev br1 ip addr add 10.1.2.1/24 dev br1 broadcast 10.1.2.255 ip route add 10.1.2.0/24 dev br1
tunctl -t tap2 -u marcsi ip link set up dev tap2 brctl addif br0 tap2 A tap1 és a tap2 a (virtuális) hidak, melyek lehetővé teszik, hogy a (virtuális) gépeink kommunikálni tudjanak a szerverünkkel. Futtathatóvá tesszük: chmod 775 vbox.src Ahhoz hogy megfelelően működjön, a felhasználót hozzá kell adni a következő csoportokhoz: marcsi-debian:/etc# adduser marcsi root marcsi-debian:/etc# adduser marcsi vboxusers marcsi-debian:/etc# apt-get install sudo / ha még nem lenne telepítve marcsi-debian:/etc# adduser marcsi sudo Indításkorkéri: modprobe vbox Ha nem akarjuk minden indításkor beírni akkor: A /etc/modules fájlba egy üres sorba: vboxdrv
Nat-be.sh INTIF="br0" EXTIF="eth0" INTIF2="br1" EXTIF2="eth0"
Második alhálózat esetén van rá szükség!!!
echo 1 > /proc/sys/net/ipv4/ip_forward # clear existing iptable rules, set a default policy iptables -P INPUT ACCEPT iptables -F INPUT iptables -P OUTPUT ACCEPT iptables -F OUTPUT iptables -P FORWARD DROP iptables -F FORWARD iptables -t nat -F # set forwarding and nat rules iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
Erre a részre csak második alhálózat esetén van szükség. #iptables -A FORWARD -i EXTIF2 -o EXTIF -p tcp --dport 23 -d 10.1.1.1 -j ACCEPT #iptables -t nat -A POSTROUTING -o EXTINF2 -j SNAT --to 10.1.1.1 #echo 1 > /proc/sys/net/ipv4/ip_forward iptables -A FORWARD -i $EXTIF2 -o $INTIF2 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i $INTIF2 -o $EXTIF2 -j ACCEPT iptables -t nat -A POSTROUTING -o $EXTIF2 -j MASQUERADE Ha ezzel végeztünk, nyissuk meg a Virtualbox-ot, állítsuk be a a szükséges hardver erőforrásokat, majd a hálózati beállításnál, NAT helyett, a Gazda csatolót válasszuk ki, tap1-el. Most már telepíthetjük a web szerverünket, pl.:Debian. Debian telepítési napló I. A legelső lépés, hogy felmérjük a rendszer drivereit, ezután kiválasztjuk a szoftvereket a harverekhez. II. A megfelelő telepítő CD-képet a www.debian.org oldalról érdemes letölteni. A letöltött CD-képre jobb klikk – felugrik a helyi menü, melyből a kiválasztjuk a CD-DVD készítő alkalmazást.
III.
A telepítő ablak menüjéből választhatjuk a grafikus és a karakteres telepítési felületet is . Mindkettő jó, de karakteresben nagyobb a valószínűsége, hogy a telepítési útmutató végig magyarnyelvű marad.
IV.
Következik a telepítési nyelv- és a billentyű kiosztás kiválasztása. Ezután a hálózat konfigurálása, melyet legjobb manuálisan elvégezni. Amennyiben két névszerver IP címét kell megadnunk, a két címet csak szóközzel választjuk el egymástól. Megkell adni a gép- és a tartomány nevét.
V.
PARTICIONÁLÁS: 1.
/home: ez a kövnytár lesz a legnagyobb (ha kb. 60GB szabad területünk van, akkor ennek a könyvtárnak osszuk ki legalább a terület felét).
2.
/swap: ez a virtuális memória, melynek mérete minimum a fizikai memóriával legyen egyenlő. Úgy particionáljunk, hogy ez a könyvtár a lemez közepére essen, mert így az olvasó fejek gyorsabban érik el.
3.
/usr: ide kerülnek a felhasználói programok, területe minimum 5GB, maximum 15GB.
4.
/var: minimálisan 4GB területre van szüksége, de ha gépünk webszerver, akkor ez a könyvtár legyen a legnagyobb. Ha levelezőszervert szeretnénk, akkor a /var és a /home könyvtárak legyenek a legnagyobbak.
A fenti adatok alapján kiosztjuk a könyvtárak méretét, majd egyszerre megformázzuk őket.
VI.
Ha befejeződött a particionálás, ki kell választanunk a megfelelő kernelt. Ha ez megvan, megadjuk a root jelszavát, a felhasználó teljes nevét, majd a felhasználó nevét és jelszavát.
VII. Scan another CD-DVD? (Más telepítő lemez keresése?) A válasz nem. Use a network mirror? (Tükörkiszolgáló használata?) A válasz igen. VIII. Ha nincs tejjes telepítő lemezünk, a telepítéshez szükséges fájlokat a netről húzza le. Ebben az esetben az ftp.hu.debian.org-ot válasszuk. A http proxy-t nem kell kitölteni. IX.
Ha mindent jól csináltunk elindul a telepítés, ha viszont visszadob a menüben, akkor valamit elcsesztünk.
Az első bejelentkezés után, töltsük le a frissítéseket. (:rendszer/adminisztráció/frissítés kezelő).
Most pedig az alkalmazások telepítése:
Ehhez valószínűleg, root-ként kell tevékenykednünk. Írjuk parancssorba: su vagy sudo -s. Majd: apt-get install mc, apt-get install dselect, apt-get install bind9, apt-get install dhcp3-server.
Először a DNS szerverünket konfiguráljuk: Hozzuk létre a névfeloldó- és címfeloldó scripteket:
brkk.name.db $TTL 86400 @ IN SOA dns.brkk.lan. dnsmaster.brkk.lan. ( 2009032701 ; Serial A kijelölt rész a napi dátum. 86400 ; Refresh 900 ; Retry 604800 ; Expire 86400 ) ;Negativ cache TTL @ IN NS dns.brkk.lan. Az alhálózat neve. @ IN NS slavedns.brkk.lan. $origin brkk.lan. evi-debian IN xp1 IN xp2 IN
A A A
10.1.1.5 10.1.1.2 10.1.1.3
Futtathatóvá tesszük, parancssorból: chmod_775_brkk.name.db Csoport megváltoztatása: chown mit:mire brkk.rev.db $TTL 86400 @ IN SOA dns.brkk.lan. dnsmaster.brkk.lan. ( 2009032701 ; Serial 86400 ; Refresh 900 ; Retry 604800 ;Expire 86400 ) ;Negativ cache TTL @ IN NS dns.brkk.lan.
@
IN
NS
slavedns.brkk.lan.
$origin 1.168.192.in-addr.arpa. 4 2 3
IN IN IN
PTR PTR PTR
evi-debian.brkk.lan. xp1.brkk.lan. xp2.brkk.lan.
Szintén futtathatóvá tesszük. named.conf.local // // Do any local configuration here // // Consider adding the 1918 zones here, if they are not used in your // organization //include "/etc/bind/zones.rfc1918"; zone "brkk.lan" { type master; file "brkk-name.db"; # allow-transfer { 192.168.1.252; }; allow-query { 127.0.0.1; 10.1.1.0/24; }; # also-notify { 192.168.1.252; }; # notify yes; }; zone "1.1.10.in-addr.arpa" { type master; file "brkk-rev.db"; # allow-transfer { 192.168.1.252; }; allow-query { 127.0.0.1; 10.1.1.0/24; }; # also-notify { 192.168.1.252; }; # notify yes; }; Named.conf.options options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. forwarders {
10.1.1.0; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; check-names master fail; check-names response warn; }; Ha elkészültünk, indítsuk újra a bindet. /etc/init.d/bind9 restart
És most a DHCP-server. Dhcpd.conf # # Sample configuration file for ISC dhcpd for Debian # # $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ # # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none; # option definitions common to all supported networks... option domain-name "virtualiroda.lan"; option domain-name-servers 10.1.1.1; default-lease-time 21600; max-lease-time 43200; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). # log-facility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. #subnet 10.152.187.0 netmask 255.255.255.0 { #} # This is a very basic subnet declaration. subnet 10.1.1.0 netmask 255.255.255.0 { # range 10.1.1.2 10.1.1.100; option domain-name "virtual.lan"; option domain-name-servers 10.1.1.5; option subnet-mask 255.255.255.0; option routers 10.1.1.1; option broadcast-address 10.1.1.255; option netbios-node-type 8; option netbios-name-servers 10.1.1.1; deny unknown-clients; host xp1 { hardware ethernet 08:00:27:92:F9:E8; fixed-address 10.1.1.2;} host xp2 { hardware ethernet 08:00:27:B1:A6:FC; fixed-address 10.1.1.3;} }
subnet 10.1.2.0 netmask 255.255.255.0 { range 10.1.2.100 10.1.2.200; # option domain-name-servers szerver.virtualiroda.lan; option subnet-mask 255.255.255.0; option routers 10.1.2.1; option broadcast-address 10.1.2.255; ezekre csak második alhálózat esetén van szükség option netbios-node-type 8; option netbios-name-servers 10.1.2.1; } # This declaration allows BOOTP clients to get dynamic addresses, # which we don't really recommend. #subnet 10.254.239.32 netmask 255.255.255.224 { # range dynamic-bootp 10.254.239.40 10.254.239.60; # option broadcast-address 10.254.239.31; # option routers rtr-239-32-1.example.org; #} # A slightly different configuration for an internal subnet. #subnet 10.5.5.0 netmask 255.255.255.224 { # range 10.5.5.26 10.5.5.30; # option domain-name-servers ns1.internal.example.org; # option domain-name "internal.example.org"; # option routers 10.5.5.1; # option broadcast-address 10.5.5.31; # default-lease-time 600; # max-lease-time 7200; #} # Hosts which require special configuration options can be listed in # host statements. If no address is specified, the address will be # allocated dynamically (if possible), but the host-specific information # will still come from the host declaration. #host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename "vmunix.passacaglia"; # server-name "toccata.fugue.com"; #} # Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. #host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #} # You can declare a class of clients and then do address allocation # based on that. The example below shows a case where all clients # in a certain class get addresses on the 10.17.224/24 subnet, and all # other clients get addresses on the 10.0.29/24 subnet. #class "foo" { # match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
#} #shared-network 224-29 { # subnet 10.17.224.0 netmask 255.255.255.0 { # option routers rtr-224.example.org; # } # subnet 10.0.29.0 netmask 255.255.255.0 { # option routers rtr-29.example.org; # } # pool { # allow members of "foo"; # range 10.17.224.10 10.17.224.250; # } # pool { # deny members of "foo"; # range 10.0.29.10 10.0.29.230; # } #} Ha elkészültünk, indítsuk újra. /etc/init.d/dhcp3-server restart Telepítsük fel a windows-okat. Webszerver alkalmazások telepítése apt-get install apache2; apt-get install mysql-server-5.0; apt-get install php5; apt-get install phpmyadmin. Hozzunk létre egy új könyvtárat /var/websites néven, majd it 3 másikat: /var/websites/ftp majd egy fájlt, parancssorba: cat>index.html, majd ctrl+c-t nyomjunk. /var/websites/www majd egy fájlt, parancssorba: cat>index.html, majd ctrl+c-t nyomjunk. /var/websites/mail majd egy fájlt, parancssorba: cat>index.html, majd ctrl+c-t nyomjunk. Ezek után hozzunk létre minden fájlba egy HTML-t. Az /etc/apach2/sites-available Konfiguráljuk őket egyenként:
ide másoljuk be a default fájlt 3-szor, más-más néven.
ServerAdmin [email protected] ServerName FTP.virtual.lan DocumentRoot /var/websites/ftp/ Options Indexes FollowSymLinks MultiViews AllowOverride All Order Allow,deny allow from all
Errorlog /var/log/apache2/error-ftp.log # Possible values include: debug, info, notice, warn, error, crit, alert, emerg. LogLevel warn CustomLog /var/log/apache2/access-ftp.log combined A bekonfigurált fájlokat lekell futtatni, parancssorban: a2ensite www a2ensite FTP a2ensite mail Készítsünk egy negyediket is: ezt a phpmyadmin default fájt másoljuk, a /var/websites/sql mappába, index.html néven, majd kiegészítjük: # phpmyadmin default Apache configuration
ServerAdmin [email protected] ServerName FTP.virtual.lan DocumentRoot /var/websites/ftp/ . . E két bejegyzés között marad minden a régi!!! . Errorlog /var/log/apache2/error-ftp.log # Possible values include: debug, info, notice, warn, error, crit, alert, emerg. LogLevel warn CustomLog /var/log/apache2/access-ftp.log combined Ezt is futtatni kell: a2ensite sql. Most már csak az apache szervert kell elindítani: /etc/inid.d/apache2 reload. Ha mindent jól csináltunk, akkor ha windows böngészőjébe beírjuk a következőt: http://www.virtual.lan, akkor meg kell jelenjen a HTML szöveg.