240px-Diamond warning sign (Vienna Convention style).svg.png Content of this wiki is DEPRECATED 240px-Diamond warning sign (Vienna Convention style).svg.png

Servery shell

Z old-wiki.siliconhill.cz
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Upřesnění.)
m (Upřesnění.)
Řádka 29: Řádka 29:
 
=== Uživatelské účty ===
 
=== Uživatelské účty ===
  
Všechny uživatelské účty, bez rozdílu, mají jako hlavní skupinu <tt>users</tt> a taktéž mají uživatelé jako <tt>[http://www.freebsd.org/cgi/man.cgi?query=login.conf&apropos=0&sektion=5&manpath=FreeBSD+7.1-RELEASE&format=html login class]</tt> nastavenou třídu <tt>users</tt>. Součástí <tt>login class users</tt> je omezení na počty běžících procesů, otevřených rukojetí a množství paměti zabrané jedním procesem, takže běžný uživatel nemůže na server provést fork-bomb (a snad ani jiný) DoS útok.
+
Všechny uživatelské účty, bez rozdílu, mají jako hlavní skupinu <tt>users</tt> a taktéž mají uživatelé jako <tt>[http://www.freebsd.org/cgi/man.cgi?query=login.conf&apropos=0&sektion=5&manpath=FreeBSD+7.2-RELEASE&format=html login class]</tt> nastavenou třídu <tt>users</tt>. Součástí <tt>login class users</tt> je omezení na počty běžících procesů, otevřených rukojetí a množství paměti zabrané jedním procesem, takže běžný uživatel nemůže na server provést fork-bomb (a snad ani jiný) DoS útok.
  
 
Všechy <tt>$HOME</tt> adresáře uživatelských účtů jsou uložené na páru zrcadlených disků ([http://www.freebsd.org/cgi/man.cgi?query=gmirror&apropos=0&sektion=8&manpath=FreeBSD+7.2-RELEASE&format=html gmirror]). Toto zrcadlo je připojené pod <tt>/mnt/homevol</tt> a na něm je adresář <tt>home</tt> dostupný přes <tt>nullfs</tt> z <tt>/usr/home</tt> a přes symlink z <tt>/home</tt>. Uživatelské účty jsou pak bez rozdílu všechny v podadresáři <tt>users</tt>.
 
Všechy <tt>$HOME</tt> adresáře uživatelských účtů jsou uložené na páru zrcadlených disků ([http://www.freebsd.org/cgi/man.cgi?query=gmirror&apropos=0&sektion=8&manpath=FreeBSD+7.2-RELEASE&format=html gmirror]). Toto zrcadlo je připojené pod <tt>/mnt/homevol</tt> a na něm je adresář <tt>home</tt> dostupný přes <tt>nullfs</tt> z <tt>/usr/home</tt> a přes symlink z <tt>/home</tt>. Uživatelské účty jsou pak bez rozdílu všechny v podadresáři <tt>users</tt>.
Řádka 37: Řádka 37:
 
=== Servisní účty ===
 
=== Servisní účty ===
  
Vedle adresáře <tt>/home/users</tt> je adresář <tt>services</tt>, který obsahuje <tt>$HOME</tt> adresáře pro různé servisní účty služeb běžících na serveru, např. <tt>phpmyadmin</tt>, <tt>phpsysinfo</tt>, <tt>strojarna</tt>, <tt>rvsro</tt> a <tt>rvsrw</tt> atd. Volba specializovaných servisních účtů je kompromisem mezi výraznějším oddělením pomocí <tt>chroot</tt> nebo BSD <tt>[http://www.freebsd.org/cgi/man.cgi?query=jail&apropos=0&sektion=8&manpath=FreeBSD+6.3-RELEASE&format=html jail]</tt> mechanizmů a spouštěním všech služeb pod jedním uživatelem, ať už <tt>www</tt> u webových aplikací, či <tt>nobody</tt> apod. u ostatních aplikací.
+
Vedle adresáře <tt>/home/users</tt> je adresář <tt>services</tt>, který obsahuje <tt>$HOME</tt> adresáře pro různé servisní účty služeb běžících na serveru, např. <tt>phpmyadmin</tt>, <tt>phpsysinfo</tt>, <tt>strojarna</tt>, <tt>rvsro</tt> a <tt>rvsrw</tt> atd. Volba specializovaných servisních účtů je kompromisem mezi výraznějším oddělením pomocí <tt>chroot</tt> nebo BSD <tt>[http://www.freebsd.org/cgi/man.cgi?query=jail&apropos=0&sektion=8&manpath=FreeBSD+7.2-RELEASE&format=html jail]</tt> mechanizmů a spouštěním všech služeb pod jedním uživatelem, ať už <tt>www</tt> u webových aplikací, či <tt>nobody</tt> apod. u ostatních aplikací.
  
 
<!-- Vysvětlení účelu jednotlivých účtů. -->
 
<!-- Vysvětlení účelu jednotlivých účtů. -->
Řádka 43: Řádka 43:
 
== Nastavení ==
 
== Nastavení ==
  
Dá se říct, že FreeBSD rozlišuje tři kořeny [http://www.freebsd.org/cgi/man.cgi?query=hier&apropos=0&sektion=7&manpath=FreeBSD+6.3-RELEASE&format=html adresářové struktury]. Jedna začíná v <tt>/</tt>, druhá v <tt>/usr</tt> a třetí v <tt>/usr/local</tt>. (Dříve bylo možné potkat i <tt>/usr/X11R6</tt>, ale tento adresář byl sloučen do <tt>/usr/local</tt>.) V <tt>/</tt> jsou nejzákladnější části systému, které jsou nezbytně nutné pro nabootování, včetně <tt>/etc</tt>.
+
Dá se říct, že FreeBSD rozlišuje tři kořeny [http://www.freebsd.org/cgi/man.cgi?query=hier&apropos=0&sektion=7&manpath=FreeBSD+7.2-RELEASE&format=html adresářové struktury]. Jedna začíná v <tt>/</tt>, druhá v <tt>/usr</tt> a třetí v <tt>/usr/local</tt>. (Dříve bylo možné potkat i <tt>/usr/X11R6</tt>, ale tento adresář byl sloučen do <tt>/usr/local</tt>.) V <tt>/</tt> jsou nejzákladnější části systému, které jsou nezbytně nutné pro nabootování, včetně <tt>/etc</tt>.
  
 
Soubory v <tt>/etc</tt> a v <tt>/usr/local/etc</tt> jsou uchovávány jako pracovní kopie systému správy verzí [http://monotone.ca/ monotone]. Databáze monotone je <tt>/root/etc.mtn</tt>. Každý, kdo mění konfiguraci, má vlastní klíč, kterým podepisuje změny, které do monotone databáze vkládá.
 
Soubory v <tt>/etc</tt> a v <tt>/usr/local/etc</tt> jsou uchovávány jako pracovní kopie systému správy verzí [http://monotone.ca/ monotone]. Databáze monotone je <tt>/root/etc.mtn</tt>. Každý, kdo mění konfiguraci, má vlastní klíč, kterým podepisuje změny, které do monotone databáze vkládá.

Verze z 16. 11. 2009, 12:54

Obsah

Obecné informace

Server shell.sh.cvut.cz je primárně určený jako unixový shell server pro celý Strahov. Také je na něm možné založit databázi v MySQL 5.

Na server je možné, po domluvě se správcem, doinstalovat téměř jakýkoliv další kompilátor či interpretr jazyka, databázový čí jiný server atd.

Operační systém 
FreeBSD 7.2
Hardware 
2x Intel(R) Xeon(TM) E5420 CPU 2.50GHz, 8GB RAM, 2x 500GB v RAID 1.
Správce 
Václav Haisman

Software

Administrátorský (root) přístup na server

Haisman Václav - správce serveru

Organizace serveru

Na server je nainstalovaný operační systém FreeBSD ve verzi 7.2 a to mu odpovídá i organizace dat a účtů.

Účty

Na serveru jsou dva typy účtů, uživatelské a servisní.

Uživatelské účty

Všechny uživatelské účty, bez rozdílu, mají jako hlavní skupinu users a taktéž mají uživatelé jako login class nastavenou třídu users. Součástí login class users je omezení na počty běžících procesů, otevřených rukojetí a množství paměti zabrané jedním procesem, takže běžný uživatel nemůže na server provést fork-bomb (a snad ani jiný) DoS útok.

Všechy $HOME adresáře uživatelských účtů jsou uložené na páru zrcadlených disků (gmirror). Toto zrcadlo je připojené pod /mnt/homevol a na něm je adresář home dostupný přes nullfs z /usr/home a přes symlink z /home. Uživatelské účty jsou pak bez rozdílu všechny v podadresáři users.

Všechny uživatelské účty mají (a musí mít) UID v intervalu (1000; 50000). UID < 1000 jsou na FreeBSD vyhrazené pro systémové účty a pro účty aplikací instalovaných z Ports Collection. UID >= 50000 jsou vyhrazené pro servisní účty.

Servisní účty

Vedle adresáře /home/users je adresář services, který obsahuje $HOME adresáře pro různé servisní účty služeb běžících na serveru, např. phpmyadmin, phpsysinfo, strojarna, rvsro a rvsrw atd. Volba specializovaných servisních účtů je kompromisem mezi výraznějším oddělením pomocí chroot nebo BSD jail mechanizmů a spouštěním všech služeb pod jedním uživatelem, ať už www u webových aplikací, či nobody apod. u ostatních aplikací.


Nastavení

Dá se říct, že FreeBSD rozlišuje tři kořeny adresářové struktury. Jedna začíná v /, druhá v /usr a třetí v /usr/local. (Dříve bylo možné potkat i /usr/X11R6, ale tento adresář byl sloučen do /usr/local.) V / jsou nejzákladnější části systému, které jsou nezbytně nutné pro nabootování, včetně /etc.

Soubory v /etc a v /usr/local/etc jsou uchovávány jako pracovní kopie systému správy verzí monotone. Databáze monotone je /root/etc.mtn. Každý, kdo mění konfiguraci, má vlastní klíč, kterým podepisuje změny, které do monotone databáze vkládá.

/etc

Kromě standardních souborů jako je passwd, master.passwd, group, fstab atd. obsahuje i konfigurační soubory typické pro FreeBSD:

  • rc.conf — Obsahuje základní nastavení; IP adresa/maska a brána; firewall; proměnné, které řídí spouštění služeb atd.
  • make.conf — Nastavení vztahující se k Ports Collection, zejména volby pro důležité pro kompilaci a instalaci jednotlivých aplikací.
  • Adresář ssl — Úložiště pro náš kvalifikovaný RSA certifikát a jeho kopie s klíčem pro jednotlivé služby.

/usr/local/etc

Všechny aplikace instalované z Ports Collection instalují soubory do adresářové struktury pod /usr/local. (Opravdu všechny až na MySQL, které instaluje my.cnf do /etc.)

  • Adresář apache22 — Konfigurační soubory Apache 2.2.
  • Adresář syslog-ng — Konfigurace syslog démona. Nepoužíváme standardní BSD syslogd.
  • dovecot.conf — Konfigurace Dovecot IMAP serveru.
  • pound.cfg — Konfigurace SSL proxy pro Apache. Spojení SSL, IPv6 a pojmenované virtuální servery nefunguje v Apache dobře (nebo vůbec), tak používáme oddělený SSL proxy server.
Jmenné prostory

Varianty
Akce