Classroom/A10

Z NTI

[editovat] Učebna A10

Obsah


Tato stránka slouží především pro správce učebny, aby nezapomněl, jak to vlastně všechno funguje a nastaveno jest.

[editovat] Požadavky

  • Přidat do konfigurace dhcp serveru položku hostname.
  • Vyřešit problém s dhcp klientem.
  • Nainstalovat Matlab, Ansys, ArGIS i pod Linux.
  • Vylepšit klonování disků.
  • Povolit VNC na firewallech v Linuxu i ve Windows, aby se konečně dal používat Teacher Control Panel.

[editovat] Počítače

V učebně se nachází celkem 25 počítačů Dell Optiplex 745. 23 počítačů slouží studentům. Jeden počítač je určen pro kantora, druhý počítač je určen jako server pro distribuci obrazů disku a poslední počítač slouží dočasně pro vytváření obrazů disku (kancelář A319).

[editovat] Aktuální rozmístění počítačů v učebně

+-------+
| a1001 |
+-------+

+-------+ +-------+ +-------+ +-------+ +-------+ +-------+
| a1002 | |       | | a1004 | | a1005 | | a1006 | | a1007 |
+-------+ +-------+ +-------+ +-------+ +-------+ +-------+

+-------+ +-------+ +-------+ +-------+ +-------+ +-------+
| a1008 | | a1009 | | a1010 | | a1011 | | a1012 | | a1013 |
+-------+ +-------+ +-------+ +-------+ +-------+ +-------+

+-------+ +-------+ +-------+ +-------+ +-------+ +-------+
| a1014 | | a1015 | | a1016 | | a1017 | |       | | a1019 |
+-------+ +-------+ +-------+ +-------+ +-------+ +-------+

+-------+ +-------+ +-------+ +-------+ +-------+ +-------+
| a1020 | | a1021 | | a1022 | | a1023 | | a1024 | | a1025 |
+-------+ +-------+ +-------+ +-------+ +-------+ +-------+

[editovat] Operační systémy

Na všech počítačích jsou nainstalovány dva operační systémy

  • Microsoft Windows XP Professional
  • Ubuntu Linux 7.10

Po startu systému mají uživatelé možnost si vybrat do jakého operačního systému nabootují. Pokud si nevyberou žádnou volbu, tak po jedné minutě automaticky nabootuje Linux.

[editovat] Ověřování uživatelů

Uživatelé pro přihlášení musí použít své uživatelské jméno a heslo do sítě LIANE. V linuxu se používá autentifikace proti LDAPu. Uživatelé zadávají svoje přihlašovací jméno (bez diakritiky) ve formátu:

jmeno.prijmeni

Ve Windows se pro přihlašování používá Novell Netware Client a uživatelé zadávají svoje přihlašovací jméno (opět bez diakritiky) ve formátu:

jmeno_prijmeni

Po autentifikaci v Novel Netware Clientovi se musí ještě navíc přihlásit přihlásit do Windows pod uživatelem student, který nemá nastaven žádné heslo. Tento uživatel je běžný uživatel bez administrátorských práva a navíc nemá právo změnit svoje heslo.

[editovat] Softwarové vybavení

Seznam softwarového vybavení používaného pro výuku (není kompletní a je nutno ho doplnit).

[editovat] Microsoft Windows

  • NetBeans
  • Eclipse
  • Ansys
  • QuickField
  • ArcGIS
  • Mozilla Firefox
  • Mozilla Thunderbird
  • AVG
  • Blender
  • Gimp
  • Inkscape
  • PSPad
  • GNU GPG for Windows
  • SWI-Prolog
  • DrScheme
  • Web Developer (Firefox plugin)
  • Apache
  • MySQL

[editovat] Linux

  • Mozilla Firefox
  • Mozilla Thunderbird
  • VMWware Player (v /home/centos je obraz s distribucí CentOS)
  • NetBeans
  • GRASS
  • Blender
  • Gimp
  • Inkscape

[editovat] Konfigurace pracovních stanic

[editovat] Rozdělení disků

Výpis programu fdisk:

