2020. március 31., kedd

Webserver telepítése, konfigurálása virtuálboxban

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
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
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
Nat-be.sh
INTIF="br0"
EXTIF="eth0"
INTIF2="br1"
Második alhálózat esetén van rá szükség!!!
EXTIF2="eth0"
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. (
20090327
01 ; 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
 A
 10.1.1.5
xp1
  IN
 A
 10.1.1.2
xp2
IN
 A
 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
 IN
 PTR
 evi-debian.brkk.lan.
2
 IN
 PTR
 xp1.brkk.lan.
3
 IN
 PTR
 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

ide másoljuk be a default fájlt 3-szor, más-más néven.
Konfiguráljuk őket egyenként:
<VirtualHost *:80>
ServerAdmin
webmaster@ftp.virtual.lan
ServerName
FTP.virtual.lan
DocumentRoot /var/websites/ftp/
<Directory /var/websites/ftp/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order Allow,deny
allow from all
</Directory>
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
</VirtualHost>
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
<VirtualHost *:80>
ServerAdmin
webmaster@ftp.virtual.lan
ServerName
FTP.virtual.lan
DocumentRoot /var/websites/ftp/
<Directory /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
</VirtualHost>
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.

Nincsenek megjegyzések:

Megjegyzés küldése