====== Skoleni Router, Firewall, Samba, VPN ====== Download and install the epel-release package from the EPEL repository, 6.8 is the version at this date but it can be different later, check the name of the file. yum install wget wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6.8.noarch.rpm yum --enablerepo epel groupinstall Xfce ===== Zakladni prace se sitovymi interfaces ===== Nastavte ONBOOT na yes a NM_CONTROLLED na no ''/etc/sysconfig/network-scripts/ifcfg-eth0'' DEVICE=eth0 HWADDR=00:0C:29:46:73:F1 TYPE=Ethernet UUID=8e657a0a-96ed-412e-8e88-d6017267d83d ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=dhcp Dva druhy vypisu vsech interfaces ifconfig -a ip a Pozor, vypis se lisi pokud pridate vice IP adres na jeden interface pres "ip a a 1.2.3.4/24 dev eth0", pak druha ip nebude pres ifconfig videt. Je lepsi pouzivat na vypis ''ip a''. Vystup ifconfig je vsak pro me oko prehlednejsi. Shozeni a nahozeni interface 1. uplny restart site /etc/init.d/network restart service network restart 2. restart jen jednoho interface ifdown eth0 ifup eth0 ===== Firewall ===== Vypsani firewallu INPUT, OUTPUT, FORWARD iptables -L -n Vypsani firewallu nat a raw iptables -t nat -L -n Smazani obsahu vsech //chainu// firewallu, nastavit politiku na ACCEPT a smazani vsech //chainu// iptables -F iptables -P INPUT ACCEPT iptables -X ===== Budujeme predradny firewall pro tri obchody ===== alza czc starlab ===== je cas na tcpdump====== yum install tcpdump ===== Pridani tri novych chainu pravidel ===== iptables -N starlab iptables -N alza iptables -N czc iptables -A INPUT -d 10.0.1.2 -j alza iptables -A INPUT -d 10.0.1.3 -j czc iptables -A INPUT -d 10.0.1.4 -j starlab Nezapomenout zapnout forwarding v kernelu a jeste ACCEPT v iptables FORWARD echo 1 > /proc/sys/net/ipv4/ip_forward iptabes -F iptables -P FORWARD ACCEPT Lehky test jestli jsou vsechny ip adresy aktivni for i in 16 17 18 19 20 21 22; do ping -c1 10.0.1.$i 1>/dev/null || echo Chyba $i; done Hezky podrobny manual o iptables napsal pan Oscar Andreasson Priklad natu pro firewall/router, ktery smeruje sluzbu www (port 80) na jinou ip iptables -t nat -A POSTROUTING -o eth1/pozor nekdy eth0/ -j MASQUERADE iptables -t nat-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.1.18 Priklad pouziti //tcpdump// tcpdump -i eth0 -n -nn not port 22 tcpdump -i eth0 -n tcp and port 80 -s 1500 -X komu nestaci //tcpdump// muze pouzit //wireshark//. ====== MRTG - grafy toku ====== yum install mrtg yum install net-snmp Konfiguracni soubor ''/etc/snmp/snmpd.conf''. Upozorneni - tento soubor zpristupnuje prilis mnoho informaci o systemu. Pro ostry provoz je treba vyexportovat jen jednotlive uzitecne informace a jeste omezit v iptables pristup. V pripade localhosta muzete nechat poslouchat snmp demona jen na localhostu. # sec.name source community com2sec readonly default public # GrupnSex.Name sec.model sec.name group MyROGroup v1 readonly group MyROGroup v2c readonly group MyROGroup usm readonly # incl/excl subtree mask view all included .1 80 # context sec.model sec.level match read write notif access MyROGroup "" any noauth exact all none none Vytvorime konfiguraci pro mrtg pomoci utility cfgmaker public@localhost a vystup presmeerujeme do ''/etc/mrtg/mrtg.cfg'' cfgmaker public@localhost > /etc/mrtg/mrtg.cfg Zvolime spravne cesty a trochu lepsi options # for UNIX WorkDir: /var/www/mrtg/ # to get bits instead of bytes and graphs growing to the right Options[_]: growright, bits cron je obvykle (centos i debian) nastaveny spravne instalacnim balikem. a nastavime apache. ''/etc/httpd/conf.d/mrtg.conf'' staci jedina radka alias /mrtg /var/www/mrtg A vygenerujeme index.html podle configu indexmaker /etc/mrtg/mrtg.cfg > /var/www/mrtg/index.html ===== High Availability HA Router ===== VRRP nebo UCARP Instalace yum install http://mirror.hosting90.cz/epel/6/x86_64/epel-release-6-8.noarch.rpm yum install ucarp skripty ''up.sh'' a ''down.sh'', uvadim priklad jen pro UP #!/bin/sh ip a a 192.168.5.166/32 dev eth0 ip a a 10.0.1.166/32 dev eth1 #nezapomenout na arping Dlouha prikazova radka ucarp --interface eth0 --srcip 192.168.5.16 --vhid=16 --pass=dalibor \ --addr=192.168.5.166 --preempt --shutdown \ --upscript=/etc/ucarp/up.sh \ --downscript=/etc/ucarp/down.sh ====== OpenVPN a Easy RSA ====== yum install openvpn easy-rsa Nasledujici se bude odehravat v adresari ''/usr/share/easy-rsa/2.0'' [root@router-bck 2.0]# . ./vars NOTE: If you run ./clean-all, I will be doing a rm -rf on /usr/share/easy-rsa/2.0/keys [root@router-bck 2.0]# ./clean-all [root@router-bck 2.0]# ./build-ca Priklad konfigurace klienta '/etc/openvpn/client.conf'' client dev tun proto udp remote 192.168.5.38 1194 ; stoji za komentar ;resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert ten-vas.crt key taky-ten-vas.key verb 3 Konfigurace serveru ''/etc/openvpn/server.conf'' port 1194 proto udp dev tun0 ca ca.crt cert dalibor.crt key dalibor.key dh dh2048.pem server 10.88.88.0 255.255.255.0 # okomentovat ifconfig-pool-persist ipp.txt route 10.0.1.0 255.255.255.0 # Then create a file ccd/Thelonious with this line: # okomentovat #push "route 192.168.182.0 255.255.255.0" #push "redirect-gateway" #push "dhcp-option DNS 192.168.183.1" #push "dhcp-option WINS 10.8.0.1" #client-config-dir ccd #okomentovat client-to-client keepalive 10 120 #tls-auth ta.key 0 # secret file #cipher BF-CBC # Blowfish #cipher AES-128-CBC # AES #cipher DES-EDE3-CBC # Triple-DES # pozor na mikrotiky! :-D #comp-lzo # compresion ;max-clients 100 status openvpn-status.log ====== Samba Server ====== Priklad jednoducheho konfiguracniho souboru ''/etc/samba/smb.conf'' [global] workgroup = MYGROUP server string = Samba Server Version %v ; netbios name = MYSERVER log file = /var/log/samba/log.%m max log size = 50 security = user passdb backend = tdbsam # the login script name depends on the machine name ; logon script = %m.bat # the login script name depends on the unix user used ; logon script = %u.bat ; logon path = \\%L\Profiles\%u # disables profiles support by specifing an empty path ; logon path = [homes] comment = Home Directories browseable = no writable = yes [pub] path=/srv/samba-public writable = yes readonly = no browsable = yes Pridejte uzivatele uziv adduser uziv pdbedit -a uziv Priklad vytvoreni slozky Kos (Trash) vfs object = recycle:recycle recycle:subdir_mode = 0777 recycle:repository = .recycle recycle:keeptree = Yes recycle:touch = Yes recycle:versions = No recycle:maxsize = 100000000 ; 100 metric million bytes