Zařízení Zavádět   Začátek       Konec    Bloky    Id  Systém
/dev/sda1               1           6       48163+  de  Dell Utility
/dev/sda2               7         134     1028160   83  Linux
/dev/sda3   *         135        6509    51207187+   7  HPFS/NTFS
/dev/sda4            6510       19452   103964647+   f  W95 Rozš. (LBA)
/dev/sda5            6510        9059    20482843+  83  Linux
/dev/sda6            9060        9321     2104483+  82  Linux swap/Solaris
/dev/sda7            9322        9583     2104483+  82  Linux swap/Solaris
/dev/sda8            9584       19452    79272711   83  Linux

Grub je nainstalován do MBR, protože Windows při bootu přepisují příznak pro zavádění na svoji partition.

[editovat] Linux

[editovat] Firewall

Standardní součástí distribuce Ubuntu není žádný firewall, tak bylo nutné vytvořit službu, která bude nastavovat pravidla iptables a ip6tables ručně. Skript /etc/init.d/firewall, který se spouší při startu systému.

#!/bin/bash

### BEGIN INIT INFO
# Provides:          firewall
# Required-Start:    networking
# Required-Stop:     
# Default-Start:     S
# Default-Stop:      
# Short-Description: Start firewall.
### END INIT INFO

FIREWALLDIR=/etc/firewall

PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"

. /lib/lsb/init-functions

firewall_start() {
	log_action_begin_msg "Starting firewall"
	type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 120" || true
	if [ -x $FIREWALLDIR/firewall_start ]
	then
		$FIREWALLDIR/firewall_start
		log_action_end_msg $?
	fi
	type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 15" || true
}

firewall_stop() {
	log_action_begin_msg "Stoping firewall"
	if [ -x $FIREWALLDIR/firewall_stop ]
	then
		$FIREWALLDIR/firewall_stop
		log_action_end_msg $?
	fi
}

firewall_lock() {
	log_action_begin_msg "Locking firewall"
	if [ -x $FIREWALLDIR/firewall_lock ]
	then
		$FIREWALLDIR/firewall_lock
		log_action_end_msg $?
	fi
}

firewall_status() {
	if [ -x $FIREWALLDIR/firewall_status ]
	then
		$FIREWALLDIR/firewall_status
	fi
}

firewall_restart() {
	log_action_begin_msg "Restarting firewall"
	if [ -x $FIREWALLDIR/firewall_start ] && [ -x $FIREWALLDIR/firewall_lock ]
	then
		$FIREWALLDIR/firewall_lock
		lock_result=$?
		sleep 1
		$FIREWALLDIR/firewall_start
		start_result=$?
		if [ $lock_result -eq 0 ] && [ $start_result -eq 0 ]
		then
			log_action_end_msg 0
		else
			log_action_end_msg 1
		fi
	fi
}

case $1 in
	start)
		firewall_start
		;;
	stop)
		firewall_stop
		;;
	restart)
		firewall_restart
		;;
	lock)
		firewall_lock
		;;
	status)
		firewall_status
		;;
	*)
		echo "Usage $0 start|stop|restart|lock|status"
		;;
esac

V adresáři /etc/firewall/ jsou pak nalezení soubory se skripty, které nastavují příslušná pravidla firewallu. Příklad skriptu pro start firewallu:

#!/bin/bash

#variables
if [ -x /sbin/iptables ] && [ -x /sbin/ip6tables ]
then
	iptables=/sbin/iptables
	ip6tables=/sbin/ip6tables
else
	exit 1
fi

#======== IPv4 ========

#cleaning
$iptables -F
$iptables -X

#policy
$iptables -P INPUT DROP
$iptables -P OUTPUT ACCEPT
$iptables -P FORWARD DROP

#accept loopback
$iptables -A INPUT -i lo -j ACCEPT
$iptables -A FORWARD -i lo -j ACCEPT

#setup for INPUT rules
$iptables -A INPUT -p icmp --icmp-type any -j ACCEPT
$iptables -A INPUT -m state --state NEW -s 147.230.0.0/16 -p tcp --dport 22 -j ACCEPT
$iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#security
$iptables -A INPUT -p tcp --syn -j LOG
$iptables -A INPUT -p tcp --syn -j DROP

#======== IPv6 ========

#cleaning
$ip6tables -F
$ip6tables -X

#policy
$ip6tables -P INPUT DROP
$ip6tables -P OUTPUT ACCEPT
$ip6tables -P FORWARD DROP

#accept loopback
$ip6tables -A INPUT -i lo -j ACCEPT
$ip6tables -A FORWARD -i lo -j ACCEPT

