Tai Ubuntu 9,04 serverio nustatymus, bet gali būti naudojamas ant senesnės versijos, taip pat ir Debian turbūt.
Yra daug būdų, norėdami nustatyti tokių serverių, bet tai yra mano būdas.
Tikiuosi, jums patiks ši linuxtuts, tiesiog nukopijuokite ir įklijuokite, ir jums bus per ne laiku butas.
Ir nedvejodami pradėti temą Linux skirsnį už visus komentarus ir klausimus. (Aš pridėti arba atimti iš šio, kaip matau tinka)
Kai kurie šią įrangą funkcijos ..
1) žibintas Stack (apache, php, mysql, perl)
2) phpMyAdmin
3) ClamAV
4) memcached ir PHP5 memcache modulis
5), SSL įjungtas
6) Apache moduliai "suexec perrašyti SSL veiksmai apima ir Saplakt įjungta
7) vsftpd (FTP serverio)
8) awstats (su papildomų funkcijų)
9) Webmin (Valdymo skydas)
Perfect Server Setup Tęsinys (II dalis)
10) pašto serverio Dovecot ir Postfix integracijos
11) torrentFlux (Jūsų pačių SeedBox)
12) Moblock ("Moblock" yra IPFilter / PeerGuardian 2 "Linux").
13) Jinzora Media Server "(galingas interneto žiniasklaidos Streaming Server)
Dėkojame linuxtuts.
PASTABA: Aš naudoju nano editer. Yra dvi komandos, ką reikia žinoti, jei norite naudoti editer.
1) Ctrl + O --------- taupo
2) Ctrl + X --------- išėjimai editer (uždaryti)
Taigi visada Ctrl + O, tada Ctrl + X, kai bus gatavas
Ir pirmyn patraukti "SecureCRT ®" SHH klientas iš čia. Jos turi būti! (Man vis tiek, glaistai ir visi kiti ne stovėti šią SHH klientas galimybę.
Plius galite ieškoti čia kai labai naudingi patarimai / ir gudrybės, prieš pradėdami.
Diegiant Ubuntu Server, kai atvyksi į programinės įrangos seletion tik pasirinkti "openshh-server"
(Galite taip pat leidžia šaknis prisijungimo paleisdami)
Konfigūruoti tinklą
Kadangi Ubuntu Installer yra sukonfigūruotas mūsų sistema, kad įsigytų jo tinklo parametrus per DHCP, mes turime pakeisti, kad dabar, nes serveris turi turėti statinį IP adresą. / Etc / network / interfaces ir pritaikyti ją savo reikmėms (šiame pavyzdyje diegimo Aš naudojamas ti IP adresas 192.168.1.19):
Kodas:
nano / etc / network / interfaces
Kodas:
# Šis failas tinklo sąsajų jūsų sistemoje # ir kaip aktyvuoti juos. Daugiau informacijos rasite sąsajų (5). # Grįžtamojo ryšio tinklo sąsają auto eth0 iface eth0 inet static adresas 192.168.1.19 netmask 255.255.255.0 tinklo 192.168.1.0 255.255.255.0 gateway 192.168.1.254 transliuoti
Tada redaguokite / etc / hosts.
Kodas:
nano / etc / hosts
Padaryti atrodys taip:
Kodas:
127.0.0.1 localhost localhost.localdomain 192.168.1.19 mail.b366alive.net pašto # šios eilutės pageidautina IPv6 gali pavaduojančius:: 1 localhost IP6-localhost IP6-grįžtamojo fe00:: 0 IP6-localnet ff00:: 0 IP6-mcastprefix ff02:: 1 IP6-allnodes ff02:: 2 IP6-allrouters ff02:: 3 IP6-allhosts
Dabar įvykdykite
Kodas:
echo mail.b366alive.net> / etc / hostname / etc / init.d / hostname.sh pradėti
Tada paleiskite savo tinklo:
Kodas:
/ Etc / init.d / networking restart
Tada paleiskite
Kodas:
hostname hostname-f
Abu turėtų parodyti mail.b366alive.net dabar.
Tada paleiskite
atnaujinti apt paketų duomenų bazė ir
Kodas:
aptitude safe-upgrade
Keisti numatytąją kriauklę
/ Bin / sh yra simbolinė nuoroda į / bin / dash, tačiau mums reikia / bin / bash, o ne / bin / dash. Todėl mes tai padaryti:
Kodas:
dpkg-reconfigure dash
"Įdiegti brūkšnys, / bin / sh? <- Ne"
.................................................. ..............................
Išjungti AppArmor
AppArmor yra saugumo pratęsimo (panašus į SELinux), kad turėtų būti pratęstas saugumą. Mano nuomone, jums nereikia konfigūruoti saugi sistema, ir ji paprastai sukelia daugiau problemų nei naudos (tai manote po tu padarei iš trouble shooting, nes kai kurios paslaugos neveikia kaip tikėtasi savaitę, tada jūs sužinoti, kad viskas buvo ok, tik AppArmor buvo problemos). Todėl aš ją išjungti. ! (Ftw)
Mes galime išjungti taip:
Kodas:
/ Etc / init.d / apparmor sustabdyti update-rc.d-f apparmor pašalinti aptitude pašalinti AppArmor AppArmor-utils
Perkrauti kompiuterį!
Leidžia įdiegti tam programinės įrangos "Viskas viename komandą", Greitas greitai ir lengvai.
Kodas:
aptitude-y įdiegti SSH openssh-server NTP ntpdate mysql-client mysql-server openssl rkhunter binutils ClamAV clamav-daemon zoologijos sode unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl ClamAV-docs tarnybą libio-string -perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl kvota quotatool vlogger Webalizer pastatų būtina autoconf automake1.9 libtool flex bison fail2ban perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-Pty-perl libmd5-perl php5-memcached memcache php5-dev apache2 subversion apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5 -mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick libmail-mbox messageparser-perl libgd-graph-perl SpamAssassin imagemagick libapache2-mod -suphp libgeo-ipfree-perl vsftpd python-crypto
Jūsų bus paprašyta atsakyti į šiuos klausimus:
"Naujas slaptažodis MySQL" root "vartotojas: <- yourrootsqlpassword"
"Pakartoti slaptažodį MySQL" root "vartotojas: <- yourrootsqlpassword"
"Sukurti katalogus internete administravimo? <- Ne"
"Web serveris pertvarkyti automatiškai: <- apache2"
"Konfigūruoti duomenų bazė phpmyadmin su dbconfig-common? <- Taip"
"Slaptažodis savo duomenų bazės administravimo vartotojas: <- yourrootsqlpassword"
"MySQL taikymo slaptažodį phpmyadmin: <- yourrootsqlpassword"
.................................................. ..............................
Tada paleiskite šią komandą, kad būtų galima Apache moduliai suexec, perrašyti, ssl, deflate veiksmai, ir apima:
(Galite tai padaryti tai taip, bet aš rasiu ji ne visada veikia, kad aš daryti su antra komanda)
Kodas:
a2enmod suexec perrašyti SSL veiksmai apima Saplakt
Kodas:
a2enmod perrašyti; a2enmod SSL; a2enmod veiksmus; a2enmod įtraukti; a2enmod Saplakt
Saugoma phpMyAdmin išbraukiant / etc / phpmyadmin / htpasswd.setup failo ...
Kodas:
rm-f / etc / phpmyadmin / htpasswd.setup
... ir pašalinti arba komentaras iš šių skyrių į / etc / phpmyadmin / apache.conf:
Kodas:
nano / etc / phpmyadmin / apache.conf
Kodas:
[...] # # Leisti setup # <directory /usr/share/phpmyadmin/setup> # <IfModule mod_authn_file.c> # AuthType Pagrindinės # AuthName "phpMyAdmin Setup" # AuthUserFile / etc / phpmyadmin / htpasswd.setup # < / IfModule> # Reikalauti svarbių vartotojas # </ Directory> [...]
Paleiskite Apache po:
Kodas:
/ Etc/init.d/apache2 naujo
Galite prieiti prie savo phpMyAdmin grupės, eikite į Kodas:
http://yourserver.com/phpmyadmin arba http://192.168.1.19/phpmyadmin
Naudokite šaknis ir savo mysql slaptažodis prisijungimui.
.................................................. ....................
Jei Jūs norite naudoti "Kvota" jūsų vartotojai turite pakeisti / etc / fstab failą .. (Mano atrodo taip (I pridūrė usrquota, grpquota į su prijungimo tašką pertvarų /):)
Kodas:
nano / etc / fstab
Štai mano
Kodas:
# / Etc / fstab: static failų sistemos informaciją. # # Naudokite "vol_id - uuid" spausdinti visuotinai unikalus identifikatorius # prietaisas, tai gali būti naudojama su UUID = kaip tvirtesnis būdas pavadinimas įrenginiai #, kuri veikia net jei diskai yra dedama ir jų pašalintos. Žiūrėti fstab (5). # # <nazwa System> <mount point> <type> <options> <dump> <pass> proc / proc proc defaults 0 0 # / buvo / dev/mapper/VolGroup00-LogVol00 diegiant UUID = 4c5883d6-2529-4858-87e8-34f83df86c3c / Ext4 relatime, klaidos = remonto-ro, usrquota, grpquota 0 1 # / boot buvo / dev/sda1 diegiant UUID = fd8f5097-c4e3-4ba1-8f42-70f127f57768 / boot ext3 relatime 0 2 # apsikeitimo buvo / dev/mapper/VolGroup00-LogVol01 diegiant UUID = 67f232eb-243d-424e-880c-9667845c0667 nė apsikeitimo sw 0 0 / dev/scd0 / media/cdrom0 UDF, ISO9660 vartotojas, noauto, exec, utf8 0 0
Kodas:
Touch / quota.user / quota.group chmod 600 / kvota .* mount-o remonto /
Kodas:
quotacheck-avugm quotaon-avug
.................................................. ............
Mes norime MySQL klausytis visų sąsajų, o ne tik localhost, todėl mes redaguokite / etc / mysql / my.cnf ir komentaras iš linijos jungiasi-address = 127.0.0.1:
Kodas:
nano / etc / mysql / my.cnf
Kodas:
[...] # Vietoj Pereiti Networking nutylėjimą yra dabar išklausyti tik # localhost, kuris yra labiau suderinamas ir nėra mažiau saugus. # Įpareigoti-address = 127.0.0.1 [...]
Tada mes iš naujo paleisti MySQL:
Kodas:
/ Etc / init.d / mysql restart
Dabar patikrinkite, kad tinklai yra įjungtas. Paleisti
Kodas:
netstat-tap | grep mysql
Produkcija turėtų atrodyti taip:
root @ mail: ~ # netstat-tap | grep mysql
tcp 0 0 *: mysql *: * LISTEN 8474/mysqld
root @ mail: ~ #
.................................................. ..............................
Įdiekite Jailkit
Jailkit reikia tik tada, jei norite chroot SSH vartotojams. Jis gali būti įrengtas taip
Kodas:
wget http://olivier.sessink.nl/jailkit/jailkit-2.7.tar.gz deguto xvfz jailkit-2.7.tar.gz cd jailkit-2.7. / configure make make install cd .. rm-rf jailkit-2.7 *
.................................................. ...............
Gerai, mes jau įdiegta memcached ir PHP5 memcache modulis. Taigi galime išbandyti mūsų parametrus.
Patikrinkite PHP5 dabartinis valstybės ...
Norėdami tai padaryti, mes sukuriame failą info.php mūsų kataloge dokumentų / var / www:
Kodas:
nano / var / www / info.php
Nukopijuokite ir įklijuokite šį ...
Kodas:
<? Php phpinfo ();?>
Vėliau, mes vadiname šį failą savo naršyklėje: Kodas:
http://192.168.1.19/info.php
Kaip matote, mes turime PHP 5.2.0 įdiegtas ...
Memcached jau turėtų veikti. Jūs galite patikrinti, ar įvesdami
Kodas:
netstat-tap | grep memcached
Jei atrodyti taip ...
server1: ~ # netstat-tap | grep memcached
tcp 0 0 localhost.localdo: 11211 *: * LISTEN 3092/memcached
server1: ~ #
Dabar leidžia bandymo memcache mūsų naršyklę ...
Kodas:
nano / var / www / memcachetest.php
Nukopijuokite ir įklijuokite šį ...
Kodas:
<? Php $ memcache = nauji memcache; $ memcache-> connect ("localhost", 11211) or die ("Negaliu prisijungti"); $ version = $ memcache-> getVersion (); echo "serverio versija:". $ versija. "<br/> \\ n" $ tmp_object = nauji stdClass; $ tmp_object-> str_attr = "testas"; $ tmp_object-> int_attr = 123; $ memcache-> nustatyti ("raktas", $ tmp_object, false, 10) or die ("Nepavyko išsaugoti duomenų serverio"); echo "Saugoti duomenis į talpyklą (duomenų baigsis 10 sekundžių) <br/> \\ n" $ get_result = $ memcache-> get ('klavišą '); echo "Duomenys iš talpyklos: <br/> \\ n"; var_dump ($ get_result);?>
Tada aš vadinu failą naršyklėje Kodas:
http://192.168.1.19/memcachetest.php
.................................................. ..............................
Configureing awstats ...
Kodas:
nano / etc/apache2/awstats.conf
Nukopijuokite ir įklijuokite šį ...
Kodas:
Alias / awstatsclasses "/ usr / share / awstats / lib / slapyvardis / awstats icon /" / usr / share / awstats / ikona / slapyvardis / awstatscss "/ usr / share / doc / awstats / Pavyzdžiai / css" ScriptAlias / cgi-bin / / usr / lib / cgi-bin / ScriptAlias / awstats / / usr / lib / cgi-bin / Funkcijos ExecCGI-Multiviews + SymLinksIfOwnerMatch
Dabar, kai mes nustatome visus pagrindinius nustatymas, kuris leis mums pasiekti statistika tiesiogiai per HTTP, mes turime informuoti apache2 apie tai. Redaguoti / etc/apache2/apache2.conf:
Kodas:
nano / etc/apache2/apache2.conf
ir įtraukti šią eilutę failo pabaigoje:
Kodas:
Įtraukti / etc/apache2/awstats.conf
Dabar Perkrauti apache2:
Kodas:
/ Etc/init.d/apache2 Perkrauti
Gerai, dabar jūs galite duoti pirma kulka Kodas:
http://www.mysite.org/awstats/awstats.pl
bet jūs gausite tokį klaidos pranešimą:
Klaida: SiteDomain parametras nenustatytas savo config / domeno byla. Turite redaguoti jį naudojant šią awstats versija.
Tai iš esmės reiškia, kad mums reikia sukonfigūruoti awstats.
Sugrįžimas į darbą ...
Diegti, awstats ir suteikia default konfigūracijos failo pavadinimą / etc / awstats / awstats.conf. Nukopijuokite šį failą į / etc / awstats / awstats.www.mysite.org.conf
mysite.org yra pavyzdžiui, naudoti savo domeno pavadinimą)
Kodas:
cp / etc / awstats / awstats.conf / etc / awstats / awstats.www.mysite.org.conf
ir redaguoti failus: / etc / awstats / awstats.conf ir / etc / awstats / awstats.www.mysite.org.conf Keičiant šiuos parametrus, gali atrodyti taip ...
Kodas:
nano / etc / awstats / awstats.conf
Ir
Kodas:
nano / etc / awstats / awstats.www.mysite.org.conf
Kodas:
Logfile = "/ var/log/apache2/access.log" SiteDomain = "mysite.org" AllowToUpdateStatsFromBrowser = 1
Atnaujinti savo statistiką su cron
/ Etc / crontab Pridėti
Kodas:
nano / etc / crontab
Kodas:
# Atnaujinti kas 10 min * / 10 * * * * root / usr / lib / cgi-bin / awstats.pl-config = toto.com-update> / dev / null
Thats esmės ji, bet jei protingas jums atliks su manimi, siekiant pagerinti šalies ir miesto vietovės informaciją iš jūsų interneto analizės ataskaitas ... (Ftw Aš žinau, kas ir kur esate!)
Tada leidžia gauti paketai ..
Kodas:
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz wget http:/ / geolite.maxmind.com / download / geoip / Duomenų bazės / asnum / GeoIPASNum.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz
Tai
Kodas:
jei [! -D / usr / local / share / geoip]; tada mkdir / usr / local / share / GeoIP fi
Tada ....
Kodas:
V. GeoIP.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoIP.dat.gz V. GeoLiteCity.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoLiteCity.dat.gz V. GeoIPASNum.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoIPASNum.dat.gz V. GeoIPv6.dat.gz / usr / local / share / GeoIP / gunzip / usr/local/share/GeoIP/GeoIPv6.dat.gz
Tada mes ...
Kodas:
wget http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.6.tar.gz tar-xvzf GeoIP-1.4.6.tar.gz CD ./GeoIP-1.4.6. / Configure make make patikrinti sudo make install
Dabar leidžia įdiegti kai Perlo modulius ...
Vykdyti ...
Kodas:
perl-MCPAN-e shell
Tada leidžia atnaujinti CPAN
Išsukite pagal ...
Dabar leidžia redaguoti mūsų "/ etc / awstats / awstats.conf ir / etc / awstats / awstats.www.mysite.org.conf "Bylas iš naujo ... Pridėjus šias eilutes į" Plugins "skyrių ....
Kodas:
Toks LoadPlugin = "patarimus" toks LoadPlugin = "geoip GEOIP_STANDARD / usr / local / share / GeoIP / GeoIP.dat" toks LoadPlugin = "geoip_city_maxmind GEOIP_STANDARD / usr / local / share / GeoIP / GeoLiteCity.dat" toks LoadPlugin = "geoip_org_maxmind GEOIP_STANDARD / usr / local / share / GeoIP / GeoIPASNum.dat "toks LoadPlugin =" hostinfo "
Viskas žmonės, eiti atnaujinti awstats savo naršyklėje ir pamatysite skirtumą .....
Grįžti į awstats savo naršyklėje Kodas:
http://yourdomain.com/awstats/awstats.pl arba http://192.168.1.19/awstats/awstats.pl
.................................................. ..............................
Configureing vsftpd ..
Tai tik keletas iš jūsų puslapį čia
ftpd_banner: Raštai sveikinimo laišką, kai kas nors prisijungia prie serverio.
klausytis: Jei įjungta, vsftpd, bus rodomi standalone būdas.
xferlog_enable: Jei įjungta, žurnalo failą bus saugomi išsamūs nuotraukos ir parsisiųsti.
connect_from_port_20: Ši galimybė kontrolės ar uosto stilius duomenų ryšius naudoti uosto 20 d. serverio kompiuteryje.
hide_ids: Jei įjungta, visi vartotojų ir grupių duomenis, bus rodomas kaip "FTP".
max_client: nustato maksimalų klientų leista prijungti. Veikia tik atskirą režimu.
max_per_ip: nustato maksimalų klientų leidžiama būti iš to paties IP adreso. Be to, veikia tik atskirą režimu.
anon_root: Nustatyti katalogą, kuris vsftpd bandys pakeisti į kai anoniminis vartotojas Įrašai in
anonymous_enable: Leidžia arba išjungia Anoniminė prieiga. Naudoti atsargiai.
anon_upload_enable: Jei įjungta, anoniminių vartotojų bus leidžiama įkelti failus.
anon_mkdir_write_enable: Jei įjungta, anoniminių vartotojų bus leidžiama sukurti naujus katalogus. Tačiau šia galimybe dirbti, serveris turi turėti galimybę anonimiškai įkelti įjungti ir FTP * nix vartotojas turi rašymo teises į pagrindinį katalogą.
Kodas:
nano / etc / vsftpd.conf
Pridėkite šią eilutę (odkomentować eilutėje), vsftpd konfigūracijos failą:
Kodas:
local_enable = YES
Virš config direktyva leis vietos vartotojams prisijungti per ftp
Jei norite leisti vartotojams įkelti failą, pridėkite failą:
[Code] write_enable = YES [/ code]
Dėl saugumo, galite apriboti vietos vartotojams jų namų katalogus. Pridėti šį į šį failą:
Kodas:
chroot_local_user = YES
Išsaugoti ir uždarykite failą.
Perkraukite vsftpd
Kodas:
/ Etc / init.d / vsftpd naujo
Prisijunkite prie savo FTP serverio Kodas:
ftp://yourdomain.com arba ftp://192.168.1.19
.................................................. ..............................
Įdiegti ir Configureing Webmin, man patinka tai geriau, nei cPanel save ...
Įdiegti ir atnaujinti Webmin per APT, redaguoti / etc / apt / sources.list failą, esantį jūsų sistemoje ir pridėkite eilutę: (Tai ubuntu)
Kodas:
nano / etc / apt / sources.list
Kodas:
deb http://download.webmin.com/download/repository sarge contrib
Jūs taip pat turėtumėte gauti ir įdiegti savo GPG raktą, su kuriuo saugykloje yra pasirašytas, su komandomis:
Kodas:
cd / root wget http://www.webmin.com/jcameron-key.asc apt-key pridėti jcameron-key.asc
Dabar bus galima įdiegti su komandomis:
Kodas:
apt-get update apt-get-y įdiegti Webmin
Dabar galite pereiti prie Kodas:
https: / / yoursite.com: 10000 arba https: / / 192.168.1.19:10000
prieigą prie jūsų serverio. (Prisijungti su root ir jūsų slaptažodis)
(Atminkite, cpu naudojimas ant mano serverio) Damn, kad berniukai gerai!
Yra visi moduliai Webmin rūšių, tačiau mes tik ruošiasi įdiegti pora ... (Jūs nustatote, ką jūs manote nessary)
Du mes ketiname įdiegti yra "vsftpd" ir "wbmclamav" ...
Galite kairėje pusėje Webmin ir pereiti prie
1) Webmin
2) Webmin konfigūravimas
Į "Webmin Configuration" skyriuje pasirinkite ...
3) Webmin moduliai
Pažymėkite "Trečiosios šalies modulį" ir paspausti mygtuką pabaigoje ...
4) Ieškoti wbmclamav
tada paspauskite įdiegti modulį. (Kai pirmą kartą paleisti "wbmclamav", jums reikės padaryti atsarginę kopiją savo konfigūraciją.)
5) Pakartokite "vsftpd" modulį procesas.
PRIIMTA! Dabar jūs turite GUI nuskaityti visus failus, kad jis bus apie scedule kt. (Kas, kada norite)
Jūs turite pilną kontrolę kiekvienas iš jūsų aspektas serveris dabar per "Webmin" ...
Tęsinys Čia
Mėgaukitės .........
Taikos ..................... linuxtuts
Žymės