sidux LAMP Stack
Akronim LAMP stoji za set slobodnih softver programa obično korišteni zajedno da izvode dinamične Web stranice ili poslužitelje
Linux, operativni sustav
Apache, Web poslužitelj
MySQL, menadžment sistem za baze podataka (ili poslužitelj za baze podataka)
Perl, PHP, i/ili Python, skripting jezici
UPOZORENJE: Nikad ne koristite vas home-PC da radi kao poslužitelj! Koristite posvećenoga PC da bude internet web poslužitelj i ne dajte mu ništa drugo da radi!
Korištaj Poslužitelja:
a) lokalni test poslužitelja za web dizajnere bez internet veze, što je namjera ove teme;
b) privatni "zatvoreni" poslužitelj spojen s mrežom;
c) privatni web poslužitelj posve razmnožavan na internetu
d) komercijalni web poslužitelj što je iznad namjere ovog priručnika
Minimalne potrebe
Najmanje 256MB RAM dostupno. Sve što je manji, će nanijeti puno problema kad izvodi poslužitelja, sa mysql zahtijeva puno RAM da radi savršeno. Mysql će izbaciti pogrešku "cannot connect to mysql.sock" ako nemate dovoljno memorije na vašem poslužitelju.
sidux Generic_Server paket
sidux Generic_Server se sastoji od prepakirane instalacije via meta-paket instalera. Aplikacije koje će biti instalirane su:
apache2 apache2-utils apache2-mpm-prefork php5 php5-common mysql-server mysql-common libapache2-mod-php5 php5-mysql phpmyadmin
UPOZORENJE
apt-get remove --purge splashy
Zato što splashy uvijek pokvari mysql
Apache konfiguracijska datoteka je pod:/etc/apache2/apache2.conf i vaša web datoteka je /var/www
Da provjerite da li je php instaliran, i da li radi savršeno, samo kreirate test.php u vašem /var/www direktoriju sa phpinfo() funkcijom egzaktno kao pokazano ispod.
mcedit /var/www/test.php # test.php <? phpinfo(); ?>
Pošaljite browser na:
http://localhost/test.php ili http://yourip:80/test.php
To bi vam trebalo pokazati sve vaše php konfiguracije i standardne postavke.
Možete editirati potrebne postavke ili postaviti "virtual domains" koristeći konfiguracijsku datoteku apache.
Ako hoćete da testirate vašu instalaciju otvorite browser i upišite sljedeće
http://youripaddress/apache2-default/
Ako vam onda pokaže welcome poruku, vaša instalacija je u redu.
Standardni dokument root direktorij za apache2 je /var/www
mkdir /home/myself/www ln -s /home/myself/www /var/www
S izvođenjem gornjih naredbi možete editirati vašu web-site u vašem home direktoriju kao normalan korisnik.
FTP klijenti
Koristite SSH i čitajte pažljivo SSH temu , sidux isto ima ugrađenog FTP klijenta sa Konqueror da vam omogući da pošaljete vaše datoteke.
Aktiviranje dobrih protokola za sigurnost za web poslužitelje
Firewall
Bez firewall nemate apsolutno nikakvu sigurnost za vaš poslužitelj. Zapamtite, blokirajte SVE što god vam ne treba, ako je opet potrebno deblokirajte opet!.
21 (ftp) 22 (SSH) 25 110 (email) 443 (SSL http ili https) 993 (imap ssl) 995 (pop3 ssl) 80 (http) i bilo koji drugi port!
Zaštititi standardno datoteke poslužitelja
Jedan aspekt od Apache što je ponekad pogrešno shvaćen je, mogućnost za standardni ulaz. To je, dok god ne promijenite, ako poslužitelj može da nađe put do datoteke s normalnim URL mapping pravilima, zato ih može da posluži klijentima.
Za primjer zamislite sljedeće:
1. # cd /; ln -s / public_html 2. Ulaz na http://localhost/~root/
To bi dozvolilo klijentima šetnju kroz cijeli file-sistem! DA to sredite, dodajte sljedeći blok u vašu konfiguraciju poslužitelja:
<Directory /> Order Deny,Allow Deny from all </Directory>
To će zabraniti standardni ulaz na file-sistem. Dodajte prigodan <Directory> blok da dozvolite ulaz samo u područje koje želite. Na primjer,
<Directory /usr/users/*/public_html>
Order Deny,Allow
Allow from all
</Directory>
<Directory /usr/local/httpd>
Order Deny,Allow
Allow from all
</Directory>
Dobro pazite na <Location> i <Directory> direktivu; na primjer, i ako <Directory /> zabrani ulaz, <Location /> direktiva može da ga opet dopusti.
Budite isto pažljivi s igrama s UserDir direktivom; ako je postavite na nešto kao "./" dobijete isti efekt, za root, kao prvi primjer iznad. Ako koristite Apache 1.3 ili veći, strogo preporučujemo da dodate sljedeću liniju u vaše konfiguracijske datoteke poslužitelja:
UserDir disabled root
SSL
Izvodite skript “apache2-ssl-certificate”
# apache2-ssl-certificate
Sljedeći screen će se pokazati za vas da upišite sve potrebne informacije.
Creating self-signed certificate replace it with one signed by a certification authority (CA) enter your ServerName at the Common Name prompt. If you want your certificate to expire after x days call this programm with -days x ----- Generating a 1024 bit RSA private key -------- writing new private key to '/etc/apache2/ssl/apache.pem' -------- You are about to be asked to enter information that will be incorporated into your certificate request. ----------- What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank. For some fields there will be a default value, ---------- If you enter '.', the field will be left blank.
Country Name (2 letter code) [GB]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company; recommended) []: Organizational Unit Name (eg, section) []: server name (eg. ssl.domain.tld; required!!!) []: Email Address []:
Izvodite skript “a2enmod ssl” i.e
# a2enmod ssl
To će automatski generirati simbolični link između mods-available i mods-enabled
Napravite kopiju od '/etc/apache2/sites-available/default' datoteke u /etc/apache2/sites-available/ - imenovajte je 'ssl'
# cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl
Napravite sym-link na tu novu site konfiguraciju za taj korištaj
# ln -s /etc/apache2/sites-available/ssl /etc/apache2/sites-enabled/ (or) #a2ensite ssl
Ako hoćete da promijenite neke standardne postavke konfiguracije u /etc/apache2/apache2.conf i ako hoćete da promijenite standardni dokument root promijenite u /etc/apache2/sites-available/default datoteci i restartujte apache poslužitelja.
Da restarujete Apache poslužitelja koristite sljedeću naredbu
#/etc/init.d/apache2 restart
Sad moramo promijeniti port adresu u /etc/apache2/ports.conf, standardno će slušati na portu 80 i sad instaliramo sa SSL moramo još promijeniti port 443 da sluša
Listen 443
Editirajte /etc/apache2/sites-available/ssl (ili kako god zovete vašu novu ssl site konfiguraciju) i promijenite port 80 u imenu site na 443.
Dodajte sljedeće 2 linije negdje u /etc/apache2/apache2.conf datoteku
SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem
Editirajte SSLCertificateFile /etc/apache2/ssl/apache.pem i upišite lokaciju certificate datoteke i certificate ključne datoteke. Ispod je jedan primjer naveden:
SSLCertificateFile /etc/apache2/ssl/online.test.net.crt
SSLCertificateKeyFile /etc/apache2/ssl/online.test.net.key
Ugasite ServerSignature , editirajte /etc/apache2/apache2.conf datoteku i dodajte te dvije linije:
ServerSignature Off ServerTokens ProductOnly
Ako hoćete da dopustite razne tipove indeks datoteka provjerite sljedeću liniju u /etc/apache2/apache2.conf datoteci
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.shtml
Restartujte apache poslužitelja
/etc/init.d/apache2 restart
Sad bi trebali da imate test poslužitelj sandbox, ako hoćete da se spojite s internetom, NEMOJTE NIKADA, koristiti drugo računalo koje nije samo namijenjeno da bude internet web poslužitelj!
Izvor:
http://www.mysql-apache-php.com
http://httpd.apache.org/docs/1.3/misc/security_tips.html
http://www.debianhelp.co.uk/webserver.htm

Traži Online Offline