#setup for INPUT rules
$ip6tables -A INPUT -p icmpv6 -j ACCEPT
$ip6tables -A INPUT -m state --state NEW -p tcp -s 2001:718:1c01::/48 --dport 22 -j ACCEPT
$ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#security
$ip6tables -A INPUT -p tcp --syn -j LOG
$ip6tables -A INPUT -p tcp --syn -j DROP

exit 0

[editovat] VMWare Player

VMWare Player je používán pro výuku pokročilé konfigurace operačního systému UNIX/Linux. Jako virtuální operační systém se používá CENTOS. Vlastní image virtuálního operačního systému se nachází v adresáři /home/centos/. Do tohoto adresáře musí mít každý uživatel právo vstoupit, číst ho a zapisovat do něj. Pokud uživatel tato práva nemá, tak VMWare PLayer virtuální stroj z toho adresáře nespustí. Výpis z příkazu ls -lha

drwxrwxrwx  2 root        edirectory 4,0K 2007-12-10 15:33 .
drwxr-xr-x 32 root        root       4,0K 2007-12-10 15:46 ..
-rw-rw-rw-  1 root        edirectory 8,5K 2007-12-10 15:33 centos-5.0-i386-server.nvram
-rw-rw-rw-  1 root        edirectory 736M 2007-12-10 15:33 centos-5.0-i386-server-s001.vmdk
-rw-rw-rw-  1 root        edirectory  24M 2007-12-10 15:33 centos-5.0-i386-server-s002.vmdk
-rw-rw-rw-  1 root        edirectory 8,5M 2007-12-10 15:33 centos-5.0-i386-server-s003.vmdk
-rw-rw-rw-  1 root        edirectory 443M 2007-12-10 15:33 centos-5.0-i386-server-s004.vmdk
-rw-rw-rw-  1 root        edirectory  64K 2007-12-10 15:33 centos-5.0-i386-server-s005.vmdk
-rw-rw-rw-  1 root        edirectory  577 2007-12-10 15:32 centos-5.0-i386-server.vmdk
-rw-rw-rw-  1 root        edirectory    0 2007-04-13 14:25 centos-5.0-i386-server.vmsd
-rwxrwxrwx  1 root        edirectory 1,2K 2007-12-10 15:31 centos-5.0-i386-server.vmx
-rw-rw-rw-  1 root        edirectory  277 2007-12-10 15:25 centos-5.0-i386-server.vmxf
-rw-rw-rw-  1 root        edirectory  167 2007-04-13 14:25 README-vmware-image
-rw-r--r--  1 jiri.hnidek edirectory  42K 2007-12-10 15:30 vmware-0.log
-rw-r--r--  1 jiri.hnidek edirectory  47K 2007-12-10 15:27 vmware-1.log
-rw-r--r--  1 jiri.hnidek edirectory  40K 2007-12-10 15:33 vmware.log

Pokud uživatelé tento virtuální stroj poškodí takovým způsobem, že je nepoužítelný, tak je možné tento stroj obnovit ze zálohy, která se nachází v adresáři /home/centos.bak/.

[editovat] Windows

  • Windows jsou nakonfigurovány takovým způsobem, že se každý den v 9 hodin večer vypnou. Toto je užitečné, pokud nějaký student zapomene na posledním bloku vypnout počítač.
  • Ve firewallu jsou povoleny porty 27000 až 27004, protože to vyžaduje licenční manažer ArcGISu.
  • Na všech stanicích je nainstalován a nakonfigurován Teacher Control Panel (bohužel nefunguje, protože tomu pravděpodobně brání firewall na koncových stanicích)

[editovat] Klonování disků

V současné době na klonování disků používám livecd Clonezilla, které umožňuje jednoduše uložit celý obraz disku pomocí nástroje partimage na vzdálený souborový systém připojený pomocí NFS, sshd, apod. Nahrání obrazu disku na server je poměrně jednoduché, ale rozkopírování na stanice je velmi zdlouhavé, protože musím s CD obíhat celou učebnu a u každého počítače nastavovat z jakého serveru se má obraz disku nahrát a potvrzovat spoustu věcí.

Když mám čas, tak pracuji na zlepšováku, který je postaven na ltsp projektu, udpcastu a výše zmiňovaném programu partimage. Celé mé plány hatí vepři boubelatí a hlavně program ipconfig z initrd, který zablokuje celý proces startování bootu ze sítě.

[editovat] Bezdiskový boot stanic

[editovat] Server