To je Ubuntu 9.04 server setup, ale mohli byť použité na starších verziách, ako dobre a Debian pravdepodobne.
Existuje mnoho spôsobov, ako nastaviť taký server, ale to je môj spôsob.
Dúfam, že si na linuxtuts si to, stačí skopírovať a vložiť, a budete sa cez v žiadnom okamihu bytu.
A neváhajte začať tému v sekcii Linux na všetky otázky a komentáre. (Budem pridávať alebo uberať na to, ako vidím FIT)
Niektoré funkcie tohto nastavenia sú ..
1) Kompletný LAMP (Apache, PHP, MySQL, Perl)
2) phpMyAdmin
3) ClamAV
4) memcached A Memcache PHP5 Module
5) SSL-povolené
6) apache moduly "suexec prepísať SSL akcie patrí a vyfúknuť" povolené
7) vsftpd (ftp server)
8) Awstats (s pridanými funkciami)
9) webmin (Control Panel)
Perfektný Server Setup Pokračovanie (časť II)
10) Mail Server s Dovecot a Postfix integrácie
11) TorrentFlux (Vaše vlastné SeedBox)
12) Moblock ("Moblock" je ipfilter / PeerGuardian 2 pre "linux".)
13) Jinzora Media Server (výkonný webový media streaming server)
Ďakujeme linuxtuts.
POZNÁMKA: I použitie nano editer. Existujú dva príkazy, ktoré potrebujete vedieť, aby ste mohli používať túto editer.
1) Ctrl + O --------- šetrí
2) Ctrl + x --------- východy editer (zavrieť)
Takže vždy Ctrl + O a potom Ctrl + x, keď vaše hotové
A do toho urvat "SecureCRT ®" Pst klienta tu. Jej musia mať! (Pre mňa tak ako tak, Putty a všetci ostatní nemajú šancu s touto Pst klientom.
Plus budete chcieť pozrite sa sem na niekoľko veľmi užitočných rád / a triky, ako začnete.
Pri inštalácii Ubuntu Server, keď príde na softvér seletion zvoliť iba "openshh-server"
(Môžete tiež zapnúť root prihlásení do prevádzky)
Konfigurácia siete
Pretože inštalátor Ubuntu má nastavený náš systém získať jeho nastavenie siete cez DHCP, musíme zmeniť, že teraz, pretože server musí mať statickú IP adresu. Upraviť / etc / network / interfaces a upraviť ho pre svoje potreby (v tomto prípade nastavenia budem používať IP adresu 192.168.1.19):
Kód:
nano / etc / network / interfaces
Kód:
# Tento súbor opisuje sieťové rozhranie k dispozícii vo vašom systéme # a ako ich aktivovať. Pre viac informácií viď interfaces (5). # Loopback sieťové rozhranie eth0 auto iface eth0 inet statickú adresu 192.168.1.19 netmask 255.255.255.0 siete 192.168.1.0 255.255.255.0 gateway 192.168.1.254 vysielania
Potom upravte / etc / hosts.
Nech je to vyzerať takto:
Kód:
127.0.0.1 localhost 192.168.1.19 mail.b366alive.net localhost.localdomain mail # Nasledujúce riadky sú žiaduce pre IPv6 môže hosts:: 1 localhost IP6-localhost IP6-loopback fe00:: 0 IP6-LocalNet FF00:: 0 IP6-mcastprefix ff02:: 1 IP6-allnodes ff02:: 2 IP6-allrouters ff02:: 3 IP6-allhosts
Teraz spustite
Kód:
echo mail.b366alive.net> / etc / hostname / etc / init.d / hostname.sh štart
Potom reštart siete:
Kód:
/ Etc / init.d / networking restart
Potom spustite
Obe by mali ukázať mail.b366alive.net teraz.
Potom spustite
aktualizovať apt balík databázy a
Kód:
aptitude bezpečné-upgrade
Zmena východiskovej Shell
/ Bin / sh je symlink na / bin / dash, ale potrebujeme / bin / bash, nie / bin / dash. Preto sme to:
Kód:
dpkg-reconfigure dash
"Inštalácia dash ako / bin / sh? <- Nie"
.................................................. ..............................
Zakázať AppArmor
AppArmor je bezpečnostný rozšírenie (podobne ako SELinux), ktoré by mali poskytovať rozšírené bezpečnosti. Podľa môjho názoru, nemusíte ho konfigurovať bezpečný systém, a to zvyčajne spôsobí viac problémov ako výhod (myslím, že to potom, čo ste urobil týždeň trouble-shooting, pretože niektoré služby nebolo pracuje, ako sa očakávalo, a potom zistíte, že všetko bolo ok, len AppArmor bol príčinou problému). Preto som ju zakázať. ! (FTW)
Môžeme zakázať to takhle:
Kód:
/ Etc / init.d / AppArmor stop update-rc.d-f AppArmor odstrániť aptitude remove AppArmor AppArmor-utils
Reštartovať počítač!
Umožňuje inštalovať nejaký softvér "všetko v jednom príkaze", Fast rýchle a jednoduché.
Kód:
aptitude-y nainštalovať ssh openssh-server ntpdate ntp mysql-client mysql-server openssl rkhunter binutils clamav clamav-daemon zoo vybaľovanie bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-SASL-perl clamav-daemon docs libi-reťazec -perl libi-socket-ssl-perl libnet-Ident-perl zips libnet-DNS-perl kvóty quotatool vlogger Webalizer build-essential libtool autoconf automake1.9 flex bison fail2ban perl libnet-SSLeay-perl openssl libauthen-pam-perl libpam-runtime libi-PTY-perl libmd5-perl memcached php5-Memcache php5-dev podvracanie apache2-common apache2 apache2.2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5 -mysql php5-imap php5-cli phpmyadmin php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-Manipulácia libmail-mbox-messageparser-perl libgd-graph-perl spamassassin imagemagick libapache2-mod -suphp libgeo-ipfree-perl vsftpd python-crypto
Budete opýtaný na nasledujúce otázky:
"Nové heslo pre MySQL" root "užívateľ: <- yourrootsqlpassword"
"Zopakujte heslo pre MySQL" root "užívateľ: <- yourrootsqlpassword"
"Vytvorenie adresára pre on-line správu? <- Nie"
"Web server pre konfiguráciu automaticky: <- apache2"
"Konfigurácia databázy pre phpmyadmin sa dbconfig-common? <- Áno"
"Heslo databáza správnych Užívateľ: <- yourrootsqlpassword"
"MySQL hesla aplikácie pre phpmyadmin: <- yourrootsqlpassword"
.................................................. ..............................
Potom spustite nasledujúci príkaz, aby Apache moduly suexec, prepisovať, ssl, defláciu akcií, a zahŕňajú:
(Môžete to urobiť to takhle, ale ja som zistil, že nie vždy funguje, tak som to s druhým príkazom)
Kód:
a2enmod suexec prepísať ssl akcie patrí defláciu
Kód:
a2enmod prepísať, a2enmod ssl, a2enmod akcie, a2enmod patrí, a2enmod defláciu
Bezpečné phpMyAdmin odstránením súboru / etc / phpmyadmin / htpasswd.setup súboru ...
Kód:
rm-f / etc / phpmyadmin / htpasswd.setup
... a odstráňte alebo zakomentujte nasledujúcej časti v súbore / etc / phpmyadmin / apache.conf:
Kód:
nano / etc / phpmyadmin / apache.conf
Kód:
[...] # # Povoliť pre nastavenie # <Directory /usr/share/phpmyadmin/setup> # <IfModule mod_authn_file.c> # # AuthType Základné AuthName "phpMyAdmin Setup" # AuthUserFile / etc / phpmyadmin / htpasswd.setup # < / IfModule> # Vyžadovať platného-používateľského # </ Directory> [...]
Reštart Apache potom:
Kód:
/ Etc/init.d/apache2 restart
Môžete pristupovať k svojmu phpMyAdmin panel tým, že pôjdete Kód:
http://yourserver.com/phpmyadmin alebo http://192.168.1.19/phpmyadmin
Použite root a MySQL passwd sa prihlásiť.
.................................................. ....................
Ak chcete použiť "Kvótou" pre svojich užívateľov, budete musieť upraviť / etc / fstab súbor .. (Mine vyzerá takto (I znie, usrquota, grpquota na oddiel s prípojný bod /):)
Tu je moje
Kód:
# / Etc / fstab: static súborový systém informácií. # # Použite 'vol_id - uuid' pre tlač všeobecne jedinečný identifikátor # zariadení, čo môže byť použitý s UUID = ako robustnejšie spôsob, ako názov zariadenia, #, ktorá funguje aj ak disky sú pridané a sú odstránené. Pozri fstab (5). # # <file System> <mount bod> <typ> <volby> <dump> <pass> proc / proc proc predvolené 0 0 # / ho / dev/mapper/VolGroup00-LogVol00 počas inštalácie UUID = 4c5883d6-2529 do 4858-87e8-34f83df86c3c / ext4 relatime, chyby = vyliezť na-ro, usrquota, grpquota 0 1 # / boot je na / dev/sda1 UUID = počas inštalácie fd8f5097-c4e3-4ba1-8f42-70f127f57768 / boot ext3 relatime 0 2 # swap bol on / dev/mapper/VolGroup00-LogVol01 počas inštalácie UUID = 67f232eb-243d-424e-880c-9667845c0667 none swap sw 0 0 / dev/scd0 / media/cdrom0 UDF, ISO9660 užívateľa, noauto, exec, utf8 0 0
Kód:
touch / quota.user / quota.group chmod 600 / kvóty .* mount-o remount /
Kód:
quotacheck-avugm quotaon-avug
.................................................. ............
Chceme MySQL počúvať na všetkých rozhraniach, a to nielen localhost, preto sme upraviť / etc / mysql / my.cnf a zakomentujte riadok bind-address = 127.0.0.1:
Kód:
nano / etc / mysql / my.cnf
Kód:
[...] # Miesto skip-sietí predvolená je teraz počúvať len na localhost #, ktoré je viac kompatibilné a nie je menej bezpečný. # Bind-address = 127.0.0.1 [...]
Potom sme restart MySQL:
Kód:
/ Etc / init.d / mysql restart
Teraz skontrolujte, že spojenie je aktívne. Beh
Kód:
netstat-Tap | grep mysql
Výstup by mal vyzerať nasledovne:
root @ mail: ~ # netstat-Tap | grep mysql
tcp 0 0 *: mysql *: * POČÚVAJTE 8474/mysqld
root @ mail: ~ #
.................................................. ..............................
Nainštalujte Jailkit
Jailkit je potrebné iba ak chcete chroot SSH používateľom. Môže to byť umiestnené nasledovne
Kód:
wget http://olivier.sessink.nl/jailkit/jailkit-2.7.tar.gz decht xvfz jailkit-2.7.tar.gz CD jailkit-2.7. / configure make make install cd .. rm-rf jailkit-2.7 *
.................................................. ...............
OK, sme už nainštalovaný memcached A Memcache PHP5 Module. Tak umožňuje test nášho nastavenia.
Skontrolujte, či PHP5 aký je aktuálny stav ...
Za týmto účelom sme sa vytvoriť súbor info.php v našom dokumente root / var / www:
Kód:
nano / var / www / info.php
Skopírujte a vložte tento ...
Kód:
<? Php phpinfo ();?>
Potom, hovoríme, že súbor v prehliadači: Kód:
http://192.168.1.19/info.php
Ako vidíte, máme PHP 5.2.0 nainštalované ...
Memcached by už mal byť spustený. Môžete si overiť, že napísaním
Kód:
netstat-Tap | grep memcached
By mal vyzerať nejako takto ...
SERVER1: ~ # netstat-Tap | grep memcached
tcp 0 0 localhost.localdo: 11211 *: * POČÚVAJTE 3092/memcached
SERVER1: ~ #
Teraz umožňuje test Memcache v našej prehliadači ...
Kód:
nano / var / www / memcachetest.php
Skopírovať a vložiť ...
Kód:
<? Php $ Memcache = new Memcache; $ Memcache-> connect ('localhost', 11211) or die ("Nemožno sa pripojiť"); $ version = $ Memcache-> getVersion (); echo "Server verzie:". $ verzie. "<br/> \\ n"; $ tmp_object = new stdClass; $ tmp_object-> str_attr = 'test', $ tmp_object-> int_attr = 123, $ Memcache-> set ('kľúč', $ tmp_object, false, 10) or die ("Nepodarilo sa uložiť dáta na server"); echo "ukladať dáta do cache (dáta vyprší za 10 sekúnd) <br/> \\ n"; $ get_result = $ Memcache-> get ('kľúč '); echo "Dáta z cache: <br/> \\ n"; var_dump ($ get_result);?>
Potom som zavolať, že súbor v prehliadači Kód:
http://192.168.1.19/memcachetest.php
.................................................. ..............................
Configureing Awstats ...
Kód:
nano / etc/apache2/awstats.conf
Skopírovať a vložiť ...
Kód:
Alias / awstatsclasses "/ usr / share / awstats / lib /" Alias / awstats-icon / "/ usr / share / awstats / ikony /" Alias / awstatscss "/ usr / share / doc / awstats / examples / css" ScriptAlias / cgi-bin / / usr / lib / cgi-bin / ScriptAlias / awstats / / usr / lib / cgi-bin / Voľby ExecCGI-MultiViews + SymLinksIfOwnerMatch
Teraz, keď sme definovať všetky základné nastavenia, ktoré nám umožnia prístup štatistiky priamo cez protokol HTTP, je potrebné informovať o tejto apache2. Upraviť / etc/apache2/apache2.conf:
Kód:
nano / etc/apache2/apache2.conf
a pridajte nasledujúci riadok na koniec súboru:
Kód:
Zahrnúť / etc/apache2/awstats.conf
Teraz reload apache2:
Kód:
/ Etc/init.d/apache2 reload
Ok, teraz si môžete dať prvý výstrel na Kód:
http://www.mysite.org/awstats/awstats.pl
ale budete mať nasledujúcu chybu:
Chyba: sitedomain parameter nie je definovaný v config / doménu súboru. Musíte ho upraviť pre použitie tejto verzie AWStats.
To v podstate znamená, že musíme nastaviť awstats.
Dostať sa späť do práce ...
Na inštaláciu, AWStats poskytuje východiskové konfiguračný súbor s názvom / etc / awstats / awstats.conf. Skopírujte tento súbor do / etc / awstats / awstats.www.mysite.org.conf
mysite.org je napríklad použiť svoj vlastný názov domény)
Kód:
cp / etc / awstats / awstats.conf / etc / awstats / awstats.www.mysite.org.conf
a upravovať súbory: / etc / awstats / awstats.conf a / etc / awstats / awstats.www.mysite.org.conf Zmenou týchto parametrov do tejto podoby ...
Kód:
nano / etc / awstats / awstats.conf
A
Kód:
nano / etc / awstats / awstats.www.mysite.org.conf
Kód:
Logfile = "/ var/log/apache2/access.log" sitedomain = "mysite.org" AllowToUpdateStatsFromBrowser = 1
Aktualizujte svoje štatistiky cron
V / etc / crontab pridať
Kód:
nano / etc / crontab
Kód:
# Update každých 10 min * / 10 * * * * root / usr / lib / cgi-bin / awstats.pl-config = toto.com-update> / dev / null
To je v podstate to, ale pokiaľ váš šikovný budete pokračovať so mnou na zlepšenie krajiny a mestá informácie o polohe vo Vašom webovom Analytics ... (FTW Ja viem, kto a kde ste!)
Potom umožňuje získať balíčky ..
Kód:
wget wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz wget http:/ / geolite.maxmind.com / download / GeoIP / Databáza / asnum / GeoIPASNum.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz
To
Kód:
if [! -D / usr / local / share / GeoIP], potom mkdir / usr / local / share / GeoIP fi
Potom ....
Kód:
mv GeoIP.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoIP.dat.gz mv GeoLiteCity.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoLiteCity.dat.gz mv GeoIPASNum.dat.gz / usr / local / share / GeoIP / gunzip / usr / local / share / GeoIP / GeoIPASNum.dat.gz mv GeoIPv6.dat.gz / usr / local / share / GeoIP / gunzip / usr/local/share/GeoIP/GeoIPv6.dat.gz
Potom sme sa ...
Kód:
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 check sudo make install
Teraz vám umožní inštalovať niektoré moduly Perlu ...
Spustiť ...
Potom umožňuje upgrade CPAN
Kód:
Inštalácia Net:: DNS
Koniec do ...
Teraz vám umožní upraviť naše "/ etc / awstats / awstats.conf a / etc / awstats / awstats.www.mysite.org.conf "Súbory znovu ... Pridaním týchto riadok do" plugins "Oddiel ....
Kód:
LoadPlugin = "bublinovej nápovedy" LoadPlugin = "GeoIP GEOIP_STANDARD / usr / local / share / GeoIP / GeoIP.dat" LoadPlugin = "geoip_city_maxmind GEOIP_STANDARD / usr / local / share / GeoIP / GeoLiteCity.dat" LoadPlugin = "geoip_org_maxmind GEOIP_STANDARD / usr / local / share / GeoIP / GeoIPASNum.dat "LoadPlugin =" hostinfo "
To je to ľudí, choďte update awstats vo vašom prehliadači a vidieť rozdiel .....
Prejsť na AWStats vo vašom prehliadači Kód:
http://yourdomain.com/awstats/awstats.pl alebo http://192.168.1.19/awstats/awstats.pl
.................................................. ..............................
Configureing vsftpd ..
To sú niektoré z možností tu
ftpd_banner: Vytlačí uvítaciu správu, keď niekto pripojí k serveru.
Vypočujte si: Ak je povolené, vsftpd pobeží v samostatnom režime.
xferlog_enable: Ak je povolené, log súbor bude ukladať detailné obrázky a súbory na prevzatie.
connect_from_port_20: Táto možnosť určuje, či PORT štýl dátové pripojenie použiť port 20 na serveri.
hide_ids: Ak je povolené, budú všetky užívateľov a informácie o skupine je uvedená ako "ftp".
max_client: Nastaví maximálny počet klientov, možnosť pripojenia. Pracuje len v samostatnom režime.
max_per_ip: Nastaví maximálny počet klientov, možnosť pripojenia z rovnakej IP adresy. Tiež pracuje len v samostatnom režime.
anon_root: Nastavuje adresár, ktorý vsftpd pokúsi zmeniť v prípade anonymný užívateľ prihlási palcov
anonymous_enable: Povolí alebo zakáže anonymný prístup. Použiť so zvýšenou opatrnosťou.
anon_upload_enable: Ak je povolené, bude anonymný užívatelia povolené vkladať.
anon_mkdir_write_enable: Ak je povolené, bude anonymný užívatelia povolené vytvárať nové zložky. Avšak, pre túto možnosť pracovať, váš server potrebuje mať možnosť anonymný upload povolená a ftp * NIX používateľ musí napísať oprávnenie nadradeného adresára.
Kód:
nano / etc / vsftpd.conf
Pridajte nasledujúci riadok (odkomentovat riadok) na vsftpd konfiguračný súbor:
Nad config smernica umožní miestnym používateľom prihlásiť sa cez ftp
Ak by ste chceli, aby užívateľ mohol nahrať súbor, pridajte nasledujúce do súboru:
[Code] write_enable = YES [/ code]
Z bezpečnostných môžete obmedziť lokálne používatelia do svojich domovských adresárov. Pridajte nasledujúce do súboru:
Kód:
chroot_local_user = YES
Uložte a zatvorte súbor.
Restart vsftpd
Kód:
/ Etc / init.d / vsftpd restart
Prihláste sa na svoj ftp server s Kód:
ftp://yourdomain.com alebo ftp://192.168.1.19
.................................................. ..............................
Inštalácia a Configureing webmin, páči sa mi to lepšie ako cPanel sám ...
Inštalovať a aktualizovať cez webmin APT, upravte / etc / apt / sources.list na vašom systéme a pridajte riadok: (To je pre ubuntu)
Kód:
nano / etc / apt / sources.list
Kód:
deb http://download.webmin.com/download/repository sarge contrib
Tiež by ste mali vyzdvihnúť a nainštalovať GPG kľúč, s ktorými je podpísaný úložiska, s príkazy:
Kód:
cd / root wget http://www.webmin.com/jcameron-key.asc apt-key pridať jcameron-key.asc
Tie budú teraz môcť nainštalovať s príkazmi:
Kód:
apt-get update apt-get-y nainštalovať webmin
Teraz môžete ísť do Kód:
https: / / yoursite.com: 10000 alebo https: / / 192.168.1.19:10000
prístup k vášmu serveru. (Prihlásiť sa root a vaše passwd)
(Upozorňujeme, zaťaženie CPU na mojom serveri) Sakra, že chlapci dobrý!
Tam sú všetky druhy modulov pre webmin, ale sme len chystáte inštalovať pár ... (Môžete nainštalovať, čo cítite, je nessary)
Tieto dva budeme inštalovať, sú "vsftpd" a "wbmclamav" ...
Pozrite sa na ľavej strane webmin a ísť
1) webmin
2) webmin konfigurácia
V "webmin Configuration" vyberte sekciu ...
3) webmin moduly
šek "treťou stranou modulu" a stlačte tlačidlo na konci ...
4) Vyhľadávanie wbmclamav
potom hit inštalovať modul. (Pri prvom spustení "wbmclamav", budete musieť zálohovať konfiguráciu.)
5) Tento postup opakujte pre "vsftpd" modulu.
Hotovo! Teraz máte GUI skenovať všetky súbory nastaviť tak, aby prevádzka na scedule atď. (Čo-kedy chcete)
Máte úplnú kontrolu nad všetkými aspektmi vám server teraz skrze "webmin" ...
Pokračovanie Tu
Užite si .........
Mier ..................... linuxtuts
Záložky