├── .gitignore ├── BGP ├── BGP-Anycast.imn ├── BGP-Anycast_custom-config.imn ├── BGP_custom-config.imn ├── README.md └── test.sh ├── COPYRIGHT ├── DHCP ├── DHCP.imn ├── DHCPserver.dhcpd.conf ├── README ├── README.short ├── start_dhcp └── test.sh ├── DHCP6+RSOL ├── DHCP6.imn ├── dhcp_radvd.conf ├── dhcp_rtadvd.conf ├── dhcpd6.conf ├── radvd.conf ├── rtadvd.conf ├── start_dhcpd6 ├── start_stateless └── test.sh ├── DMZ+DNS+Mail+WEB ├── DNS_files │ ├── aRootServer │ │ ├── in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── rndc.conf │ │ └── root │ ├── bRootServer │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── rndc.conf │ ├── cRootServer │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── rndc.conf │ ├── dnsCom │ │ ├── com │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── rndc.conf │ ├── dnsFer │ │ ├── fer │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── rndc.conf │ ├── dnsHr │ │ ├── hr │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── rndc.conf │ ├── dnsMM │ │ ├── 15.in-addr.arpa │ │ ├── localhost.rev │ │ ├── mm │ │ ├── named.conf │ │ ├── named.root │ │ └── rndc.conf │ ├── dnsOrg │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ ├── org │ │ └── rndc.conf │ ├── dnsTel │ │ ├── 20.in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ ├── rndc.conf │ │ └── tel │ ├── dnsZpm │ │ ├── 30.in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ ├── rndc.conf │ │ └── zpm │ ├── hr2 │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── rndc.conf │ ├── resolv.dmzhosts │ ├── resolv.mm │ ├── resolv.pc │ ├── resolv.smtpMM │ ├── resolv.www │ ├── resolv.wwwMM │ ├── resolv.zpmMail │ └── rndc.key ├── FW_files │ ├── FW-FreeBSD.fw │ ├── FW-Linux.fw │ ├── FW.fwb │ ├── FWint-FreeBSD.sh │ ├── FWint-Linux.fw │ ├── FWint.fwb │ └── FWint.sh ├── Mail_files │ ├── cone │ │ ├── cone.lan │ │ │ ├── addressbook │ │ │ └── conerc │ │ ├── cone.mm │ │ │ ├── addressbook │ │ │ └── conerc │ │ ├── cone.tel │ │ │ ├── addressbook │ │ │ └── conerc │ │ ├── cone.zpm │ │ │ └── conerc │ │ ├── linux-cone.lan │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ │ ├── linux-cone.mm │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ │ ├── linux-cone.tel │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ │ └── linux-cone.zpm │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ ├── dovecot │ │ └── 10-auth.conf │ ├── postfix.LAN-SMTP │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf │ ├── postfix.smtpMM │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf │ ├── postfix.www │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf │ └── postfix.zpmMail │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf ├── NETWORK.imn ├── PREREQUISITES ├── README ├── README_DNS+Mail+WEB ├── WEB_files │ ├── www.lighttpd.conf │ ├── www.www │ │ ├── form.html │ │ ├── freebsd.gif │ │ ├── index.html │ │ └── lesson2.pl │ ├── www.wwwMM │ │ ├── form.html │ │ ├── freebsd.gif │ │ ├── index.html │ │ ├── lesson2.pl │ │ └── powerlogo.gif │ ├── www.zpmMail │ │ ├── index.html │ │ └── powerlogo.gif │ ├── wwwMM.lighttpd.conf │ └── zpmMail.lighttpd.conf ├── getMail ├── start_all ├── start_dns ├── start_fw ├── start_http ├── start_mail ├── test.sh └── test_fw.sh ├── DNS+Mail+WEB ├── DNS_files │ ├── aRootServer │ │ ├── in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── root │ ├── bRootServer │ │ ├── localhost.rev │ │ └── named.conf │ ├── cRootServer │ │ ├── localhost.rev │ │ └── named.conf │ ├── dnsCom │ │ ├── com │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── named.root │ ├── dnsFer │ │ ├── fer │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── named.root │ ├── dnsHr │ │ ├── hr │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── named.root │ ├── dnsOrg │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── org │ ├── dnsTel │ │ ├── 20.in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── tel │ ├── dnsZpm │ │ ├── 30.in-addr.arpa │ │ ├── localhost.rev │ │ ├── named.conf │ │ ├── named.root │ │ └── zpm │ ├── hr2 │ │ ├── localhost.rev │ │ ├── named.conf │ │ └── named.root │ ├── resolv.mm │ ├── resolv.pc │ ├── resolv.www │ └── resolv.zpmMail ├── Mail_files │ ├── cone │ │ ├── cone.tel │ │ │ ├── addressbook │ │ │ └── conerc │ │ ├── cone.zpm │ │ │ └── conerc │ │ ├── linux-cone.tel │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ │ └── linux-cone.zpm │ │ │ ├── addressbook │ │ │ ├── cacherc │ │ │ └── conerc │ ├── dovecot │ │ └── 10-auth.conf │ ├── postfix.www │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf │ └── postfix.zpmMail │ │ ├── aliases │ │ ├── linux-main.cf │ │ ├── local-host-names │ │ ├── main.cf │ │ └── master.cf ├── NETWORK.imn ├── README ├── WEB_files │ ├── www.lighttpd.conf │ ├── www.www │ │ ├── form.html │ │ ├── freebsd.gif │ │ ├── index.html │ │ └── lesson2.pl │ ├── www.zpmMail │ │ ├── index.html │ │ └── powerlogo.gif │ └── zpmMail.lighttpd.conf ├── getMail ├── start_dns ├── start_http ├── start_mail └── test.sh ├── IS-IS ├── IS-IS.imn ├── README.md └── test.sh ├── Makefile ├── OSPF ├── OSPF.imn ├── OSPF1.imn ├── OSPF_RFC-custom_config.imn ├── OSPF_RFC.imn ├── README └── test.sh ├── Ping ├── README ├── ping.imn └── test.sh ├── README.md ├── RIP ├── README ├── RIP.imn ├── RIP1.imn └── test.sh ├── Traceroute ├── README ├── test.sh └── traceroute.imn ├── benchmark ├── benchmark.sh ├── h-r-h.imn ├── h-s-h.imn ├── p-3r-p.imn ├── p-p.imn ├── p-r-p.imn ├── p-s-p.imn └── pp.imn ├── common ├── procedures.sh └── start_functions.sh ├── functional_tests ├── empty_ifaces │ ├── empty.imn │ └── test.sh ├── extelem │ ├── extelem.imn │ ├── extelem_directlink.imn │ └── test.sh ├── rj45 │ ├── rj45.imn │ ├── rj45_directlink.imn │ └── test.sh └── rj45_vlan │ ├── rj45vlan.imn │ ├── rj45vlan_directlink.imn │ └── test.sh ├── gif ├── gif.imn ├── start_gif.sh └── test.sh ├── ipsec44 ├── certs ├── ipsec44.imn ├── moon ├── moon44_ipsec.conf ├── start44.sh ├── sun ├── sun44_ipsec.conf └── test.sh ├── ipsec46 ├── certs ├── ipsec46.imn ├── moon ├── moon46_ipsec.conf ├── start46.sh ├── sun ├── sun46_ipsec.conf └── test.sh ├── ipsec64 ├── certs ├── ipsec64.imn ├── moon ├── moon64_ipsec.conf ├── start64.sh ├── sun ├── sun64_ipsec.conf └── test.sh ├── ipsec66 ├── certs ├── ipsec66.imn ├── moon ├── moon66_ipsec.conf ├── start66.sh ├── sun ├── sun66_ipsec.conf └── test.sh ├── ipsec_common ├── certs │ ├── Makefile │ ├── make_certificates.sh │ └── openssl.cnf ├── moon │ ├── ipsec.d │ │ ├── cacerts │ │ │ └── strongswanCert.pem │ │ ├── certs │ │ │ └── moonCert.pem │ │ └── private │ │ │ └── moonKey.pem │ ├── ipsec.secrets │ └── strongswan.conf ├── nat-ipsec │ ├── moon │ │ ├── ipsec.conf │ │ ├── ipsec.d │ │ │ ├── cacerts │ │ │ │ └── strongswanCert.pem │ │ │ ├── certs │ │ │ │ └── moonCert.pem │ │ │ └── private │ │ │ │ └── moonKey.pem │ │ ├── ipsec.secrets │ │ └── strongswan.conf │ ├── nat-ipsec64.imn │ ├── nat.rules │ ├── nat.rules.linux │ ├── start_ipsec.sh │ ├── start_nat.sh │ ├── sun │ │ ├── ipsec.conf │ │ ├── ipsec.d │ │ │ ├── cacerts │ │ │ │ └── strongswanCert.pem │ │ │ ├── certs │ │ │ │ └── sunCert.pem │ │ │ └── private │ │ │ │ └── sunKey.pem │ │ ├── ipsec.secrets │ │ └── strongswan.conf │ └── test.sh └── sun │ ├── ipsec.d │ ├── cacerts │ │ └── strongswanCert.pem │ ├── certs │ │ └── sunCert.pem │ └── private │ │ └── sunKey.pem │ ├── ipsec.secrets │ └── strongswan.conf ├── services ├── services.imn └── test.sh └── testAll.sh /.gitignore: -------------------------------------------------------------------------------- 1 | *.swp 2 | TESTRESULTS* 3 | -------------------------------------------------------------------------------- /BGP/README.md: -------------------------------------------------------------------------------- 1 | # BGP 2 | BGP routing protocol examples 3 | 4 | #### BGP_custom-config.imn 5 | In this example "Custom Config" feature is used for BGP router's configuration. 6 | 7 | Double click on router or select "Configure" from right-click popup menu: 8 | - Custom startup config is "Enabled" 9 | - Selected custom config is "conf1" 10 | - Click on "Editor" button 11 | 12 | (configuration is taken from: "Configuring and Testing Border Gateway 13 | Protocol (BGP) on Basis of Cisco Hardware and Linux Gentoo with Quagga 14 | Package (Zebra)": http://hosteddocs.ittoolbox.com/ke032707.pdf) 15 | 16 | #### BGP-Anycast.imn 17 | This is the example of BGP router configuration inserted directly in .imn file. 18 | ``` 19 | vi BGP-Anycast.imn 20 | ``` 21 | In this example BGP Anycast routing is demonstrated: 22 | - IP address 8.8.8.8 is assigned to WEB1 and WEB2. 23 | - Client1 is redirected to WEB1 and Client2 is redirected to WEB2. 24 | - If the link between Backbone1 and DC2 is configured to have BER=1 (or loss=100% for Linux), than after some time the traffic from Client2 is redirected to WEB1. 25 | 26 | -------------------------------------------------------------------------------- /COPYRIGHT: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright 2007-2015 University of Zagreb, Croatia. 3 | # 4 | # Redistribution and use in source and binary forms, with or without 5 | # modification, are permitted provided that the following conditions 6 | # are met: 7 | # 1. Redistributions of source code must retain the above copyright 8 | # notice, this list of conditions and the following disclaimer. 9 | # 2. Redistributions in binary form must reproduce the above copyright 10 | # notice, this list of conditions and the following disclaimer in the 11 | # documentation and/or other materials provided with the distribution. 12 | # 13 | # THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14 | # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16 | # ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE 17 | # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19 | # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20 | # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21 | # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22 | # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23 | # SUCH DAMAGE. 24 | # 25 | -------------------------------------------------------------------------------- /DHCP/DHCPserver.dhcpd.conf: -------------------------------------------------------------------------------- 1 | # dhcpd.conf na DHCP serveru dhcp1 2 | # 3 | option domain-name "imunes.net"; 4 | option domain-name-servers 10.0.0.53, 10.0.0.54; 5 | 6 | 7 | default-lease-time 600; 8 | max-lease-time 7200; 9 | authoritative; 10 | log-facility local7; 11 | lease-file-name "/var/db/imunes-dhcpd.leases"; 12 | 13 | subnet 10.0.0.0 netmask 255.255.255.0 { 14 | range 10.0.0.10 10.0.0.20; 15 | option routers 10.0.0.7; 16 | } 17 | 18 | host fixed { 19 | hardware ethernet 42:00:aa:11:11:11; 20 | fixed-address 10.0.0.30; 21 | } 22 | 23 | -------------------------------------------------------------------------------- /DHCP/README: -------------------------------------------------------------------------------- 1 | 2 | The purpose of this example is to show how DHCP server works. 3 | 4 | Start the simulation. 5 | 6 | Go to the console of the main machine (right-click on the background and select xterm). 7 | From the DHCP directory (where this file is) start the script "start_dhcp": 8 | 9 | # ./start_dhcp 10 | 11 | This script sets up the clients and the server. 12 | 13 | Go back to the Imunes GUI and start shell on the host pc3. Start the Ethereal (Wireshark) on pc3 and start capturing, with the "Update traffic in real time" option checked. 14 | 15 | In the pc3 shell check the pc3 IP address: 16 | 17 | pc3# ifconfig -a 18 | 19 | Request IP address for the eth0 interface: 20 | 21 | pc3# dhclient eth0 22 | 23 | Now, check the address: 24 | 25 | pc3# ifconfig -a 26 | 27 | Stop capturing traffic. Check the packet trace. 28 | 29 | First, check the DHCP release trace. What messages are transmitted? 30 | 31 | Now, check how the client gets the IP address from the DHCP server. Identify those packets! 32 | 33 | 1. DHCP Discover 34 | 35 | - sent by pc3 with the source IP 0.0.0.0 (remember, pc3 want's new address, so uses 0.0.0.0 as the source, destination address is broadcast - pc3 has no idea who the DHCP server is 36 | 37 | 2. DHCP Offer 38 | 39 | - DHCP server sends its offer, offering IP address, DNS servers, router, subnet mask 40 | 41 | 3. DHCP Request 42 | 43 | - pc3 sends broadcast requesting the offered address 44 | 45 | 4. DHCP ACK 46 | 47 | - DHCPserver approves the request for the address, defines the lease time (10 minutes in this example) and sends default router and DNS servers. 48 | 49 | 50 | -------------------------------------------------------------------------------- /DHCP/README.short: -------------------------------------------------------------------------------- 1 | #################### 2 | # DHCP server/client 3 | #################### 4 | 5 | Start imunes: 6 | 7 | # imunes DHCP.imn & 8 | Select Experiment -> Execute 9 | 10 | Start dhcp server and setup clients: 11 | # ./start_dhcp 12 | 13 | Right-click on pc3 (to start xterm on that host) 14 | Check IP address: 15 | pc3# ifconfig -a 16 | 17 | Release address: 18 | pc3# dhclient -r 19 | 20 | Request IP address: 21 | pc# dhclient eth0 22 | pc# ifconfig -a 23 | 24 | To look at the traffic right-click on selected link. 25 | After a few moments Ethereal will be started! 26 | 27 | -------------------------------------------------------------------------------- /DHCP/start_dhcp: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | dhcp_server="DHCPserver" 6 | hosts="FIX PC1 PC2" 7 | 8 | if [ $# -eq 1 ]; then 9 | eid=$1 10 | isEidRunning $eid 11 | else 12 | eid=`isNodeRunning $dhcp_server` 13 | if [ $? -ne 0 ]; then 14 | exit 1 15 | fi 16 | fi 17 | 18 | 19 | if isOSfreebsd; then 20 | hasPackage "$dhcp_server" "$eid" '^isc-dhcp.*-server' 21 | fi 22 | 23 | echo "Configuring server:" 24 | 25 | # Stop dhcpd on DHCP server 26 | himage ${dhcp_server}@${eid} killall -9 dhcpd > /dev/null 2>&1 27 | # and start it ... 28 | 29 | hcp DHCPserver.dhcpd.conf ${dhcp_server}@${eid}:/tmp 30 | himage ${dhcp_server}@${eid} mkdir -p /var/db/ 31 | himage ${dhcp_server}@${eid} touch /var/db/imunes-dhcpd.leases 32 | if isOSlinux; then 33 | himage -b ${dhcp_server}@${eid} dhcpd -d -cf /tmp/DHCPserver.dhcpd.conf & 34 | else 35 | himage ${dhcp_server}@${eid} dhcpd -d -cf /tmp/DHCPserver.dhcpd.conf >/dev/null 2>&1 & 36 | fi 37 | 38 | echo 39 | echo Configuring clients: 40 | for i in $hosts 41 | do 42 | isNodeRunning $i $eid 43 | if isOSlinux; then 44 | himage ${i}@${eid} dhclient -v -1 eth0 45 | else 46 | himage ${i}@${eid} dhclient eth0 47 | fi 48 | himage ${i}@${eid} ifconfig eth0 | grep "inet " 49 | done 50 | -------------------------------------------------------------------------------- /DHCP/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | pcs="FIX PC1 PC2" 6 | err=0 7 | legacy="" 8 | if test -n "$LEGACY"; then 9 | legacy=" -l" 10 | fi 11 | 12 | eid=`imunes$legacy -b DHCP.imn | awk '/Experiment/{print $4; exit}'` 13 | startCheck "$eid" 14 | 15 | ./start_dhcp $eid 16 | if [ $? -ne 0 ]; then 17 | echo "********** START_DHCP ERROR **********" 18 | pcs="" 19 | err=1 20 | fi 21 | 22 | for pc in $pcs; do 23 | pingCheck $pc@$eid 10.0.2.2 24 | err=$? 25 | if [ $err -ne 0 ]; then 26 | break 27 | fi 28 | 29 | ip_addr=`getNodeIP $pc@$eid eth0` 30 | echo $ip_addr | grep -q "10.0.0." 31 | if [ $? -ne 0 ]; then 32 | echo "********** IFCONFIG ERROR **********" 33 | err=1 34 | break 35 | fi 36 | done 37 | 38 | if [ $err -eq 0 ]; then 39 | netDump PC3@$eid eth0 'port 67 and not arp or port 68 and not arp' 40 | if [ $? -eq 0 ]; then 41 | sleep 2 42 | himage PC3@$eid dhclient eth0 43 | if [ $? -eq 0 ]; then 44 | sleep 2 45 | readDump PC3@$eid eth0 46 | err=$? 47 | else 48 | echo "********** DHCLIENT ERROR **********" 49 | err=1 50 | fi 51 | else 52 | err=1 53 | fi 54 | fi 55 | 56 | imunes$legacy -b -e $eid 57 | 58 | thereWereErrors $err 59 | 60 | -------------------------------------------------------------------------------- /DHCP6+RSOL/dhcp_radvd.conf: -------------------------------------------------------------------------------- 1 | interface eth1 { 2 | AdvSendAdvert on; 3 | MinRtrAdvInterval 3; 4 | MaxRtrAdvInterval 10; 5 | }; 6 | -------------------------------------------------------------------------------- /DHCP6+RSOL/dhcp_rtadvd.conf: -------------------------------------------------------------------------------- 1 | eth1: 2 | -------------------------------------------------------------------------------- /DHCP6+RSOL/dhcpd6.conf: -------------------------------------------------------------------------------- 1 | # Server configuration file example for DHCPv6 2 | authoritative; 3 | 4 | # The path of the lease file 5 | dhcpv6-lease-file-name "/var/db/dhcpd6.leases"; 6 | 7 | host otherclient { 8 | hardware ethernet 42:aa:bb:00:aa:bb; 9 | 10 | fixed-address6 fc00:3::50; 11 | } 12 | 13 | # The subnet where the server is attached 14 | # (i.e., the server has an address in this subnet) 15 | subnet6 fc00:3::/64 { 16 | range6 fc00:3::100 fc00:3::109; 17 | } -------------------------------------------------------------------------------- /DHCP6+RSOL/radvd.conf: -------------------------------------------------------------------------------- 1 | interface eth1 { 2 | AdvSendAdvert on; 3 | MinRtrAdvInterval 3; 4 | MaxRtrAdvInterval 10; 5 | prefix fc00:3::/64 { 6 | AdvOnLink on; 7 | AdvAutonomous on; 8 | AdvRouterAddr on; 9 | }; 10 | }; 11 | -------------------------------------------------------------------------------- /DHCP6+RSOL/rtadvd.conf: -------------------------------------------------------------------------------- 1 | eth1:\ 2 | :addr="fc00:3::":prefixlen#64: 3 | -------------------------------------------------------------------------------- /DHCP6+RSOL/start_dhcpd6: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | router="R1" 6 | dhcp_server="DHCP6server" 7 | pcs="FIX PC1 PC2" 8 | 9 | if [ $# -eq 1 ]; then 10 | eid=$1 11 | isEidRunning $eid 12 | else 13 | eid=`isNodeRunning $dhcp_server` 14 | if [ $? -ne 0 ]; then 15 | exit 1 16 | fi 17 | fi 18 | 19 | if isOSfreebsd; then 20 | comm="rtadvd" 21 | hasPackage "$dhcp_server" "$eid" '^isc-dhcp.*-server' 22 | hasPackage "$dhcp_server" "$eid" '^isc-dhcp.*-client' 23 | else 24 | comm="radvd" 25 | fi 26 | 27 | echo "Configuring router:" 28 | hcp dhcp_$comm.conf ${router}@${eid}:/etc/$comm.conf 29 | himage ${router}@${eid} killall $comm 30 | himage -b ${router}@${eid} $comm eth1 31 | 32 | echo "Configuring server:" 33 | himage ${dhcp_server}@${eid} mkdir -p /var/db 34 | himage ${dhcp_server}@${eid} touch /var/db/dhcpd6.leases 35 | himage ${dhcp_server}@${eid} killall dhcpd 36 | 37 | if isOSfreebsd; then 38 | hcp dhcpd6.conf ${dhcp_server}@${eid}:/usr/local/etc/dhcpd6.conf 39 | himage ${dhcp_server}@${eid} service isc-dhcpd6 onerestart 40 | else 41 | hcp dhcpd6.conf ${dhcp_server}@${eid}:/etc/dhcp/dhcpd.conf 42 | himage ${dhcp_server}@${eid} touch /var/lib/dhcp/dhcpd6.leases 43 | himage -b ${dhcp_server}@${eid} dhcpd -6 44 | fi 45 | 46 | sleep 3 47 | echo "Configuring clients:" 48 | for pc in $pcs; do 49 | echo "++++++ $pc ++++++" 50 | himage ${pc}@${eid} killall dhclient 51 | if isOSfreebsd; then 52 | pre="/usr/local/sbin/" 53 | himage ${pc}@${eid} ifconfig eth0 inet6 -ifdisabled 54 | himage ${pc}@${eid} ifconfig eth0 inet6 accept_rtadv 55 | himage ${pc}@${eid} rtsol -D eth0 56 | fi 57 | himage ${pc}@${eid} ${pre}dhclient -6 -v -cf /dev/null eth0 58 | done 59 | -------------------------------------------------------------------------------- /DHCP6+RSOL/start_stateless: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | router="R1" 6 | dhcp_server="DHCP6server" 7 | pcs="FIX PC1 PC2" 8 | 9 | if [ $# -eq 1 ]; then 10 | eid=$1 11 | isEidRunning $eid 12 | else 13 | eid=`isNodeRunning $dhcp_server` 14 | if [ $? -ne 0 ]; then 15 | exit 1 16 | fi 17 | fi 18 | 19 | if isOSfreebsd; then 20 | comm="rtadvd" 21 | hasPackage "$router" "$eid" '^isc-dhcp.*-server' 22 | hasPackage "$router" "$eid" '^isc-dhcp.*-client' 23 | else 24 | comm="radvd" 25 | fi 26 | 27 | echo "Configuring server:" 28 | hcp $comm.conf ${router}@${eid}:/etc 29 | himage ${router}@${eid} killall $comm 30 | himage -b ${router}@${eid} $comm eth1 31 | 32 | sleep 1 33 | echo "Configuring clients:" 34 | for pc in $pcs; do 35 | echo "++++++ $pc ++++++" 36 | if isOSfreebsd; then 37 | himage ${pc}@${eid} ifconfig eth0 inet6 -ifdisabled 38 | himage ${pc}@${eid} ifconfig eth0 inet6 accept_rtadv 39 | himage ${pc}@${eid} rtsol -D eth0 40 | else 41 | himage ${pc}@${eid} rdisc6 eth0 42 | fi 43 | done 44 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/aRootServer/in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS aRootServer. 11 | @ IN NS bRootServer. 12 | @ IN NS cRootServer. 13 | 14 | 20.in-addr.arpa. IN NS dnsTel.tel.fer.hr. 15 | dnsTel.tel.fer.hr. IN A 20.0.0.2 16 | 17 | 30.in-addr.arpa. IN NS dnsZpm.zpm.fer.hr. 18 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 19 | 20 | 2.0.0.1.in-addr.arpa. IN PTR aRootServer. 21 | 2.0.0.2.in-addr.arpa. IN PTR bRootServer. 22 | 2.0.0.3.in-addr.arpa. IN PTR cRootServer. 23 | 24 | 2.0.0.4.in-addr.arpa. IN PTR hr2.com. 25 | 2.0.0.5.in-addr.arpa. IN PTR dnsCom.com. 26 | 2.0.0.6.in-addr.arpa. IN PTR dnsOrg.Org. 27 | 2.0.0.7.in-addr.arpa. IN PTR dnsHr.hr. 28 | 29 | 14.13.12.11.in-addr.arpa. IN PTR dnsNesto.nesto.com. 30 | 18.17.16.15.in-addr.arpa. IN PTR dnsMM.mm.com. 31 | 2.0.0.8.in-addr.arpa. IN PTR dnsFer.fer.hr. 32 | 114.113.112.111.in-addr.arpa. IN PTR dnsBlaBla.blabla.org. 33 | 34 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/aRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/aRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type master; 20 | file "root"; 21 | allow-transfer {2.0.0.2; 3.0.0.2;}; 22 | }; 23 | 24 | zone "0.0.127.IN-ADDR.ARPA" { 25 | type master; 26 | file "localhost.rev"; 27 | }; 28 | 29 | zone "IN-ADDR.ARPA" { 30 | type master; 31 | file "in-addr.arpa"; 32 | allow-transfer {2.0.0.2; 3.0.0.2;}; 33 | }; 34 | 35 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/aRootServer/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/aRootServer/root: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS aRootServer. 11 | @ IN NS bRootServer. 12 | @ IN NS cRootServer. 13 | aRootServer. IN A 1.0.0.2 14 | bRootServer. IN A 2.0.0.2 15 | cRootServer. IN A 3.0.0.2 16 | 17 | com. IN NS dnsCom.com. 18 | dnsCom.com. IN A 5.0.0.2 19 | 20 | org. IN NS dnsOrg.org. 21 | dnsOrg.Org. IN A 6.0.0.2 22 | 23 | hr. IN NS dnsHr.hr. 24 | hr. IN NS hr2.com. 25 | dnsHr.hr. IN A 7.0.0.2 26 | hr2.com. IN A 4.0.0.2 27 | 28 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/bRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/bRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type slave; 20 | masters { 1.0.0.2; }; 21 | allow-notify { 1.0.0.2; 3.0.0.2;}; 22 | file "root"; 23 | }; 24 | 25 | zone "0.0.127.IN-ADDR.ARPA" { 26 | type master; 27 | file "localhost.rev"; 28 | }; 29 | 30 | zone "IN-ADDR.ARPA" { 31 | type slave; 32 | masters { 1.0.0.2; }; 33 | allow-notify { 1.0.0.2; 3.0.0.2;}; 34 | file "in-addr.arpa"; 35 | }; 36 | 37 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/bRootServer/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/cRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/cRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type slave; 20 | masters { 1.0.0.2; }; 21 | allow-notify { 1.0.0.2; 2.0.0.2; }; 22 | file "root"; 23 | }; 24 | 25 | zone "0.0.127.IN-ADDR.ARPA" { 26 | type master; 27 | file "localhost.rev"; 28 | }; 29 | 30 | zone "IN-ADDR.ARPA" { 31 | type slave; 32 | masters { 1.0.0.2; }; 33 | allow-notify { 1.0.0.2; 2.0.0.2; }; 34 | file "in-addr.arpa"; 35 | }; 36 | 37 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/cRootServer/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsCom/com: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsCom.com. root.dnsCom.com. ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsCom.com. 13 | dnsCom.com. IN A 5.0.0.2 14 | 15 | hr2.com. IN A 4.0.0.2 16 | 17 | nesto.com. IN NS dnsNesto.nesto.com. 18 | dnsNesto.nesto.com. IN A 11.12.13.14 19 | 20 | mm.com. IN NS dnsMM.mm.com. 21 | dnsMM.mm.com. IN A 15.16.17.18 22 | 23 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsCom/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsCom/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "com" { 24 | type master; 25 | file "com"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsCom/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsCom/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsFer/fer: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsFer.fer.hr. root.dnsFer.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsFer.fer.hr. 13 | dnsFer.fer.hr. IN A 8.0.0.2 14 | 15 | tel.fer.hr. IN NS dnsTel.tel.fer.hr. 16 | dnsTel.tel.fer.hr. IN A 20.0.0.2 17 | 18 | zpm.fer.hr. IN NS dnsZpm.zpm.fer.hr. 19 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 20 | 21 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsFer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsFer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "fer.hr" { 24 | type master; 25 | file "fer"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsFer/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsFer/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsHr/hr: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsHr.hr. root.dnsHr.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsHr.hr. 13 | @ IN NS hr2.com. 14 | dnsHr.hr. IN A 7.0.0.2 15 | hr2.com. IN A 4.0.0.2 16 | 17 | fer.hr. IN NS dnsFer.fer.hr. 18 | dnsFer.fer.hr. IN A 8.0.0.2 19 | 20 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsHr/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsHr/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "hr" { 24 | type master; 25 | file "hr"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsHr/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsHr/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/15.in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA mm.com. root.mm.com ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsMM.mm.com. 11 | dnsMM.mm.com. IN A 15.16.17.18 12 | 13 | 18.17.16.15.in-addr.arpa. IN PTR dnsMM.mm.com. 14 | 80.17.16.15.in-addr.arpa. IN PTR wwwMM.mm.com. 15 | 25.17.16.15.in-addr.arpa. IN PTR smtpMM.mm.com. 16 | 17 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/mm: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsMM.mm.com. root.mm.com ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsMM.mm.com. 13 | @ IN MX 10 mail.mm.com. 14 | 15 | dnsMM IN A 15.16.17.18 16 | wwwMM IN A 15.16.17.80 17 | smtpMM IN A 15.16.17.25 18 | 19 | dns IN CNAME dnsMM.mm.com. 20 | www IN CNAME wwwMM.mm.com. 21 | mail IN CNAME smtpMM.mm.com. 22 | 23 | dnsMM.mm.com. IN MX 10 smtpMM.mm.com. 24 | wwwMM.mm.com. IN MX 10 smtpMM.mm.com. 25 | 26 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | // clients from DMZ: 8 | allow-recursion { 9 | 15.16.17.0/24; 10 | 192.168.1.0/24; 11 | localhost; 12 | }; 13 | }; 14 | 15 | key "rndc-key" { 16 | algorithm hmac-md5; 17 | secret "pUkeN0gBlageylNhNauKdQ=="; 18 | }; 19 | 20 | controls { 21 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 22 | }; 23 | 24 | 25 | zone "." { 26 | type hint; 27 | file "named.root"; 28 | }; 29 | 30 | zone "mm.com" { 31 | type master; 32 | file "mm"; 33 | }; 34 | 35 | zone "0.0.127.IN-ADDR.ARPA" { 36 | type master; 37 | file "localhost.rev"; 38 | }; 39 | 40 | zone "15.IN-ADDR.ARPA" { 41 | type master; 42 | file "15.in-addr.arpa"; 43 | }; 44 | 45 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsMM/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsOrg/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsOrg/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "org" { 24 | type master; 25 | file "org"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsOrg/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsOrg/org: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA dnsOrg.org. root.dnsOrg.org ( 3 | 2002102801 ; serial 4 | 28 ; refresh 5 | 14 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsOrg.org. 11 | dnsOrg.Org. IN A 6.0.0.2 12 | 13 | blabla.org. IN NS dnsBlaBla.blabla.org. 14 | dnsBlaBla.blabla.org. IN A 111.112.113.114 15 | 16 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsOrg/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/20.in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsTel.tel.fer.hr. 11 | dnsTel.tel.fer.hr. IN A 20.0.0.2 12 | 2.0.0.20.in-addr.arpa. IN PTR dnsTel.tel.fer.hr. 13 | 3.0.0.20.in-addr.arpa. IN PTR www.tel.fer.hr. 14 | 4.0.0.20.in-addr.arpa. IN PTR mm.tel.fer.hr. 15 | 16 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "tel.fer.hr" { 24 | type master; 25 | file "tel"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | zone "20.IN-ADDR.ARPA" { 34 | type master; 35 | file "20.in-addr.arpa"; 36 | }; 37 | 38 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsTel/tel: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsTel.tel.fer.hr. root.dnsTel.tel.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsTel.tel.fer.hr. 13 | dnsTel IN A 20.0.0.2 14 | 15 | www IN A 20.0.0.3 16 | mm IN A 20.0.0.4 17 | 18 | @ IN MX 10 www.tel.fer.hr. 19 | mm IN MX 10 www.tel.fer.hr. 20 | 21 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/30.in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsZpm.zpm.fer.hr. 11 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 12 | 2.0.0.30.in-addr.arpa. IN PTR dnsZpm.zpm.fer.hr. 13 | 3.0.0.30.in-addr.arpa. IN PTR pc.zpm.fer.hr. 14 | 4.0.0.30.in-addr.arpa. IN PTR www.zpm.fer.hr. 15 | 16 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "zpm.fer.hr" { 24 | type master; 25 | file "zpm"; 26 | }; 27 | 28 | zone "0.0.127.IN-ADDR.ARPA" { 29 | type master; 30 | file "localhost.rev"; 31 | }; 32 | 33 | zone "30.IN-ADDR.ARPA" { 34 | type master; 35 | file "30.in-addr.arpa"; 36 | }; 37 | 38 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/dnsZpm/zpm: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsZpm.zpm.fer.hr. root.dnsZpm.zpm.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsZpm.zpm.fer.hr. 13 | dnsZpm IN A 30.0.0.2 14 | 15 | pc IN A 30.0.0.3 16 | zpmMail IN A 30.0.0.4 17 | www IN CNAME zpmMail.zpm.fer.hr. 18 | 19 | @ IN MX 10 zpmMail.zpm.fer.hr. 20 | pc IN MX 10 zpmMail.zpm.fer.hr. 21 | 22 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/hr2/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/hr2/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | key "rndc-key" { 10 | algorithm hmac-md5; 11 | secret "pUkeN0gBlageylNhNauKdQ=="; 12 | }; 13 | 14 | controls { 15 | inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; 16 | }; 17 | 18 | zone "." { 19 | type hint; 20 | file "named.root"; 21 | }; 22 | 23 | zone "hr" { 24 | type slave; 25 | masters { 7.0.0.2; }; 26 | file "hr"; 27 | }; 28 | 29 | zone "0.0.127.IN-ADDR.ARPA" { 30 | type master; 31 | file "localhost.rev"; 32 | }; 33 | 34 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/hr2/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/hr2/rndc.conf: -------------------------------------------------------------------------------- 1 | # Start of rndc.conf 2 | key "rndc-key" { 3 | algorithm hmac-md5; 4 | secret "pUkeN0gBlageylNhNauKdQ=="; 5 | }; 6 | 7 | options { 8 | default-key "rndc-key"; 9 | default-server 127.0.0.1; 10 | default-port 953; 11 | }; 12 | # End of rndc.conf 13 | 14 | # Use with the following in named.conf, adjusting the allow list as needed: 15 | # key "rndc-key" { 16 | # algorithm hmac-md5; 17 | # secret "pUkeN0gBlageylNhNauKdQ=="; 18 | # }; 19 | # 20 | # controls { 21 | # inet 127.0.0.1 port 953 22 | # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 | # }; 24 | # End of named.conf 25 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.dmzhosts: -------------------------------------------------------------------------------- 1 | domain mm.com 2 | nameserver 15.16.17.18 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.mm: -------------------------------------------------------------------------------- 1 | domain tel.fer.hr 2 | nameserver 20.0.0.2 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.pc: -------------------------------------------------------------------------------- 1 | domain zpm.fer.hr 2 | nameserver 30.0.0.2 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.smtpMM: -------------------------------------------------------------------------------- 1 | domain mm.com 2 | nameserver 15.16.17.18 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.www: -------------------------------------------------------------------------------- 1 | domain tel.fer.hr 2 | nameserver 20.0.0.2 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.wwwMM: -------------------------------------------------------------------------------- 1 | domain mm.com 2 | nameserver 15.16.17.18 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/resolv.zpmMail: -------------------------------------------------------------------------------- 1 | domain zpm.fer.hr 2 | nameserver 30.0.0.2 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/DNS_files/rndc.key: -------------------------------------------------------------------------------- 1 | key "rndc-key" { 2 | algorithm hmac-md5; 3 | secret "pUkeN0gBlageylNhNauKdQ=="; 4 | }; 5 | 6 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/FW_files/FWint-FreeBSD.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | ipfw -q flush 4 | cmd="ipfw add" 5 | ks="keep-state" 6 | skip="skipto 5000" 7 | pif=eth0 8 | good_tcpo="22,23,25,53,80,443,110" 9 | 10 | $cmd allow all from any to any via eth1 # LAN traffic 11 | $cmd allow all from any to any via lo0 # loopback 12 | $cmd deny all from any to 192.168.1.0/24 in via $pif # without NAT 13 | $cmd divert natd ip from any to any in via $pif 14 | $cmd check-state 15 | 16 | # Authorized inbound packets 17 | $cmd $skip tcp from 15.16.17.25 to 192.168.1.10 25 setup $ks 18 | 19 | # Authorized outbound packets 20 | $cmd $skip udp from any to 15.16.17.18 53 out via $pif $ks 21 | $cmd $skip tcp from any to any $good_tcpo out via $pif setup $ks 22 | $cmd $skip icmp from any to any out via $pif $ks 23 | $cmd deny log all from any to any 24 | 25 | # skipto location for outbound stateful rules 26 | $cmd 5000 divert natd ip from any to any out via $pif 27 | $cmd allow ip from any to any 28 | 29 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/FW_files/FWint.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | ipfw -q flush 4 | cmd="ipfw add" 5 | ks="keep-state" 6 | skip="skipto 5000" 7 | pif=eth0 8 | good_tcpo="22,23,25,53,80,443,110" 9 | 10 | $cmd allow all from any to any via eth1 # LAN traffic 11 | $cmd allow all from any to any via lo0 # loopback 12 | $cmd deny all from any to 192.168.1.0/24 in via $pif # without NAT 13 | $cmd divert natd ip from any to any in via $pif 14 | $cmd check-state 15 | 16 | # Authorized inbound packets 17 | $cmd $skip tcp from 15.16.17.25 to 192.168.1.10 25 setup $ks 18 | 19 | # Authorized outbound packets 20 | $cmd $skip udp from any to 15.16.17.18 53 out via $pif $ks 21 | $cmd $skip tcp from any to any $good_tcpo out via $pif setup $ks 22 | $cmd $skip icmp from any to any out via $pif $ks 23 | $cmd deny log all from any to any 24 | 25 | # skipto location for outbound stateful rules 26 | $cmd 5000 divert natd ip from any to any out via $pif 27 | $cmd allow ip from any to any 28 | 29 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.lan/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/cone.lan/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.lan/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.mm/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/cone.mm/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.mm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.tel/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/cone.tel/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.tel/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/cone.zpm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.lan/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.lan/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.lan/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.lan/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.mm/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.mm/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.mm/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.mm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/addressbook -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/postfix.LAN-SMTP/local-host-names: -------------------------------------------------------------------------------- 1 | smtpMM.mm.com 2 | mail.mm.com 3 | www.mm.com 4 | mm.com 5 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/postfix.smtpMM/local-host-names: -------------------------------------------------------------------------------- 1 | smtpMM.mm.com 2 | mail.mm.com 3 | www.mm.com 4 | mm.com 5 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/postfix.www/local-host-names: -------------------------------------------------------------------------------- 1 | www.tel.fer.hr 2 | mm.tel.fer.hr 3 | tel.fer.hr 4 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/Mail_files/postfix.zpmMail/local-host-names: -------------------------------------------------------------------------------- 1 | zpmMail.zpm.fer.hr 2 | pc.zpm.fer.hr 3 | zpm.fer.hr 4 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/PREREQUISITES: -------------------------------------------------------------------------------- 1 | On FreeBSD: 2 | 3 | To activate IPFW without having to recompile a kernel add 4 | the following lines to /boot/loader.conf: 5 | 6 | net.inet.ip.fw.default_to_accept=1 7 | ipfw_load=YES 8 | 9 | After reboot, ipfw will be loaded with default to accept. 10 | If you had run "kldload ipfw" the default rule would be deny! 11 | 12 | ----------------------- 13 | On Linux 14 | 15 | "iptables" must be installed on Docker image: 16 | 17 | # git clone https://github.com/imunes/vroot-linux.git 18 | # cd vroot-linux 19 | - add iptables to image/utilities.sh 20 | # ./build.sh 21 | 22 | Shell script (with firewall rules) generated using FirewallBuilder 23 | calls "modprobe". It must either be commented out or "kmod" must be 24 | added to Docker image. 25 | ----------------------- 26 | Firewall rules for node FW are in FW-FreeBSD.fw and FW-Linux.fw. 27 | They were generated by FirewallBuilder from FW.fwb. 28 | 29 | Rules for FWint are in FWint-FreeBSD.sh (manually created) 30 | and FWint-Linux.fw (generated by FirewallBuilder from FWint.fwb) 31 | 32 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/README: -------------------------------------------------------------------------------- 1 | ######################## 2 | # DMZ + DNS / Mail / WWW 3 | ######################## 4 | 5 | This example is an extension of imunes-examples/DNS+Mail+WEB. 6 | Prerequisites are described in PREREQUISITES. 7 | 8 | ----------------------- 9 | A new domain, mm.com is created on canvas mm.com and the appropriate 10 | configuration files are modified or added to DNS, Mail and Web servers. 11 | 12 | The whole mm.com network is behind firewall FW. 13 | There are 3 servers in DMZ that can be accessed from Internet: 14 | dnsMM - DNS server for mm.com (and relay for local hosts) 15 | smtpMM - Mail server for mm.com 16 | wwwMM - Web server for mm.com 17 | 18 | Hosts in LAN part of mm.com are behind another firewall, FWint 19 | that also performs NAT. 20 | Hosts from LAN can access anything on Internet (and on DMZ). 21 | 22 | Firewall rules for node FW are in FW-FreeBSD.fw and FW-Linux.fw. 23 | Rules for FWint are in FWint-FreeBSD.sh and FWint-Linux.fw. 24 | ------------------------- 25 | 26 | The experiment can be started using instructions from the DNS+Mail+WEB 27 | example (README_DNS+Mail+WEB). Firewalls are started (at the begining 28 | or at the end) using script ./start_fw. 29 | 30 | Script start_all can be used to (re)start everything: 31 | 32 | # imunes -b NETWORK.imn 33 | # ./start_all 34 | 35 | Script test_fw starts nmap network scans from LAN, DMZ and Internet: 36 | 37 | # ./test_fw 38 | 39 | Check firewall rules: 40 | 41 | FreeBSD# himage FW ipfw list 42 | FreeBSD# himage FWint ipfw list 43 | 44 | Linux# himage FW iptables -L 45 | Linux# himage FWint iptables -L 46 | 47 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.www/form.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | HTML Form Example 4 | 5 | 6 | 7 |
8 |

Your First Name:

9 | 10 |

11 |

Your Last Name:

12 |

13 |

Check if you are a student:

14 |

15 |

What is your gender?

16 |

17 | 18 | Male 19 | Female 20 |

21 |

How many moons are there on your planet?

22 |

23 | 32 | 33 |

34 |

Comments:

35 |

36 |

Hidden Data!

37 |

38 |

Submit this Form

39 |

40 | 41 |

Reset this Form

42 |

43 |
44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.www/freebsd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/WEB_files/www.www/freebsd.gif -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.www/index.html: -------------------------------------------------------------------------------- 1 | 2 |

Test file - www.tel.fer.hr

3 | 4 |

This is a starting page of Web servera www.tel.fer.hr 5 |

Just a few lines of text... 6 |

bla bla bla 7 |
Horizontal line 8 |


9 |

Link on form 10 |

Link on ZPM 11 |


12 |

Copyright (MM) 2008 13 | 14 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.www/lesson2.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | use strict; 4 | use CGI; 5 | my $cgi = new CGI; 6 | print 7 | $cgi->header() . 8 | $cgi->start_html( -title => 'Form Results', 9 | -author => 'Craig Kelley', 10 | -style => '/~ink/perl_cgi/css/perlcgi.css') . 11 | $cgi->h1('Form Results') . "\n"; 12 | my @params = $cgi->param(); 13 | print '' . "\n"; 14 | foreach my $parameter (sort @params) { 15 | print "\n"; 16 | } 17 | print "
$parameter" . $cgi->param($parameter) . "
\n"; 18 | print $cgi->end_html . "\n"; 19 | exit (0); 20 | 21 | 22 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/form.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | HTML Form Example 4 | 5 | 6 | 7 |

8 |

Your First Name:

9 | 10 |

11 |

Your Last Name:

12 |

13 |

Check if you are a student:

14 |

15 |

What is your gender?

16 |

17 | 18 | Male 19 | Female 20 |

21 |

How many moons are there on your planet?

22 |

23 | 32 | 33 |

34 |

Comments:

35 |

36 |

Hidden Data!

37 |

38 |

Submit this Form

39 |

40 | 41 |

Reset this Form

42 |

43 |
44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/freebsd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/freebsd.gif -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/index.html: -------------------------------------------------------------------------------- 1 | 2 |

Probni index fajl - wwwMM.mm.com

3 |

Pocetna stranica web servera u domeni mm.com 4 |

(nalazi se iza firewall na routeru/hostu FW ...) 5 |

Link on ZZT 6 |

Link on ZPM 7 |


8 | Copyright (MM) 2015 9 | 10 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/lesson2.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | use strict; 4 | use CGI; 5 | my $cgi = new CGI; 6 | print 7 | $cgi->header() . 8 | $cgi->start_html( -title => 'Form Results', 9 | -author => 'Craig Kelley', 10 | -style => '/~ink/perl_cgi/css/perlcgi.css') . 11 | $cgi->h1('Form Results') . "\n"; 12 | my @params = $cgi->param(); 13 | print '' . "\n"; 14 | foreach my $parameter (sort @params) { 15 | print "\n"; 16 | } 17 | print "
$parameter" . $cgi->param($parameter) . "
\n"; 18 | print $cgi->end_html . "\n"; 19 | exit (0); 20 | 21 | 22 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/powerlogo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/WEB_files/www.wwwMM/powerlogo.gif -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.zpmMail/index.html: -------------------------------------------------------------------------------- 1 | 2 |

Probni index fajl - zpmMail.zpm.fer.hr

3 | 4 |

>This is a starting page of Web servera zpmMail.zpm.fer.hr 5 |

bla bla bla ... 6 |

Link on ZZT 7 |

8 |
Horizonal ruler 9 |


10 | Copyright (MM) 2008 11 | 12 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/WEB_files/www.zpmMail/powerlogo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DMZ+DNS+Mail+WEB/WEB_files/www.zpmMail/powerlogo.gif -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/getMail: -------------------------------------------------------------------------------- 1 | USER imunes 2 | PASS imunes 3 | LIST 4 | QUIT 5 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/start_all: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | ./start_fw 4 | ./start_dns 5 | ./start_http 6 | ./start_mail 7 | 8 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/start_dns: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | dns_servers="aRootServer bRootServer cRootServer \ 6 | dnsCom dnsOrg dnsHr hr2 \ 7 | dnsFer \ 8 | dnsTel dnsZpm dnsMM" 9 | 10 | hosts="mm www pc zpmMail smtpMM wwwMM" 11 | dmzhosts="pc1 pc2 pc3 LAN-SMTP" 12 | 13 | if test $# -eq 1; then 14 | eid=$1 15 | isEidRunning $eid 16 | else 17 | eid=`isNodeRunning aRootServer` 18 | if [ $? -ne 0 ]; then 19 | exit 1 20 | fi 21 | fi 22 | 23 | cd DNS_files 24 | 25 | for i in $dns_servers 26 | do 27 | # Stop named on all DNS servers 28 | himage ${i}@${eid} killall -9 named > /dev/null 2>&1 29 | himage $i@$eid mkdir -p /var/named/etc/namedb 30 | hcp $i/* $i@$eid:/var/named/etc/namedb 31 | # Start named on all DNS servers 32 | echo Starting named on $i... 33 | himage $i@$eid named -c /var/named/etc/namedb/named.conf 34 | if test -d /usr/local/etc/namedb; then 35 | himage $i@$eid cp /var/named/etc/namedb/rndc.conf /usr/local/etc/namedb 36 | fi 37 | if test -d /etc/namedb; then 38 | himage $i@$eid cp /var/named/etc/namedb/rndc.conf /etc/namedb/rndc.conf 39 | fi 40 | done 41 | 42 | echo 43 | echo Copy/Create resolv.conf on clients: 44 | for i in $hosts 45 | do 46 | hcp resolv.$i $i@$eid:/etc/resolv.conf 47 | done 48 | 49 | echo 50 | echo Copy/Create resolv.conf on clients in DMZ: 51 | for i in $dmzhosts 52 | do 53 | hcp resolv.dmzhosts $i@$eid:/etc/resolv.conf 54 | done 55 | 56 | echo 57 | echo Create empty resolv.conf on DNS servers: 58 | for i in $dns_servers 59 | do 60 | himage $i@$eid cp /dev/null /etc/resolv.conf 61 | done 62 | 63 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/start_fw: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | if test $# -eq 1; then 6 | eid=$1 7 | isEidRunning $eid 8 | else 9 | eid=`isNodeRunning aRootServer` 10 | if [ $? -ne 0 ]; then 11 | exit 1 12 | fi 13 | fi 14 | 15 | if isOSfreebsd; then 16 | kldstat -q -m ipfw 17 | if test $? -ne 0 18 | then 19 | kldload ipfw 20 | ipfw add 65534 allow ip from any to any 21 | fi 22 | kldload -n ipdivert 23 | 24 | svi="aRootServer bRootServer R3 hr2 dnsCom dnsHr dnsFer R7 R8 R9 \ 25 | dnsTel www mm cRootServer dnsOrg dnsZpm pc zpmMail FW FWint \ 26 | smtpMM wwwMM dnsMM LAN-SMTP pc1 pc2 pc3" 27 | 28 | for h in $svi 29 | do 30 | himage $h ipfw -q flush 31 | himage $h ipfw -q add 65534 allow ip from any to any 32 | done 33 | 34 | hcp FW_files/FW-FreeBSD.fw FW:/ 35 | echo Pokrecem Firewall na FW: 36 | himage FW /FW-FreeBSD.fw 37 | 38 | himage FWint killall -q -9 natd 39 | himage FWint natd -interface eth0 -redirect_port tcp 192.168.1.10:25 25 40 | 41 | hcp FW_files/FWint-FreeBSD.sh FWint:/ 42 | echo Pokrecem Firewall na FWint: 43 | himage FWint /FWint-FreeBSD.sh 44 | fi 45 | 46 | if isOSlinux; then 47 | hcp FW_files/FW-Linux.fw FW:/ 48 | echo Pokrecem Firewall na FW: 49 | himage FW /FW-Linux.fw 50 | 51 | hcp FW_files/FWint-Linux.fw FWint:/ 52 | echo Pokrecem Firewall na FWint: 53 | himage FWint /FWint-Linux.fw 54 | fi 55 | 56 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/start_http: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | http_servers="www zpmMail wwwMM" 6 | 7 | if test $# -eq 1; then 8 | eid=$1 9 | else 10 | for i in $http_servers 11 | do 12 | eid=`himage -e $i` 13 | if test $? -ne 0 ;then 14 | echo "Cannot find node $i" 15 | exit 2 16 | fi 17 | done 18 | fi 19 | 20 | if test $# -eq 1; then 21 | eid=$1 22 | isEidRunning $eid 23 | else 24 | eid=`isNodeRunning www` 25 | if [ $? -ne 0 ]; then 26 | exit 1 27 | fi 28 | fi 29 | 30 | if isOSfreebsd; then 31 | hasPackage www $eid '^lighttpd-' 32 | fi 33 | 34 | for serv in $http_servers 35 | do 36 | echo "Starting http server on $serv..." 37 | h=${serv}@${eid} 38 | himage $h killall -q -9 lighttpd 39 | himage $h mkdir -p /usr/local/etc/lighttpd 40 | himage $h mkdir -p /var/log/lighttpd 41 | if isOSlinux; then 42 | himage $h chown -R www-data:www-data /var/log/lighttpd 43 | else 44 | himage $h chown -R www:www /var/log/lighttpd 45 | fi 46 | 47 | hcp WEB_files/${serv}.lighttpd.conf $h:/usr/local/etc/lighttpd/lighttpd.conf 48 | himage $h chmod 755 /usr/local/etc/lighttpd/lighttpd.conf 49 | if isOSlinux; then 50 | hcp WEB_files/www.${serv} $h:/root 51 | himage -b $h lighttpd -f /usr/local/etc/lighttpd/lighttpd.conf 52 | else 53 | hcp -r WEB_files/www.${serv} $h:/root 54 | himage $h lighttpd -f /usr/local/etc/lighttpd/lighttpd.conf 55 | fi 56 | done 57 | 58 | -------------------------------------------------------------------------------- /DMZ+DNS+Mail+WEB/test_fw.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | echo "" 4 | echo "Scan private address of LAN-SMTP in LAN from smtpMM in DMZ" 5 | echo "Everything should be filtered" 6 | himage smtpMM nmap -Pn -p20-25,53,80 192.168.1.10 7 | 8 | echo "" 9 | echo "Scan private address of LAN-SMTP in LAN from outside network" 10 | echo "Everything should be filtered" 11 | himage pc nmap -Pn -p20-25,53,80 192.168.1.10 12 | 13 | echo "" 14 | echo "Scan outside address of LAN-SMTP in LAN from smtpMM in DMZ" 15 | echo "NAT redirects 15.16.17.2:25 to 192.168.1.10:25" 16 | echo "Only smtp should be open" 17 | himage smtpMM nmap -Pn -p20-25,53,80 15.16.17.2 18 | 19 | echo "" 20 | echo "Scan outside address of LAN-SMTP in LAN from outside network" 21 | echo "(internal smtp server for LAN)" 22 | echo "Everything should be filtered" 23 | himage pc nmap -Pn -p20-25,53,80 15.16.17.2 24 | 25 | echo "" 26 | echo "Scan wwwMM.mm.com from outside network" 27 | echo "Open: http" 28 | himage pc nmap -Pn -p20-25,53,80 15.16.17.80 29 | 30 | echo "" 31 | echo "Scan dnsMM.mm.com from outside network" 32 | echo "Everything should be filtered" 33 | echo "Access to domain/tcp is allowed only from secondary server dnsTel" 34 | himage pc nmap -Pn -p20-25,53,80 15.16.17.18 35 | 36 | echo "" 37 | echo "Scan dnsMM.mm.com from dnsTel" 38 | echo "Open: domain (only from dnsTel: secundary server)" 39 | himage dnsTel nmap -Pn -p20-25,53,80 15.16.17.18 40 | 41 | echo "" 42 | echo "Scan smtpMM.mm.com from outside network" 43 | echo "Open: smtp" 44 | himage pc nmap -Pn -p20-25,53,80 15.16.17.25 45 | 46 | echo "" 47 | echo "Scan www.tel.fer.hr from DMZ" 48 | echo "Open: smtp (http is not allowed from DMZ)" 49 | himage smtpMM nmap -Pn -p20-25,53,80 20.0.0.3 50 | 51 | echo "" 52 | echo "Scan www.tel.fer.hr from LAN" 53 | echo "Open: smtp,http" 54 | himage pc1 nmap -Pn -p20-25,53,80 20.0.0.3 55 | 56 | echo "" 57 | echo "Scan UDP ports on dnsMM.mm.com from outside network" 58 | echo "Open: domain (63 open|filtered)" 59 | himage pc nmap -Pn -p7-70 -sU 15.16.17.18 60 | 61 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/aRootServer/in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS aRootServer. 11 | @ IN NS bRootServer. 12 | @ IN NS cRootServer. 13 | 14 | 20.in-addr.arpa. IN NS dnsTel.tel.fer.hr. 15 | dnsTel.tel.fer.hr. IN A 20.0.0.2 16 | 17 | 30.in-addr.arpa. IN NS dnsZpm.zpm.fer.hr. 18 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 19 | 20 | 2.0.0.1.in-addr.arpa. IN PTR aRootServer. 21 | 2.0.0.2.in-addr.arpa. IN PTR bRootServer. 22 | 2.0.0.3.in-addr.arpa. IN PTR cRootServer. 23 | 24 | 2.0.0.4.in-addr.arpa. IN PTR hr2.com. 25 | 2.0.0.5.in-addr.arpa. IN PTR dnsCom.com. 26 | 2.0.0.6.in-addr.arpa. IN PTR dnsOrg.Org. 27 | 2.0.0.7.in-addr.arpa. IN PTR dnsHr.hr. 28 | 29 | 14.13.12.11.in-addr.arpa. IN PTR dnsNesto.nesto.com. 30 | 18.17.16.15.in-addr.arpa. IN PTR dnsMM.mm.com. 31 | 2.0.0.8.in-addr.arpa. IN PTR dnsFer.fer.hr. 32 | 114.113.112.111.in-addr.arpa. IN PTR dnsBlaBla.blabla.org. 33 | 34 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/aRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/aRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type master; 11 | file "root"; 12 | allow-transfer {2.0.0.2; 3.0.0.2;}; 13 | }; 14 | 15 | zone "0.0.127.IN-ADDR.ARPA" { 16 | type master; 17 | file "localhost.rev"; 18 | }; 19 | 20 | zone "IN-ADDR.ARPA" { 21 | type master; 22 | file "in-addr.arpa"; 23 | allow-transfer {2.0.0.2; 3.0.0.2;}; 24 | }; 25 | 26 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/aRootServer/root: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS aRootServer. 11 | @ IN NS bRootServer. 12 | @ IN NS cRootServer. 13 | aRootServer. IN A 1.0.0.2 14 | bRootServer. IN A 2.0.0.2 15 | cRootServer. IN A 3.0.0.2 16 | 17 | com. IN NS dnsCom.com. 18 | dnsCom.com. IN A 5.0.0.2 19 | 20 | org. IN NS dnsOrg.org. 21 | dnsOrg.Org. IN A 6.0.0.2 22 | 23 | hr. IN NS dnsHr.hr. 24 | hr. IN NS hr2.com. 25 | dnsHr.hr. IN A 7.0.0.2 26 | hr2.com. IN A 4.0.0.2 27 | 28 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/bRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/bRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type slave; 11 | masters { 1.0.0.2; }; 12 | allow-notify { 1.0.0.2; 3.0.0.2;}; 13 | file "root"; 14 | }; 15 | 16 | zone "0.0.127.IN-ADDR.ARPA" { 17 | type master; 18 | file "localhost.rev"; 19 | }; 20 | 21 | zone "IN-ADDR.ARPA" { 22 | type slave; 23 | masters { 1.0.0.2; }; 24 | allow-notify { 1.0.0.2; 3.0.0.2;}; 25 | file "in-addr.arpa"; 26 | }; 27 | 28 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/cRootServer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/cRootServer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type slave; 11 | masters { 1.0.0.2; }; 12 | allow-notify { 1.0.0.2; 2.0.0.2; }; 13 | file "root"; 14 | }; 15 | 16 | zone "0.0.127.IN-ADDR.ARPA" { 17 | type master; 18 | file "localhost.rev"; 19 | }; 20 | 21 | zone "IN-ADDR.ARPA" { 22 | type slave; 23 | masters { 1.0.0.2; }; 24 | allow-notify { 1.0.0.2; 2.0.0.2; }; 25 | file "in-addr.arpa"; 26 | }; 27 | 28 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsCom/com: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsMM.mm.com. root.dnsMM.mm.com. ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsCom.com. 13 | dnsCom.com. IN A 5.0.0.2 14 | 15 | hr2.com. IN A 4.0.0.2 16 | 17 | nesto.com. IN NS dnsNesto.nesto.com. 18 | dnsNesto.nesto.com. IN A 11.12.13.14 19 | 20 | mm.com. IN NS dnsMM.mm.com. 21 | dnsMM.mm.com. IN A 15.16.17.18 22 | 23 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsCom/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsCom/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "com" { 15 | type master; 16 | file "com"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsCom/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsFer/fer: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsFer.fer.hr. root.dnsFer.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsFer.fer.hr. 13 | dnsFer.fer.hr. IN A 8.0.0.2 14 | 15 | tel.fer.hr. IN NS dnsTel.tel.fer.hr. 16 | dnsTel.tel.fer.hr. IN A 20.0.0.2 17 | 18 | zpm.fer.hr. IN NS dnsZpm.zpm.fer.hr. 19 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 20 | 21 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsFer/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsFer/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "fer.hr" { 15 | type master; 16 | file "fer"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsFer/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsHr/hr: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsHr.hr. root.dnsHr.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsHr.hr. 13 | @ IN NS hr2.com. 14 | dnsHr.hr. IN A 7.0.0.2 15 | hr2.com. IN A 4.0.0.2 16 | 17 | fer.hr. IN NS dnsFer.fer.hr. 18 | dnsFer.fer.hr. IN A 8.0.0.2 19 | 20 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsHr/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsHr/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "hr" { 15 | type master; 16 | file "hr"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsHr/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsOrg/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsOrg/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "org" { 15 | type master; 16 | file "org"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsOrg/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsOrg/org: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA dnsOrg.org. root.dnsOrg.org ( 3 | 2002102801 ; serial 4 | 28 ; refresh 5 | 14 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsOrg.org. 11 | dnsOrg.Org. IN A 6.0.0.2 12 | 13 | blabla.org. IN NS dnsBlaBla.blabla.org. 14 | dnsBlaBla.blabla.org. IN A 111.112.113.114 15 | 16 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsTel/20.in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsTel.tel.fer.hr. 11 | dnsTel.tel.fer.hr. IN A 20.0.0.2 12 | 2.0.0.20.in-addr.arpa. IN PTR dnsTel.tel.fer.hr. 13 | 3.0.0.20.in-addr.arpa. IN PTR www.tel.fer.hr. 14 | 4.0.0.20.in-addr.arpa. IN PTR mm.tel.fer.hr. 15 | 16 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsTel/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsTel/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "tel.fer.hr" { 15 | type master; 16 | file "tel"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | zone "20.IN-ADDR.ARPA" { 25 | type master; 26 | file "20.in-addr.arpa"; 27 | }; 28 | 29 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsTel/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsTel/tel: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsTel.tel.fer.hr. root.dnsTel.tel.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsTel.tel.fer.hr. 13 | dnsTel IN A 20.0.0.2 14 | 15 | www IN A 20.0.0.3 16 | mm IN A 20.0.0.4 17 | 18 | @ IN MX 10 www.tel.fer.hr. 19 | mm IN MX 10 www.tel.fer.hr. 20 | 21 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsZpm/30.in-addr.arpa: -------------------------------------------------------------------------------- 1 | $TTL 60000 2 | @ IN SOA aRootServer. root.aRootServer ( 3 | 2002102801 ; serial 4 | 28800 ; refresh 5 | 14400 ; retry 6 | 3600000 ; expire 7 | 0 ; default_ttl 8 | ) 9 | 10 | @ IN NS dnsZpm.zpm.fer.hr. 11 | dnsZpm.zpm.fer.hr. IN A 30.0.0.2 12 | 2.0.0.30.in-addr.arpa. IN PTR dnsZpm.zpm.fer.hr. 13 | 3.0.0.30.in-addr.arpa. IN PTR pc.zpm.fer.hr. 14 | 4.0.0.30.in-addr.arpa. IN PTR www.zpm.fer.hr. 15 | 16 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsZpm/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsZpm/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "zpm.fer.hr" { 15 | type master; 16 | file "zpm"; 17 | }; 18 | 19 | zone "0.0.127.IN-ADDR.ARPA" { 20 | type master; 21 | file "localhost.rev"; 22 | }; 23 | 24 | zone "30.IN-ADDR.ARPA" { 25 | type master; 26 | file "30.in-addr.arpa"; 27 | }; 28 | 29 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsZpm/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/dnsZpm/zpm: -------------------------------------------------------------------------------- 1 | ; Tu cu ubaciti SOA 2 | ; 3 | $TTL 60000 4 | @ IN SOA dnsZpm.zpm.fer.hr. root.dnsZpm.zpm.fer.hr ( 5 | 2002102801 ; serial 6 | 28 ; refresh 7 | 14 ; retry 8 | 3600000 ; expire 9 | 0 ; default_ttl 10 | ) 11 | 12 | @ IN NS dnsZpm.zpm.fer.hr. 13 | dnsZpm IN A 30.0.0.2 14 | 15 | pc IN A 30.0.0.3 16 | zpmMail IN A 30.0.0.4 17 | www IN CNAME zpmMail.zpm.fer.hr. 18 | 19 | @ IN MX 10 zpmMail.zpm.fer.hr. 20 | pc IN MX 10 zpmMail.zpm.fer.hr. 21 | 22 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/hr2/localhost.rev: -------------------------------------------------------------------------------- 1 | ; localhost.rev 2 | ; 3 | $TTL 86400 4 | @ IN SOA localhost. root.localhost ( 5 | 20041128 ; Serial 6 | 28800 ; Refresh 7 | 7200 ; Retry 8 | 3600000 ; Expire 9 | 86400 ; Minimum 10 | ) 11 | IN NS localhost. 12 | 1 IN PTR localhost. 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/hr2/named.conf: -------------------------------------------------------------------------------- 1 | // named.conf 2 | // 3 | 4 | options { 5 | directory "/var/named/etc/namedb"; 6 | dnssec-validation no; 7 | }; 8 | 9 | zone "." { 10 | type hint; 11 | file "named.root"; 12 | }; 13 | 14 | zone "hr" { 15 | type slave; 16 | masters { 7.0.0.2; }; 17 | file "hr"; 18 | }; 19 | 20 | zone "0.0.127.IN-ADDR.ARPA" { 21 | type master; 22 | file "localhost.rev"; 23 | }; 24 | 25 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/hr2/named.root: -------------------------------------------------------------------------------- 1 | ; 2 | ; Samo 2 root servera 3 | ; Vidi original u named.root.pravi 4 | ; 5 | . 3600000 IN NS aRootServer. 6 | aRootServer. 3600000 A 1.0.0.2 7 | ; 8 | . 3600000 IN NS bRootServer. 9 | bRootServer. 3600000 A 2.0.0.2 10 | ; 11 | . 3600000 IN NS cRootServer. 12 | cRootServer. 3600000 A 3.0.0.2 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/resolv.mm: -------------------------------------------------------------------------------- 1 | domain tel.fer.hr 2 | nameserver 20.0.0.2 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/resolv.pc: -------------------------------------------------------------------------------- 1 | domain zpm.fer.hr 2 | nameserver 30.0.0.2 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/resolv.www: -------------------------------------------------------------------------------- 1 | domain tel.fer.hr 2 | nameserver 20.0.0.2 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/DNS_files/resolv.zpmMail: -------------------------------------------------------------------------------- 1 | domain zpm.fer.hr 2 | nameserver 30.0.0.2 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/cone.tel/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DNS+Mail+WEB/Mail_files/cone/cone.tel/addressbook -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/cone.tel/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/cone.zpm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@FreeBSD7
3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/addressbook -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.tel/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/addressbook: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/addressbook -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/cacherc: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/cone/linux-cone.zpm/conerc: -------------------------------------------------------------------------------- 1 | 2 |
root@mm
3 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/postfix.www/local-host-names: -------------------------------------------------------------------------------- 1 | www.tel.fer.hr 2 | mm.tel.fer.hr 3 | tel.fer.hr 4 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/Mail_files/postfix.zpmMail/local-host-names: -------------------------------------------------------------------------------- 1 | zpmMail.zpm.fer.hr 2 | pc.zpm.fer.hr 3 | zpm.fer.hr 4 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.www/form.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | HTML Form Example 4 | 5 | 6 | 7 |
8 |

Your First Name:

9 | 10 |

11 |

Your Last Name:

12 |

13 |

Check if you are a student:

14 |

15 |

What is your gender?

16 |

17 | 18 | Male 19 | Female 20 |

21 |

How many moons are there on your planet?

22 |

23 | 32 | 33 |

34 |

Comments:

35 |

36 |

Hidden Data!

37 |

38 |

Submit this Form

39 |

40 | 41 |

Reset this Form

42 |

43 |
44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.www/freebsd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DNS+Mail+WEB/WEB_files/www.www/freebsd.gif -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.www/index.html: -------------------------------------------------------------------------------- 1 | 2 |

Test file - www.tel.fer.hr

3 | 4 |

This is a starting page of Web servera www.tel.fer.hr 5 |

Just a few lines of text... 6 |

bla bla bla 7 |
Horizontal line 8 |


9 |

Link on form 10 |

Link on ZPM 11 |


12 |

Copyright (MM) 2008 13 | 14 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.www/lesson2.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | use strict; 4 | use CGI; 5 | my $cgi = new CGI; 6 | print 7 | $cgi->header() . 8 | $cgi->start_html( -title => 'Form Results', 9 | -author => 'Craig Kelley', 10 | -style => '/~ink/perl_cgi/css/perlcgi.css') . 11 | $cgi->h1('Form Results') . "\n"; 12 | my @params = $cgi->param(); 13 | print '' . "\n"; 14 | foreach my $parameter (sort @params) { 15 | print "\n"; 16 | } 17 | print "
$parameter" . $cgi->param($parameter) . "
\n"; 18 | print $cgi->end_html . "\n"; 19 | exit (0); 20 | 21 | 22 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.zpmMail/index.html: -------------------------------------------------------------------------------- 1 | 2 |

Probni index fajl - zpmMail.zpm.fer.hr

3 | 4 |

>This is a starting page of Web servera zpmMail.zpm.fer.hr 5 |

bla bla bla ... 6 |

Link on ZZT 7 |

8 |
Horizonal ruler 9 |


10 | Copyright (MM) 2008 11 | 12 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/WEB_files/www.zpmMail/powerlogo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imunes/imunes-examples/9f76501b01e101bab8424f23dab3a900e679112f/DNS+Mail+WEB/WEB_files/www.zpmMail/powerlogo.gif -------------------------------------------------------------------------------- /DNS+Mail+WEB/getMail: -------------------------------------------------------------------------------- 1 | USER imunes 2 | PASS imunes 3 | LIST 4 | QUIT 5 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/start_dns: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | dns_servers="aRootServer bRootServer cRootServer \ 6 | dnsCom dnsOrg dnsHr hr2 \ 7 | dnsFer \ 8 | dnsTel dnsZpm" 9 | 10 | hosts="mm www pc zpmMail" 11 | 12 | if test $# -eq 1; then 13 | eid=$1 14 | isEidRunning $eid 15 | else 16 | eid=`isNodeRunning aRootServer` 17 | if [ $? -ne 0 ]; then 18 | exit 1 19 | fi 20 | fi 21 | 22 | cd DNS_files 23 | 24 | for i in $dns_servers 25 | do 26 | # Stop named on all DNS servers 27 | himage ${i}@${eid} killall -9 named > /dev/null 2>&1 28 | himage $i@$eid mkdir -p /var/named/etc/namedb 29 | hcp $i/* $i@$eid:/var/named/etc/namedb 30 | # Start named on all DNS servers 31 | echo Starting named on $i... 32 | himage $i@$eid named -c /var/named/etc/namedb/named.conf 33 | done 34 | 35 | echo 36 | echo Copy/Create resolv.conf on clients: 37 | for i in $hosts 38 | do 39 | hcp resolv.$i $i@$eid:/etc/resolv.conf 40 | done 41 | 42 | echo 43 | echo Create empty resolv.conf on DNS servers: 44 | for i in $dns_servers 45 | do 46 | himage $i@$eid cp /dev/null /etc/resolv.conf 47 | done 48 | 49 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/start_http: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | http_servers="www zpmMail" 6 | 7 | if test $# -eq 1; then 8 | eid=$1 9 | else 10 | for i in $http_servers 11 | do 12 | eid=`himage -e $i` 13 | if test $? -ne 0 ;then 14 | echo "Cannot find node $i" 15 | exit 2 16 | fi 17 | done 18 | fi 19 | 20 | if test $# -eq 1; then 21 | eid=$1 22 | isEidRunning $eid 23 | else 24 | eid=`isNodeRunning www` 25 | if [ $? -ne 0 ]; then 26 | exit 1 27 | fi 28 | fi 29 | 30 | if isOSfreebsd; then 31 | hasPackage www $eid '^lighttpd-' 32 | fi 33 | 34 | for serv in $http_servers 35 | do 36 | echo "Starting http server on $serv..." 37 | h=${serv}@${eid} 38 | himage $h mkdir -p /usr/local/etc/lighttpd 39 | himage $h mkdir -p /var/log/lighttpd 40 | if isOSlinux; then 41 | himage $h chown -R www-data:www-data /var/log/lighttpd 42 | else 43 | himage $h chown -R www:www /var/log/lighttpd 44 | fi 45 | 46 | hcp WEB_files/${serv}.lighttpd.conf $h:/usr/local/etc/lighttpd/lighttpd.conf 47 | himage $h chmod 755 /usr/local/etc/lighttpd/lighttpd.conf 48 | if isOSlinux; then 49 | hcp WEB_files/www.${serv} $h:/root 50 | himage -b $h lighttpd -f /usr/local/etc/lighttpd/lighttpd.conf 51 | else 52 | hcp -r WEB_files/www.${serv} $h:/root 53 | himage $h lighttpd -f /usr/local/etc/lighttpd/lighttpd.conf 54 | fi 55 | done 56 | 57 | -------------------------------------------------------------------------------- /DNS+Mail+WEB/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | dns_servers="aRootServer bRootServer cRootServer \ 6 | dnsCom dnsOrg dnsHr hr2 \ 7 | dnsFer \ 8 | dnsTel dnsZpm" 9 | hosts="mm www pc zpmMail" 10 | err=0 11 | legacy="" 12 | if test -n "$LEGACY"; then 13 | legacy=" -l" 14 | fi 15 | 16 | eid=`imunes$legacy -b NETWORK.imn | awk '/Experiment/{print $4; exit}'` 17 | startCheck "$eid" 18 | 19 | ./start_dns $eid 20 | if [ $? -ne 0 ]; then 21 | echo "********** START_DNS ERROR **********" 22 | err=1 23 | else 24 | sleep 60 25 | for h in $dns_servers $hosts; do 26 | dnsCheck $h@$eid zpmMail.zpm.fer.hr 27 | if [ $? -eq 0 ]; then 28 | dnsCheck $h@$eid mm.tel.fer.hr 29 | if [ $? -ne 0 ]; then 30 | err=1 31 | fi 32 | else 33 | err=1 34 | fi 35 | done 36 | fi 37 | 38 | ./start_mail $eid 39 | if [ $? -ne 0 ]; then 40 | echo "********** START_MAIL ERROR **********" 41 | err=2 42 | else 43 | himage www@$eid grep imunes /etc/passwd > /dev/null 2>&1 44 | if [ $? -eq 1 ]; then 45 | echo "User imunes should be created in virtual nodes." 46 | err=2 47 | fi 48 | sendMail www@$eid imunes@zpm.fer.hr 49 | if [ $? -ne 0 ]; then 50 | err=2 51 | else 52 | echo Wait 5 sec before reading e-mail... 53 | sleep 5 54 | getMail pc@$eid 30.0.0.4 55 | if [ $? -ne 0 ]; then 56 | err=2 57 | fi 58 | fi 59 | fi 60 | 61 | ./start_http $eid 62 | if [ $? -ne 0 ]; then 63 | echo "********** START_HTTP ERROR **********" 64 | err=3 65 | else 66 | sleep 1 67 | webCheck mm@$eid http://www.tel.fer.hr 68 | if [ $? -ne 0 ]; then 69 | err=3 70 | else 71 | webCheck mm@$eid http://www.zpm.fer.hr 72 | if [ $? -ne 0 ]; then 73 | err=3 74 | fi 75 | fi 76 | fi 77 | 78 | imunes$legacy -b -e $eid 79 | 80 | thereWereErrors $err 81 | -------------------------------------------------------------------------------- /IS-IS/README.md: -------------------------------------------------------------------------------- 1 | ## IS-IS routing protocol example 2 | In this example "Custom Config" feature is used for IS-IS router's configuration. 3 | 4 | Double click on router or select "Configure" from right-click popup menu: 5 | - Custom startup config is "Enabled" 6 | - Selected custom config is "conf1" 7 | - Click on "Editor" button 8 | 9 | Configuration is inspired by "[Configuring IS-IS for IP on Cisco Routers](http://www.cisco.com/c/en/us/support/docs/ip/integrated-intermediate-system-to-intermediate-system-is-is/13795-is-is-ip-config.html "Configuring IS-IS for IP on Cisco Routers")". 10 | 11 | -------------------------------------------------------------------------------- /IS-IS/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | slow=0 7 | legacy="" 8 | if test -n "$LEGACY"; then 9 | legacy=" -l" 10 | fi 11 | 12 | eid=`imunes$legacy -b IS-IS.imn | awk '/Experiment/{print $4; exit}'` 13 | startCheck "$eid" 14 | 15 | Wait 40 16 | 17 | n=1 18 | pingStatus=1 19 | while [ $n -le 20 ] && [ $pingStatus -ne 0 ]; do 20 | echo "Ping test $n / 20 ..." 21 | pingCheck pc1@$eid 172.16.3.20 2 22 | pingStatus=$? 23 | n=`expr $n + 1` 24 | done 25 | 26 | if [ $pingStatus -ne 0 ]; then 27 | err=1 28 | fi 29 | 30 | for r in R1 R2 R3 31 | do 32 | echo "########## $r@$eid routes" 33 | himage -nt $r@$eid vtysh << __END__ 34 | show ip route 35 | exit 36 | __END__ 37 | done 38 | 39 | imunes$legacy -b -e $eid 40 | 41 | thereWereErrors $err 42 | 43 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | sh testAll.sh 3 | 4 | clean: 5 | @rm -f */TESTRESULTS* */*/TESTRESULTS* */tcplog_err benchmark/start*log benchmark/term*log 6 | 7 | showtimes: 8 | grep "^Test took" */TESTRESULTS* */*/TESTRESULTS* 9 | 10 | showerrors: 11 | grep "^There were errors" */TESTRESULTS* */*/TESTRESULTS* 12 | 13 | bench: 14 | cd benchmark && ./benchmark.sh -w 1 *.imn 15 | 16 | bench_all: 17 | cd benchmark && ./benchmark.sh ../*/*.imn 18 | -------------------------------------------------------------------------------- /OSPF/README: -------------------------------------------------------------------------------- 1 | 2 | ******************* 3 | * OSPF.imn 4 | ******************* 5 | 6 | The purpose of the example is to show what happens in the "quiet" network - how routers exchange information about their neighbours. 7 | 8 | Follow the same steps as in RIP.imn. 9 | 10 | Analyse the packets which are transmitted. 11 | 12 | ******************* 13 | * OSPF1.imn 14 | ******************* 15 | 16 | The purpose of the example is to show what happens after the router goes down, and then goes back up. 17 | 18 | Follow the same steps as in RIP1.imn, using the following router commands: 19 | 20 | show ip route - shows all routes 21 | show ip ospf route - shows ospf routes 22 | show ip ospf interface - show info about router's interfaces 23 | show ip ospf neighbor - show info about router's neighbours 24 | 25 | Notice the dead time in "show ip ospf neighbor" and check what happens after the router7 is shut down. Look at how the dead time changes. 26 | 27 | 28 | ******************* 29 | * OSPF_RFC.imn 30 | ******************* 31 | 32 | Network and configuration example from RFC 2328, "OSPF Version 2", figure 2, page 19. 33 | http://www.ietf.org/rfc/rfc2328.txt 34 | 35 | -------------------------------------------------------------------------------- /Ping/README: -------------------------------------------------------------------------------- 1 | 2 | The purpose of this example is to demonstrate how ping works. 3 | 4 | Start the simulation. 5 | 6 | Start Ethereal on eth0 of pc1. 7 | 8 | Open capture, and check "Update list of packets in real time". 9 | 10 | Start capturing. 11 | 12 | Open shell window on pc1. 13 | 14 | Check the availability of the server (10.0.8.10). What is the response of the ping command? Stop the ping after several probes (Ctrl-C). 15 | 16 | Stop capturing. 17 | 18 | Analyse the traffic from the ping: 19 | 20 | - how many packets were recorded? 21 | - what are the first two packets? 22 | - what packets are involved with each probe? 23 | - what is Echo request? 24 | - what is Echo reply? 25 | 26 | Open the content of the ICMP header. Analyse it. 27 | 28 | Further work: 29 | 30 | Repeat the same procedure with the increased packet size (1000 bytes, 2000 bytes). Check 'man ping' for the info on how to use ping. What happens? Does the fragmentation occur? Analyse it. 31 | 32 | -------------------------------------------------------------------------------- /Ping/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b ping.imn | awk '/Experiment/{print $4; exit}'` 12 | startCheck "$eid" 13 | 14 | netDump pc1@$eid eth0 icmp 15 | if [ $? -eq 0 ]; then 16 | n=1 17 | pingStatus=1 18 | while [ $n -le 20 ] && [ $pingStatus -ne 0 ]; do 19 | echo "Ping test $n / 20 ..." 20 | pingCheck pc1@$eid 10.0.8.10 2 21 | pingStatus=$? 22 | n=`expr $n + 1` 23 | done 24 | if [ $pingStatus -eq 0 ]; then 25 | 26 | sleep 2 27 | readDump pc1@$eid eth0 28 | err=$? 29 | else 30 | err=1 31 | fi 32 | else 33 | err=1 34 | fi 35 | 36 | imunes$legacy -b -e $eid 37 | 38 | thereWereErrors $err 39 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # imunes-examples 2 | Examples for the IMUNES network emulator. 3 | 4 | IMUNES is a lightweight network emulator that runs on top of the FreeBSD kernel 5 | which is used to create a virtual network topology by using FreeBSD 6 | [jails](https://www.freebsd.org/doc/handbook/jails.html) and 7 | [netgraph](https://www.freebsd.org/cgi/man.cgi?netgraph%284%29). 8 | 9 | To run the scenarios, after starting the virtual machine, just clone the git 10 | repository into the machine and follow the instructions. 11 | 12 | Additional instructions and explanations are available on our [wiki page](http://imunes.tel.fer.hr/trac/wiki/WikiImunesExamples). 13 | 14 | The table below shows which tests work on Linux and FreeBSD operating systems. 15 | 16 | | | Linux | FreeBSD | 17 | |------------------|:-----------:|:-----------:| 18 | | benchmark | YES | YES | 19 | | DHCP | YES | YES | 20 | | DNS+Mail+WEB | YES | YES | 21 | | functional_tests | NO | YES | 22 | | gif | NO | YES | 23 | | OSPF | YES | YES* | 24 | | Ping | YES | YES | 25 | | RIP | YES | YES | 26 | | services | YES | YES | 27 | | Traceroute | YES | YES | 28 | 29 | *problems with quagga OSPFv2 routing daemon on FreeBSD-9.3 30 | -------------------------------------------------------------------------------- /RIP/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | slow=0 7 | legacy="" 8 | if test -n "$LEGACY"; then 9 | legacy=" -l" 10 | fi 11 | 12 | eid=`imunes$legacy -b RIP1.imn | awk '/Experiment/{print $4; exit}'` 13 | startCheck "$eid" 14 | 15 | sleep 10 16 | netDump router2@$eid eth2 17 | if [ $? -eq 0 ]; then 18 | pingCheck pc@$eid 10.0.4.10 19 | if [ $? -eq 0 ]; then 20 | echo "########## router2@$eid routes" 21 | himage -nt router2@$eid vtysh << __END__ 22 | show ip rip 23 | show ipv6 ripng 24 | exit 25 | __END__ 26 | sleep 30 27 | if [ $? -eq 0 ]; then 28 | ping6Check pc@$eid fc00:1::10 29 | if [ $? -eq 0 ]; then 30 | sleep 2 31 | echo "" 32 | readDump router2@$eid eth2 33 | if [ $? -ne 0 ]; then 34 | err=1 35 | fi 36 | else 37 | err=1 38 | fi 39 | else 40 | err=1 41 | fi 42 | 43 | if [ $slow -eq 1 ]; then 44 | stopNode router7@$eid 45 | if [ $? -eq 0 ]; then 46 | sleep 190 47 | 48 | echo "" 49 | echo "########## router2@$eid routes after 3 minutes" 50 | himage -nt router2@$eid vtysh << __END__ 51 | show ip rip 52 | show ipv6 ripng 53 | exit 54 | __END__ 55 | 56 | startNode router7@$eid 57 | if [ $? -eq 0 ]; then 58 | sleep 10 59 | pingCheck pc@$eid 10.0.4.10 60 | if [ $? -eq 0 ]; then 61 | sleep 4 62 | readDump router2@$eid eth2 63 | else 64 | err=1 65 | fi 66 | ping6Check pc@$eid fc00:1::10 67 | if [ $? -eq 0 ]; then 68 | sleep 4 69 | readDump router2@$eid eth2 70 | else 71 | err=1 72 | fi 73 | else 74 | err=1 75 | fi 76 | else 77 | err=1 78 | fi 79 | fi 80 | else 81 | err=1 82 | fi 83 | else 84 | err=1 85 | fi 86 | 87 | imunes$legacy -b -e $eid 88 | 89 | thereWereErrors $err 90 | -------------------------------------------------------------------------------- /Traceroute/README: -------------------------------------------------------------------------------- 1 | 2 | The purpose of this example is to demonstrate how traceroute works. 3 | 4 | Start the simulation. 5 | 6 | Start Ethereal on eth0 of pc1. 7 | 8 | Open capture, and check "Update list of packets in real time". 9 | 10 | Start capturing. 11 | 12 | Open shell window on pc1. 13 | 14 | Check the route to the server (10.0.8.10). Analyse the response from the traceroute and compare it with the network. Check the IP addresses of router interfaces involved in traffic routing. 15 | 16 | Open shell window on the server. 17 | 18 | Check the route back to the pc1 (10.0.0.21). Analyse the response from the traceroute and compare it with the network. Check the IP addresses of router interfaces involved in traffic routing. Compare it with the IP address in the last traceroute. 19 | 20 | Stop capturing after approx. 10 seconds. 21 | 22 | Analyse the traffic from both traceroutes. 23 | 24 | The first trace should show all datagrams sent from pc1. 25 | 26 | The second trace should show only the datagrams that actually reached pc1. Where are the others? Explain! 27 | 28 | Further work: 29 | 30 | Start the capture on one of the router's interfaces along the path. What traffic does that router "see" on the selected interface? Why? 31 | -------------------------------------------------------------------------------- /Traceroute/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b traceroute.imn | awk '/Experiment/{print $4; exit}'` 12 | startCheck "$eid" 13 | 14 | netDump pc1@$eid eth0 15 | if [ $? -eq 0 ]; then 16 | n=1 17 | traceStat=1 18 | while [ $n -le 20 ] && [ $traceStat -ne 0 ]; do 19 | sleep 1 20 | echo "Traceroute test $n / 20 ..." 21 | traceCheck pc1@$eid 10.0.8.10 22 | traceStat=$? 23 | n=`expr $n + 1` 24 | done 25 | if [ $traceStat -eq 0 ]; then 26 | traceCheck server@$eid 10.0.0.21 27 | if [ $? -eq 0 ]; then 28 | sleep 3 29 | readDump pc1@$eid eth0 30 | err=$? 31 | else 32 | err=1 33 | fi 34 | else 35 | err=1 36 | fi 37 | else 38 | err=1 39 | fi 40 | 41 | imunes$legacy -b -e $eid 42 | 43 | thereWereErrors $err 44 | -------------------------------------------------------------------------------- /benchmark/h-s-h.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type host 3 | network-config { 4 | hostname host1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.10/24 8 | ipv6 address fc00::10/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/24 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | canvas c0 18 | iconcoords {120.0 216.0} 19 | labelcoords {120.0 257.0} 20 | interface-peer {eth0 n2} 21 | } 22 | 23 | node n1 { 24 | type host 25 | network-config { 26 | hostname host2 27 | ! 28 | interface eth0 29 | ip address 10.0.0.11/24 30 | ipv6 address fc00::11/64 31 | mac address 42:00:aa:00:00:01 32 | ! 33 | interface lo0 34 | type lo 35 | ip address 127.0.0.1/24 36 | ipv6 address ::1/128 37 | ! 38 | } 39 | canvas c0 40 | iconcoords {792.0 216.0} 41 | labelcoords {792.0 257.0} 42 | interface-peer {eth0 n2} 43 | } 44 | 45 | node n2 { 46 | type lanswitch 47 | network-config { 48 | hostname switch2 49 | ! 50 | } 51 | canvas c0 52 | iconcoords {456.0 216.0} 53 | labelcoords {456.0 244.0} 54 | interface-peer {e0 n0} 55 | interface-peer {e1 n1} 56 | } 57 | 58 | link l0 { 59 | nodes {n0 n2} 60 | bandwidth 0 61 | } 62 | 63 | link l1 { 64 | nodes {n2 n1} 65 | bandwidth 0 66 | } 67 | 68 | canvas c0 { 69 | name {Canvas0} 70 | } 71 | 72 | option show { 73 | interface_names yes 74 | ip_addresses yes 75 | ipv6_addresses no 76 | node_labels yes 77 | link_labels yes 78 | background_images no 79 | annotations yes 80 | grid yes 81 | iconSize normal 82 | zoom 1.0 83 | } 84 | 85 | -------------------------------------------------------------------------------- /benchmark/p-p.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/24 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | canvas c0 18 | iconcoords {264.0 216.0} 19 | labelcoords {264.0 252.0} 20 | interface-peer {eth0 n1} 21 | } 22 | 23 | node n1 { 24 | type pc 25 | network-config { 26 | hostname pc2 27 | ! 28 | interface eth0 29 | ip address 10.0.0.21/24 30 | ipv6 address fc00::21/64 31 | mac address 42:00:aa:00:00:01 32 | ! 33 | interface lo0 34 | type lo 35 | ip address 127.0.0.1/24 36 | ipv6 address ::1/128 37 | ! 38 | } 39 | canvas c0 40 | iconcoords {648.0 216.0} 41 | labelcoords {648.0 252.0} 42 | interface-peer {eth0 n0} 43 | } 44 | 45 | link l0 { 46 | nodes {n0 n1} 47 | bandwidth 0 48 | } 49 | 50 | canvas c0 { 51 | name {Canvas0} 52 | } 53 | 54 | option show { 55 | interface_names yes 56 | ip_addresses yes 57 | ipv6_addresses no 58 | node_labels yes 59 | link_labels yes 60 | background_images no 61 | annotations yes 62 | grid yes 63 | iconSize normal 64 | zoom 1.0 65 | } 66 | 67 | -------------------------------------------------------------------------------- /benchmark/p-s-p.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type lanswitch 3 | network-config { 4 | hostname switch1 5 | ! 6 | } 7 | canvas c0 8 | iconcoords {408.0 216.0} 9 | labelcoords {408.0 244.0} 10 | interface-peer {e0 n1} 11 | interface-peer {e1 n2} 12 | } 13 | 14 | node n1 { 15 | type pc 16 | network-config { 17 | hostname pc1 18 | ! 19 | interface eth0 20 | ip address 10.0.0.20/24 21 | ipv6 address fc00::20/64 22 | mac address 42:00:aa:00:00:00 23 | ! 24 | interface lo0 25 | type lo 26 | ip address 127.0.0.1/24 27 | ipv6 address ::1/128 28 | ! 29 | } 30 | canvas c0 31 | iconcoords {120.0 216.0} 32 | labelcoords {120.0 252.0} 33 | interface-peer {eth0 n0} 34 | } 35 | 36 | node n2 { 37 | type pc 38 | network-config { 39 | hostname pc2 40 | ! 41 | interface eth0 42 | ip address 10.0.0.21/24 43 | ipv6 address fc00::21/64 44 | mac address 42:00:aa:00:00:01 45 | ! 46 | interface lo0 47 | type lo 48 | ip address 127.0.0.1/24 49 | ipv6 address ::1/128 50 | ! 51 | } 52 | canvas c0 53 | iconcoords {696.0 216.0} 54 | labelcoords {696.0 252.0} 55 | interface-peer {eth0 n0} 56 | } 57 | 58 | link l0 { 59 | nodes {n1 n0} 60 | bandwidth 0 61 | } 62 | 63 | link l1 { 64 | nodes {n0 n2} 65 | bandwidth 0 66 | } 67 | 68 | canvas c0 { 69 | name {Canvas0} 70 | } 71 | 72 | option show { 73 | interface_names yes 74 | ip_addresses yes 75 | ipv6_addresses no 76 | node_labels yes 77 | link_labels yes 78 | background_images no 79 | annotations yes 80 | grid yes 81 | iconSize normal 82 | zoom 1.0 83 | } 84 | 85 | -------------------------------------------------------------------------------- /benchmark/pp.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface lo0 7 | type lo 8 | ip address 127.0.0.1/24 9 | ipv6 address ::1/128 10 | ! 11 | } 12 | canvas c0 13 | iconcoords {216.0 264.0} 14 | labelcoords {216.0 300.0} 15 | } 16 | 17 | node n1 { 18 | type pc 19 | network-config { 20 | hostname pc2 21 | ! 22 | interface lo0 23 | type lo 24 | ip address 127.0.0.1/24 25 | ipv6 address ::1/128 26 | ! 27 | } 28 | canvas c0 29 | iconcoords {648.0 264.0} 30 | labelcoords {648.0 300.0} 31 | } 32 | 33 | canvas c0 { 34 | name {Canvas0} 35 | } 36 | 37 | option show { 38 | interface_names yes 39 | ip_addresses yes 40 | ipv6_addresses no 41 | node_labels yes 42 | link_labels yes 43 | background_images no 44 | annotations yes 45 | grid yes 46 | iconSize normal 47 | zoom 1.0 48 | } 49 | 50 | -------------------------------------------------------------------------------- /common/start_functions.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | os=`uname -s`; 4 | 5 | isOSlinux() { 6 | if test $os = "Linux"; then 7 | true; 8 | else 9 | false; 10 | fi 11 | } 12 | 13 | isOSfreebsd() { 14 | if test $os = "FreeBSD"; then 15 | true; 16 | else 17 | false; 18 | fi 19 | } 20 | 21 | # Error check 22 | error() { 23 | echo $* 24 | exit 2 25 | } 26 | 27 | # isEidRunning eid 28 | isEidRunning() { 29 | err=`himage -l | awk '{print $1}' | grep -x $1` \ 30 | || error "Cannot find experiment $1. Is simulation started? Try: Experiment->Execute" 31 | } 32 | 33 | # isNodeRunning node eid 34 | isNodeRunning() { 35 | node=$1 36 | if [ $# -ne 1 ]; then 37 | isEidRunning $2 38 | else 39 | eid=`himage -e $1` \ 40 | || error "Cannot find node $1. Is simulation started? Try: Experiment->Execute" 41 | echo "$eid" 42 | fi 43 | } 44 | 45 | # hasPackage node eid pkgName 46 | hasPackage() { 47 | pkg info > /dev/null 2>&1 48 | if [ $? -eq 0 ]; then 49 | himage $1@$2 pkg info | grep "$3" > /dev/null 2>&1 50 | err=$? 51 | else 52 | himage $1@$2 pkg_info | grep "$3" > /dev/null 2>&1 53 | err=$? 54 | fi 55 | if [ $err -ne 0 ]; then 56 | error "*** Package $3 is not installed on $1@$2" 57 | fi 58 | } 59 | -------------------------------------------------------------------------------- /functional_tests/empty_ifaces/empty.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/8 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | auto_default_routes enabled 18 | canvas c0 19 | iconcoords {120 288} 20 | labelcoords {120 319} 21 | interface-peer {eth0 n1} 22 | } 23 | 24 | node n1 { 25 | type router 26 | model frr 27 | network-config { 28 | hostname router1 29 | ! 30 | interface eth1 31 | ipv6 address fc00:1::1/64 32 | mac address 42:00:aa:00:00:02 33 | ip address 20.0.0.1/24 34 | ! 35 | interface eth0 36 | ip address 10.0.0.1/24 37 | ipv6 address fc00::1/64 38 | mac address 42:00:aa:00:00:01 39 | ! 40 | interface lo0 41 | type lo 42 | ip address 127.0.0.1/8 43 | ipv6 address ::1/128 44 | ! 45 | router rip 46 | redistribute static 47 | redistribute connected 48 | redistribute ospf 49 | network 0.0.0.0/0 50 | ! 51 | router ripng 52 | redistribute static 53 | redistribute connected 54 | redistribute ospf6 55 | network ::/0 56 | ! 57 | } 58 | auto_default_routes enabled 59 | canvas c0 60 | iconcoords {648 288} 61 | labelcoords {648 313} 62 | interface-peer {eth0 n0} 63 | interface-peer {eth1 ""} 64 | } 65 | 66 | link l0 { 67 | nodes {n0 n1} 68 | ifaces {eth0 eth0} 69 | } 70 | 71 | canvas c0 { 72 | name {Canvas0} 73 | } 74 | 75 | option show { 76 | interface_names yes 77 | ip_addresses yes 78 | ipv6_addresses yes 79 | node_labels yes 80 | link_labels yes 81 | background_images no 82 | annotations yes 83 | hostsAutoAssign no 84 | grid yes 85 | iconSize normal 86 | zoom 1.0 87 | } 88 | 89 | -------------------------------------------------------------------------------- /functional_tests/empty_ifaces/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b empty.imn | tail -1 | cut -d' ' -f4` 12 | startCheck "$eid" 13 | 14 | netDump pc1@$eid eth0 icmp 15 | if [ $? -eq 0 ]; then 16 | sleep 4 17 | pingCheck pc1@$eid 20.0.0.1 2 18 | if [ $? -eq 0 ]; then 19 | sleep 2 20 | readDump pc1@$eid eth0 21 | err=$? 22 | else 23 | err=1 24 | fi 25 | else 26 | err=1 27 | fi 28 | 29 | imunes$legacy -b -e $eid 30 | 31 | thereWereErrors $err 32 | -------------------------------------------------------------------------------- /functional_tests/extelem/extelem.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/8 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | auto_default_routes enabled 18 | canvas c0 19 | iconcoords {144 96} 20 | labelcoords {144 127} 21 | interface-peer {eth0 n2} 22 | } 23 | 24 | node n1 { 25 | type pc 26 | network-config { 27 | hostname pc2 28 | ! 29 | interface eth0 30 | mac address 42:00:aa:00:00:01 31 | ip address 10.0.0.21/24 32 | ipv6 address fc00::21/64 33 | ! 34 | interface lo0 35 | type lo 36 | ip address 127.0.0.1/8 37 | ipv6 address ::1/128 38 | ! 39 | } 40 | auto_default_routes enabled 41 | canvas c0 42 | iconcoords {144 456} 43 | labelcoords {144 487} 44 | interface-peer {eth0 n2} 45 | } 46 | 47 | node n2 { 48 | type extelem 49 | external-ifcs {{x0 extelem0} {x1 extelem1}} 50 | network-config { 51 | hostname xel1 52 | ! 53 | } 54 | canvas c0 55 | iconcoords {528 264} 56 | labelcoords {528 289} 57 | interface-peer {x0 n0} 58 | interface-peer {x1 n1} 59 | } 60 | 61 | link l0 { 62 | nodes {n0 n2} 63 | ifaces {eth0 x0} 64 | } 65 | 66 | link l1 { 67 | nodes {n2 n1} 68 | ifaces {x1 eth0} 69 | } 70 | 71 | canvas c0 { 72 | name {Canvas0} 73 | } 74 | 75 | option show { 76 | interface_names yes 77 | ip_addresses yes 78 | ipv6_addresses yes 79 | node_labels yes 80 | link_labels yes 81 | background_images no 82 | annotations yes 83 | hostsAutoAssign no 84 | grid yes 85 | iconSize normal 86 | zoom 1.0 87 | } 88 | 89 | -------------------------------------------------------------------------------- /functional_tests/extelem/extelem_directlink.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/8 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | auto_default_routes enabled 18 | canvas c0 19 | iconcoords {144 96} 20 | labelcoords {144 127} 21 | interface-peer {eth0 n2} 22 | } 23 | 24 | node n1 { 25 | type pc 26 | network-config { 27 | hostname pc2 28 | ! 29 | interface eth0 30 | mac address 42:00:aa:00:00:01 31 | ip address 10.0.0.21/24 32 | ipv6 address fc00::21/64 33 | ! 34 | interface lo0 35 | type lo 36 | ip address 127.0.0.1/8 37 | ipv6 address ::1/128 38 | ! 39 | } 40 | auto_default_routes enabled 41 | canvas c0 42 | iconcoords {144 456} 43 | labelcoords {144 487} 44 | interface-peer {eth0 n2} 45 | } 46 | 47 | node n2 { 48 | type extelem 49 | external-ifcs {{x0 extelem0} {x1 extelem1}} 50 | network-config { 51 | hostname xel1 52 | ! 53 | } 54 | canvas c0 55 | iconcoords {528 264} 56 | labelcoords {528 289} 57 | interface-peer {x0 n0} 58 | interface-peer {x1 n1} 59 | } 60 | 61 | link l0 { 62 | nodes {n0 n2} 63 | ifaces {eth0 x0} 64 | direct 1 65 | } 66 | 67 | link l1 { 68 | nodes {n2 n1} 69 | ifaces {x1 eth0} 70 | direct 1 71 | } 72 | 73 | canvas c0 { 74 | name {Canvas0} 75 | } 76 | 77 | option show { 78 | interface_names yes 79 | ip_addresses yes 80 | ipv6_addresses yes 81 | node_labels yes 82 | link_labels yes 83 | background_images no 84 | annotations yes 85 | hostsAutoAssign no 86 | grid yes 87 | iconSize normal 88 | zoom 1.0 89 | } 90 | 91 | -------------------------------------------------------------------------------- /functional_tests/extelem/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | if isOSlinux; then 12 | ip link del extelem0 > /dev/null 2>&1 13 | 14 | ip link add name extelem0 type veth peer name extelem1 15 | ip link set extelem0 up 16 | ip link set extelem1 up 17 | else 18 | ngctl msg extlink: shutdown > /dev/null 2>&1 19 | ngctl msg extelem0: shutdown > /dev/null 2>&1 20 | ngctl msg extelem1: shutdown > /dev/null 2>&1 21 | 22 | test0=`printf "mkpeer eiface ether ether \n show .ether" | ngctl -f - | head -n1 | awk '{print $2}'` 23 | ngctl name $test0: extelem0 24 | ifconfig $test0 name extelem0 25 | ifconfig extelem0 up 26 | test1=`printf "mkpeer eiface ether ether \n show .ether" | ngctl -f - | head -n1 | awk '{print $2}'` 27 | ngctl name $test1: extelem1 28 | ifconfig $test1 name extelem1 29 | ifconfig extelem1 up 30 | 31 | ngctl mkpeer extelem0: pipe ether upper 32 | ngctl name extelem0:ether extlink 33 | ngctl connect extlink: extelem1: lower ether 34 | ngctl msg extlink: setcfg {header_offset=14} 35 | fi 36 | 37 | eid=`imunes$legacy -b extelem.imn | tail -1 | cut -d' ' -f4` 38 | startCheck "$eid" 39 | 40 | netDump pc1@$eid eth0 icmp 41 | if [ $? -eq 0 ]; then 42 | sleep 4 43 | pingCheck pc1@$eid 10.0.0.21 2 44 | if [ $? -eq 0 ]; then 45 | sleep 2 46 | readDump pc1@$eid eth0 47 | err=$? 48 | else 49 | err=1 50 | fi 51 | else 52 | err=1 53 | fi 54 | 55 | imunes$legacy -b -e $eid 56 | 57 | eid=`imunes$legacy -b extelem_directlink.imn | tail -1 | cut -d' ' -f4` 58 | startCheck "$eid" 59 | 60 | netDump pc1@$eid eth0 icmp 61 | if [ $? -eq 0 ]; then 62 | sleep 4 63 | pingCheck pc1@$eid 10.0.0.21 2 64 | if [ $? -eq 0 ]; then 65 | sleep 2 66 | readDump pc1@$eid eth0 67 | err=$? 68 | else 69 | err=1 70 | fi 71 | else 72 | err=1 73 | fi 74 | 75 | imunes$legacy -b -e $eid 76 | 77 | if isOSlinux; then 78 | ip link del extelem0 79 | else 80 | ngctl msg extlink: shutdown 81 | ngctl msg extelem0: shutdown 82 | ngctl msg extelem1: shutdown 83 | fi 84 | 85 | thereWereErrors $err 86 | -------------------------------------------------------------------------------- /functional_tests/rj45/rj45.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00:2::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/24 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | canvas c0 18 | iconcoords {96.0 240.0} 19 | labelcoords {96.0 276.0} 20 | interface-peer {eth0 n2} 21 | } 22 | 23 | node n1 { 24 | type pc 25 | network-config { 26 | hostname pc2 27 | ! 28 | interface eth0 29 | ipv6 address fc00:3::20/64 30 | mac address 42:00:aa:00:00:01 31 | ip address 10.0.0.21/24 32 | ! 33 | interface lo0 34 | type lo 35 | ip address 127.0.0.1/24 36 | ipv6 address ::1/128 37 | ! 38 | } 39 | canvas c0 40 | iconcoords {792.0 240.0} 41 | labelcoords {792.0 276.0} 42 | interface-peer {eth0 n3} 43 | } 44 | 45 | node n2 { 46 | type rj45 47 | network-config { 48 | hostname rj450 49 | ! 50 | vlan 51 | enabled 0 52 | tag 123 53 | ! 54 | } 55 | canvas c0 56 | iconcoords {336.0 264.0} 57 | labelcoords {336.0 298.0} 58 | interface-peer {0 n0} 59 | } 60 | 61 | node n3 { 62 | type rj45 63 | network-config { 64 | hostname rj451 65 | ! 66 | vlan 67 | enabled 0 68 | tag 123 69 | ! 70 | } 71 | canvas c0 72 | iconcoords {576.0 264.0} 73 | labelcoords {576.0 298.0} 74 | interface-peer {0 n1} 75 | } 76 | 77 | link l0 { 78 | nodes {n0 n2} 79 | ifaces {eth0 0} 80 | } 81 | 82 | link l1 { 83 | nodes {n1 n3} 84 | ifaces {eth0 0} 85 | } 86 | 87 | canvas c0 { 88 | name {Canvas0} 89 | } 90 | 91 | option show { 92 | interface_names yes 93 | ip_addresses yes 94 | ipv6_addresses no 95 | node_labels yes 96 | link_labels yes 97 | background_images no 98 | annotations yes 99 | hostsAutoAssign no 100 | grid yes 101 | iconSize normal 102 | zoom 1.0 103 | } 104 | 105 | -------------------------------------------------------------------------------- /functional_tests/rj45/rj45_directlink.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00:2::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/24 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | canvas c0 18 | iconcoords {96.0 240.0} 19 | labelcoords {96.0 276.0} 20 | interface-peer {eth0 n2} 21 | } 22 | 23 | node n1 { 24 | type pc 25 | network-config { 26 | hostname pc2 27 | ! 28 | interface eth0 29 | ipv6 address fc00:3::20/64 30 | mac address 42:00:aa:00:00:01 31 | ip address 10.0.0.21/24 32 | ! 33 | interface lo0 34 | type lo 35 | ip address 127.0.0.1/24 36 | ipv6 address ::1/128 37 | ! 38 | } 39 | canvas c0 40 | iconcoords {792.0 240.0} 41 | labelcoords {792.0 276.0} 42 | interface-peer {eth0 n3} 43 | } 44 | 45 | node n2 { 46 | type rj45 47 | network-config { 48 | hostname rj450 49 | ! 50 | vlan 51 | enabled 0 52 | tag 123 53 | ! 54 | } 55 | canvas c0 56 | iconcoords {336.0 264.0} 57 | labelcoords {336.0 298.0} 58 | interface-peer {0 n0} 59 | } 60 | 61 | node n3 { 62 | type rj45 63 | network-config { 64 | hostname rj451 65 | ! 66 | vlan 67 | enabled 0 68 | tag 123 69 | ! 70 | } 71 | canvas c0 72 | iconcoords {576.0 264.0} 73 | labelcoords {576.0 298.0} 74 | interface-peer {0 n1} 75 | } 76 | 77 | link l0 { 78 | direct 1 79 | nodes {n0 n2} 80 | ifaces {eth0 0} 81 | } 82 | 83 | link l1 { 84 | direct 1 85 | nodes {n1 n3} 86 | ifaces {eth0 0} 87 | } 88 | 89 | canvas c0 { 90 | name {Canvas0} 91 | } 92 | 93 | option show { 94 | interface_names yes 95 | ip_addresses yes 96 | ipv6_addresses no 97 | node_labels yes 98 | link_labels yes 99 | background_images no 100 | annotations yes 101 | hostsAutoAssign no 102 | grid yes 103 | iconSize normal 104 | zoom 1.0 105 | } 106 | 107 | -------------------------------------------------------------------------------- /functional_tests/rj45/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | if isOSlinux; then 12 | ip link del rj450 > /dev/null 2>&1 13 | 14 | ip link add name rj450 type veth peer name rj451 15 | ip link set rj450 up 16 | ip link set rj451 up 17 | else 18 | ngctl msg rjlink: shutdown > /dev/null 2>&1 19 | ngctl msg rj450: shutdown > /dev/null 2>&1 20 | ngctl msg rj451: shutdown > /dev/null 2>&1 21 | 22 | test0=`printf "mkpeer eiface ether ether \n show .ether" | ngctl -f - | head -n1 | awk '{print $2}'` 23 | ngctl name $test0: rj450 24 | ifconfig $test0 name rj450 25 | ifconfig rj450 up 26 | test1=`printf "mkpeer eiface ether ether \n show .ether" | ngctl -f - | head -n1 | awk '{print $2}'` 27 | ngctl name $test1: rj451 28 | ifconfig $test1 name rj451 29 | ifconfig rj451 up 30 | 31 | ngctl mkpeer rj450: pipe ether upper 32 | ngctl name rj450:ether rjlink 33 | ngctl connect rjlink: rj451: lower ether 34 | ngctl msg rjlink: setcfg {header_offset=14} 35 | fi 36 | 37 | eid=`imunes$legacy -b rj45.imn | tail -1 | cut -d' ' -f4` 38 | startCheck "$eid" 39 | 40 | netDump pc1@$eid eth0 icmp 41 | if [ $? -eq 0 ]; then 42 | sleep 4 43 | pingCheck pc1@$eid 10.0.0.21 2 44 | if [ $? -eq 0 ]; then 45 | sleep 2 46 | readDump pc1@$eid eth0 47 | err=$? 48 | else 49 | err=1 50 | fi 51 | else 52 | err=1 53 | fi 54 | 55 | imunes$legacy -b -e $eid 56 | 57 | eid=`imunes$legacy -b rj45_directlink.imn | tail -1 | cut -d' ' -f4` 58 | startCheck "$eid" 59 | 60 | netDump pc1@$eid eth0 icmp 61 | if [ $? -eq 0 ]; then 62 | sleep 4 63 | pingCheck pc1@$eid 10.0.0.21 2 64 | if [ $? -eq 0 ]; then 65 | sleep 2 66 | readDump pc1@$eid eth0 67 | err=$? 68 | else 69 | err=1 70 | fi 71 | else 72 | err=1 73 | fi 74 | 75 | imunes$legacy -b -e $eid 76 | 77 | if isOSlinux; then 78 | ip link del rj450 79 | else 80 | ngctl msg rjlink: shutdown 81 | ngctl msg rj450: shutdown 82 | ngctl msg rj451: shutdown 83 | fi 84 | 85 | thereWereErrors $err 86 | -------------------------------------------------------------------------------- /functional_tests/rj45_vlan/rj45vlan.imn: -------------------------------------------------------------------------------- 1 | node n0 { 2 | type pc 3 | network-config { 4 | hostname pc1 5 | ! 6 | interface eth0 7 | ip address 10.0.0.20/24 8 | ipv6 address fc00:2::20/64 9 | mac address 42:00:aa:00:00:00 10 | ! 11 | interface lo0 12 | type lo 13 | ip address 127.0.0.1/24 14 | ipv6 address ::1/128 15 | ! 16 | } 17 | canvas c0 18 | iconcoords {96.0 240.0} 19 | labelcoords {96.0 276.0} 20 | interface-peer {eth0 n2} 21 | } 22 | 23 | node n1 { 24 | type pc 25 | network-config { 26 | hostname pc2 27 | ! 28 | interface eth0 29 | ipv6 address fc00:3::20/64 30 | mac address 42:00:aa:00:00:01 31 | ip address 10.0.0.21/24 32 | ! 33 | interface lo0 34 | type lo 35 | ip address 127.0.0.1/24 36 | ipv6 address ::1/128 37 | ! 38 | } 39 | canvas c0 40 | iconcoords {792.0 240.0} 41 | labelcoords {792.0 276.0} 42 | interface-peer {eth0 n3} 43 | } 44 | 45 | node n2 { 46 | type rj45 47 | network-config { 48 | hostname rjvlan0 49 | ! 50 | vlan 51 | enabled 1 52 | tag 123 53 | ! 54 | } 55 | canvas c0 56 | iconcoords {336.0 264.0} 57 | labelcoords {336.0 298.0} 58 | interface-peer {0 n0} 59 | } 60 | 61 | node n3 { 62 | type rj45 63 | network-config { 64 | hostname rjvlan1 65 | ! 66 | vlan 67 | enabled 1 68 | tag 123 69 | ! 70 | } 71 | canvas c0 72 | iconcoords {576.0 264.0} 73 | labelcoords {576.0 298.0} 74 | interface-peer {0 n1} 75 | } 76 | 77 | link l0 { 78 | nodes {n0 n2} 79 | } 80 | 81 | link l1 { 82 | nodes {n1 n3} 83 | } 84 | 85 | canvas c0 { 86 | name {Canvas0} 87 | } 88 | 89 | option show { 90 | interface_names yes 91 | ip_addresses yes 92 | ipv6_addresses no 93 | node_labels yes 94 | link_labels yes 95 | background_images no 96 | annotations yes 97 | hostsAutoAssign no 98 | grid yes 99 | iconSize normal 100 | zoom 1.0 101 | } 102 | 103 | -------------------------------------------------------------------------------- /gif/start_gif.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/start_functions.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | eid=$1 7 | isEidRunning $eid 8 | else 9 | eid=`isNodeRunning router1` 10 | if [ $? -ne 0 ]; then 11 | exit 1 12 | fi 13 | fi 14 | 15 | echo "Configuring gif tunnel on router1..." 16 | himage router1@$eid sysctl net.link.gif.max_nesting=2 17 | himage router1@$eid sysctl net.inet6.ip6.auto_linklocal=0 18 | gif1=`himage router1@$eid ifconfig gif create` 19 | himage router1@$eid ifconfig $gif1 tunnel 10.0.0.1 10.0.1.2 20 | himage router1@$eid ifconfig $gif1 inet6 fe80::1%$gif1 prefixlen 64 21 | himage router1@$eid ifconfig $gif1 inet6 fc00:1::100 fc00:3::100 prefixlen 128 22 | himage router1@$eid sysctl net.inet6.ip6.auto_linklocal=1 23 | echo "Done." 24 | 25 | echo "Configuring gif tunnel on router2..." 26 | himage router2@$eid sysctl net.link.gif.max_nesting=2 27 | himage router2@$eid sysctl net.inet6.ip6.auto_linklocal=0 28 | gif2=`himage router2@$eid ifconfig gif create` 29 | himage router2@$eid ifconfig $gif2 tunnel 10.0.1.2 10.0.0.1 30 | himage router2@$eid ifconfig $gif2 inet6 fe80::2%$gif2 prefixlen 64 31 | himage router2@$eid ifconfig $gif2 inet6 fc00:3::100 fc00:1::100 prefixlen 128 32 | himage router2@$eid sysctl net.inet6.ip6.auto_linklocal=1 33 | echo "Done." 34 | -------------------------------------------------------------------------------- /gif/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | if isOSlinux; then 6 | echo "This example currently runs only on FreeBSD" 7 | thereWereErrors 1 8 | exit 0 9 | fi 10 | 11 | err=0 12 | legacy="" 13 | if test -n "$LEGACY"; then 14 | legacy=" -l" 15 | fi 16 | 17 | eid=`imunes$legacy -b gif.imn | awk '/Experiment/{print $4; exit}'` 18 | startCheck "$eid" 19 | 20 | ./start_gif.sh $eid 21 | echo "Waiting for 20 seconds..." 22 | sleep 20 23 | 24 | netDump pc1@$eid eth0 icmp6 25 | if [ $? -eq 0 ]; then 26 | n=1 27 | pingStatus=1 28 | while [ $n -le 20 ] && [ $pingStatus -ne 0 ]; do 29 | echo "Ping test $n / 20 ..." 30 | ping6Check pc1@$eid fc00:4::20 2 31 | pingStatus=$? 32 | n=`expr $n + 1` 33 | done 34 | if [ $pingStatus -eq 0 ]; then 35 | sleep 2 36 | readDump pc1@$eid eth0 37 | err=$? 38 | else 39 | err=1 40 | fi 41 | else 42 | err=1 43 | fi 44 | 45 | imunes$legacy -b -e $eid 46 | 47 | thereWereErrors $err 48 | -------------------------------------------------------------------------------- /ipsec44/certs: -------------------------------------------------------------------------------- 1 | ../ipsec_common/certs -------------------------------------------------------------------------------- /ipsec44/moon: -------------------------------------------------------------------------------- 1 | ../ipsec_common/moon -------------------------------------------------------------------------------- /ipsec44/moon44_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net44-net44 17 | left=10.0.2.1 18 | leftsubnet=10.0.0.0/24 19 | leftcert=moonCert.pem 20 | leftid=@moon.strongswan.org 21 | leftfirewall=no 22 | right=10.0.3.1 23 | rightsubnet=10.0.1.0/24 24 | rightid=@sun.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec44/start44.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | moon="moon@$1" 7 | sun="sun@$1" 8 | else 9 | moon="moon" 10 | sun="sun" 11 | fi 12 | 13 | if isOSlinux; then 14 | DIR="/etc" 15 | else 16 | DIR="/usr/local/etc" 17 | kldload ipsec > /dev/null 2>&1 18 | fi 19 | 20 | hcp moon44_ipsec.conf ${moon}:${DIR}/ipsec.conf 21 | hcp sun44_ipsec.conf ${sun}:${DIR}/ipsec.conf 22 | 23 | hcp -r moon/* ${moon}:${DIR}/ 24 | hcp -r sun/* ${sun}:${DIR}/ 25 | 26 | himage -nt $moon ipsec start 27 | himage -nt $sun ipsec start 28 | 29 | steps=50 30 | for i in `seq 1 $steps` 31 | do 32 | himage $moon ipsec statusall 2>&1 | grep ^[[:space:]]*net44-net44: >/dev/null 33 | er1=$? 34 | himage $sun ipsec statusall 2>&1 | grep ^[[:space:]]*net44-net44: >/dev/null 35 | er2=$? 36 | [ $er1 -eq 0 -a $er2 -eq 0 ] && himage $moon ipsec up net44-net44 && exit 0 37 | sleep 0.1 38 | done 39 | 40 | exit 1 41 | -------------------------------------------------------------------------------- /ipsec44/sun: -------------------------------------------------------------------------------- 1 | ../ipsec_common/sun -------------------------------------------------------------------------------- /ipsec44/sun44_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net44-net44 17 | left=10.0.3.1 18 | leftsubnet=10.0.1.0/24 19 | leftcert=sunCert.pem 20 | leftid=@sun.strongswan.org 21 | leftfirewall=no 22 | right=%any 23 | rightsubnet=10.0.0.0/24 24 | rightid=@moon.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec44/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | err=0 5 | legacy="" 6 | if test -n "$LEGACY"; then 7 | legacy=" -l" 8 | fi 9 | 10 | eid=`imunes$legacy -b ipsec44.imn | tail -1 | cut -d' ' -f4` 11 | startCheck "$eid" 12 | 13 | sleep 3 14 | ./start44.sh $eid 15 | if [ $? -eq 0 ]; then 16 | netDump routerX@$eid eth0 ip 17 | if [ $? -eq 0 ]; then 18 | pingCheck pc1@$eid 10.0.1.20 2 19 | if [ $? -eq 0 ]; then 20 | sleep 2 21 | esps=`readDump routerX@$eid eth0` 22 | if [ $? -eq 0 ]; then 23 | echo "$esps" 24 | echo $esps | grep -q "ESP" 25 | if [ $? -ne 0 ]; then 26 | echo "" 27 | echo "********* NO ESP ERROR ***********" 28 | err=1 29 | fi 30 | else 31 | echo $esps 32 | err=1 33 | fi 34 | else 35 | err=1 36 | fi 37 | else 38 | err=1 39 | fi 40 | else 41 | echo "" 42 | echo "********** START44 ERROR **********" 43 | err=1 44 | fi 45 | 46 | imunes$legacy -b -e $eid 47 | 48 | thereWereErrors $err 49 | -------------------------------------------------------------------------------- /ipsec46/certs: -------------------------------------------------------------------------------- 1 | ../ipsec_common/certs -------------------------------------------------------------------------------- /ipsec46/moon: -------------------------------------------------------------------------------- 1 | ../ipsec_common/moon -------------------------------------------------------------------------------- /ipsec46/moon46_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net46-net46 17 | left=aaaa::1 18 | leftsubnet=10.0.0.0/24 19 | leftcert=moonCert.pem 20 | leftid=@moon.strongswan.org 21 | leftfirewall=no 22 | right=bbbb::1 23 | rightsubnet=10.0.1.0/24 24 | rightid=@sun.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec46/start46.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | moon="moon@$1" 7 | sun="sun@$1" 8 | else 9 | moon="moon" 10 | sun="sun" 11 | fi 12 | 13 | if isOSlinux; then 14 | DIR="/etc" 15 | else 16 | DIR="/usr/local/etc" 17 | kldload ipsec > /dev/null 2>&1 18 | fi 19 | 20 | hcp moon46_ipsec.conf $moon:${DIR}/ipsec.conf 21 | hcp sun46_ipsec.conf $sun:${DIR}/ipsec.conf 22 | 23 | hcp -r moon/* $moon:${DIR}/ 24 | hcp -r sun/* $sun:${DIR}/ 25 | 26 | himage -nt $moon ipsec start 27 | himage -nt $sun ipsec start 28 | 29 | steps=50 30 | for i in `seq 1 $steps` 31 | do 32 | himage $moon ipsec statusall 2>&1 | grep ^[[:space:]]*net46-net46: >/dev/null 33 | er1=$? 34 | himage $sun ipsec statusall 2>&1 | grep ^[[:space:]]*net46-net46: >/dev/null 35 | er2=$? 36 | [ $er1 -eq 0 -a $er2 -eq 0 ] && himage $moon ipsec up net46-net46 && exit 0 37 | sleep 0.1 38 | done 39 | 40 | exit 1 41 | -------------------------------------------------------------------------------- /ipsec46/sun: -------------------------------------------------------------------------------- 1 | ../ipsec_common/sun -------------------------------------------------------------------------------- /ipsec46/sun46_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net46-net46 17 | left=bbbb::1 18 | leftsubnet=10.0.1.0/24 19 | leftcert=sunCert.pem 20 | leftid=@sun.strongswan.org 21 | leftfirewall=no 22 | right=%any 23 | rightsubnet=10.0.0.0/24 24 | rightid=@moon.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec46/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b ipsec46.imn | tail -1 | cut -d' ' -f4` 12 | startCheck "$eid" 13 | 14 | sleep 3 15 | ./start46.sh $eid 16 | if [ $? -eq 0 ]; then 17 | netDump routerX@$eid eth0 ip6 18 | if [ $? -eq 0 ]; then 19 | pingCheck pc1@$eid 10.0.1.20 2 20 | if [ $? -eq 0 ]; then 21 | sleep 2 22 | esps=`readDump routerX@$eid eth0` 23 | if [ $? -eq 0 ]; then 24 | echo "$esps" 25 | echo $esps | grep -q "ESP" 26 | if [ $? -ne 0 ]; then 27 | echo "" 28 | echo "********* NO ESP ERROR ***********" 29 | err=1 30 | fi 31 | else 32 | echo $esps 33 | err=1 34 | fi 35 | else 36 | err=1 37 | fi 38 | else 39 | err=1 40 | fi 41 | else 42 | echo "" 43 | echo "********** START46 ERROR **********" 44 | err=1 45 | fi 46 | 47 | imunes$legacy -b -e $eid 48 | 49 | thereWereErrors $err 50 | -------------------------------------------------------------------------------- /ipsec64/certs: -------------------------------------------------------------------------------- 1 | ../ipsec_common/certs -------------------------------------------------------------------------------- /ipsec64/moon: -------------------------------------------------------------------------------- 1 | ../ipsec_common/moon -------------------------------------------------------------------------------- /ipsec64/moon64_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net64-net64 17 | left=10.0.0.1 18 | leftsubnet=aaaa::0/64 19 | leftcert=moonCert.pem 20 | leftid=@moon.strongswan.org 21 | leftfirewall=no 22 | right=10.0.1.2 23 | rightsubnet=bbbb::0/64 24 | rightid=@sun.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec64/start64.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | moon="moon@$1" 7 | sun="sun@$1" 8 | else 9 | moon="moon" 10 | sun="sun" 11 | fi 12 | 13 | if isOSlinux; then 14 | DIR="/etc" 15 | else 16 | DIR="/usr/local/etc" 17 | kldload ipsec > /dev/null 2>&1 18 | fi 19 | 20 | hcp moon64_ipsec.conf $moon:${DIR}/ipsec.conf 21 | hcp sun64_ipsec.conf $sun:${DIR}/ipsec.conf 22 | 23 | hcp -r moon/* $moon:${DIR}/ 24 | hcp -r sun/* $sun:${DIR}/ 25 | 26 | if isOSfreebsd; then 27 | himage $moon ifconfig eth1 inet6 -ifdisabled 28 | himage $sun ifconfig eth0 inet6 -ifdisabled 29 | fi 30 | 31 | himage -nt $moon ipsec start 32 | himage -nt $sun ipsec start 33 | 34 | steps=50 35 | for i in `seq 1 $steps` 36 | do 37 | himage $moon ipsec statusall 2>&1 | grep ^[[:space:]]*net64-net64: >/dev/null 38 | er1=$? 39 | himage $sun ipsec statusall 2>&1 | grep ^[[:space:]]*net64-net64: >/dev/null 40 | er2=$? 41 | [ $er1 -eq 0 -a $er2 -eq 0 ] && himage $moon ipsec up net64-net64 && exit 0 42 | sleep 0.1 43 | done 44 | 45 | exit 1 46 | -------------------------------------------------------------------------------- /ipsec64/sun: -------------------------------------------------------------------------------- 1 | ../ipsec_common/sun -------------------------------------------------------------------------------- /ipsec64/sun64_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net64-net64 17 | left=10.0.1.2 18 | leftsubnet=bbbb::0/64 19 | leftcert=sunCert.pem 20 | leftid=@sun.strongswan.org 21 | leftfirewall=no 22 | right=%any 23 | rightsubnet=aaaa::0/64 24 | rightid=@moon.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec64/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b ipsec64.imn | tail -1 | cut -d' ' -f4` 12 | startCheck "$eid" 13 | 14 | sleep 3 15 | ./start64.sh $eid 16 | if [ $? -eq 0 ]; then 17 | netDump routerX@$eid eth0 ip 18 | if [ $? -eq 0 ]; then 19 | ping6Check pc1@$eid bbbb::20 2 20 | if [ $? -eq 0 ]; then 21 | sleep 2 22 | esps=`readDump routerX@$eid eth0` 23 | if [ $? -eq 0 ]; then 24 | echo "$esps" 25 | echo $esps | grep -q "ESP" 26 | if [ $? -ne 0 ]; then 27 | echo "" 28 | echo "********* NO ESP ERROR ***********" 29 | err=1 30 | fi 31 | else 32 | echo $esps 33 | err=1 34 | fi 35 | else 36 | err=1 37 | fi 38 | else 39 | err=1 40 | fi 41 | else 42 | echo "" 43 | echo "********** START64 ERROR **********" 44 | err=1 45 | fi 46 | 47 | imunes$legacy -b -e $eid 48 | 49 | thereWereErrors $err 50 | -------------------------------------------------------------------------------- /ipsec66/certs: -------------------------------------------------------------------------------- 1 | ../ipsec_common/certs -------------------------------------------------------------------------------- /ipsec66/moon: -------------------------------------------------------------------------------- 1 | ../ipsec_common/moon -------------------------------------------------------------------------------- /ipsec66/moon66_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net66-net66 17 | left=cccc::1 18 | leftsubnet=aaaa::0/64 19 | leftcert=moonCert.pem 20 | leftid=@moon.strongswan.org 21 | leftfirewall=no 22 | right=dddd::1 23 | rightsubnet=bbbb::0/64 24 | rightid=@sun.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec66/start66.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | moon="moon@$1" 7 | sun="sun@$1" 8 | else 9 | moon="moon" 10 | sun="sun" 11 | fi 12 | 13 | if isOSlinux; then 14 | DIR="/etc" 15 | else 16 | DIR="/usr/local/etc" 17 | kldload ipsec > /dev/null 2>&1 18 | fi 19 | 20 | hcp moon66_ipsec.conf $moon:${DIR}/ipsec.conf 21 | hcp sun66_ipsec.conf $sun:${DIR}/ipsec.conf 22 | 23 | hcp -r moon/* $moon:${DIR}/ 24 | hcp -r sun/* $sun:${DIR}/ 25 | 26 | himage -nt $moon ipsec start 27 | himage -nt $sun ipsec start 28 | 29 | steps=50 30 | for i in `seq 1 $steps` 31 | do 32 | himage $moon ipsec statusall 2>&1 | grep ^[[:space:]]*net66-net66: >/dev/null 33 | er1=$? 34 | himage $sun ipsec statusall 2>&1 | grep ^[[:space:]]*net66-net66: >/dev/null 35 | er2=$? 36 | [ $er1 -eq 0 -a $er2 -eq 0 ] && himage $moon ipsec up net66-net66 && exit 0 37 | sleep 0.1 38 | done 39 | 40 | exit 1 41 | -------------------------------------------------------------------------------- /ipsec66/sun: -------------------------------------------------------------------------------- 1 | ../ipsec_common/sun -------------------------------------------------------------------------------- /ipsec66/sun66_ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | esp=null-sha1! 14 | fragmentation=yes 15 | 16 | conn net66-net66 17 | left=dddd::0/64 18 | leftsubnet=bbbb::0/64 19 | leftcert=sunCert.pem 20 | leftid=@sun.strongswan.org 21 | leftfirewall=no 22 | right=%any 23 | rightsubnet=aaaa::0/64 24 | rightid=@moon.strongswan.org 25 | auto=add 26 | -------------------------------------------------------------------------------- /ipsec66/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b ipsec66.imn | tail -1 | cut -d' ' -f4` 12 | startCheck "$eid" 13 | 14 | sleep 3 15 | ./start66.sh $eid 16 | if [ $? -eq 0 ]; then 17 | netDump routerX@$eid eth0 ip6 18 | if [ $? -eq 0 ]; then 19 | ping6Check pc1@$eid bbbb::20 2 20 | if [ $? -eq 0 ]; then 21 | sleep 2 22 | esps=`readDump routerX@$eid eth0` 23 | if [ $? -eq 0 ]; then 24 | echo "$esps" 25 | echo $esps | grep -q "ESP" 26 | if [ $? -ne 0 ]; then 27 | echo "" 28 | echo "********* NO ESP ERROR ***********" 29 | err=1 30 | fi 31 | else 32 | echo $esps 33 | err=1 34 | fi 35 | else 36 | err=1 37 | fi 38 | else 39 | err=1 40 | fi 41 | else 42 | echo "" 43 | echo "********** START66 ERROR **********" 44 | err=1 45 | fi 46 | 47 | imunes$legacy -b -e $eid 48 | 49 | thereWereErrors $err 50 | -------------------------------------------------------------------------------- /ipsec_common/certs/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # make 3 | # make certs - make CA cert and certs for moon and sun 4 | # make copy_certs - copy created certificates to ${IPSEC_DIR} 5 | # make clean - cleanup 6 | # 7 | 8 | IPSEC_DIR="../" 9 | 10 | all: 11 | @make certs 12 | @make copy_certs 13 | 14 | certs: 15 | @sh make_certificates.sh 16 | 17 | copy_certs: 18 | @cp moonCert.pem ${IPSEC_DIR}/moon/ipsec.d/certs 19 | @cp moonKey.pem ${IPSEC_DIR}/moon/ipsec.d/private 20 | @cp sunCert.pem ${IPSEC_DIR}/sun/ipsec.d/certs 21 | @cp sunKey.pem ${IPSEC_DIR}/sun/ipsec.d/private 22 | @cp strongswanCert.pem ${IPSEC_DIR}/moon/ipsec.d/cacerts 23 | @cp strongswanCert.pem ${IPSEC_DIR}/sun/ipsec.d/cacerts 24 | 25 | clean: 26 | @rm -fr *.pem index.* serial* newcerts .rand 27 | 28 | -------------------------------------------------------------------------------- /ipsec_common/certs/make_certificates.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | export SubjectAltName 4 | SubjectAltName="" 5 | 6 | ##### 7 | # Create self-signed CA 8 | # 9 | openssl req -x509 -sha256 -newkey rsa:2048 -passout pass:1234 \ 10 | -subj "/C=CH/O=Linux strongSwan/CN=strongSwan Root CA" \ 11 | -keyout strongswanKey.pem -out strongswanCert.pem \ 12 | -days 1460 \ 13 | -set_serial 0 \ 14 | -config openssl.cnf 15 | 16 | ##### 17 | # Required files and dirs 18 | # 19 | if test ! -f serial; then 20 | echo "01" > serial 21 | fi 22 | if test ! -f index.txt; then 23 | touch index.txt 24 | fi 25 | if test ! -f index.txt.attr; then 26 | echo "unique_subject = no" > index.txt.attr 27 | fi 28 | if test ! -d newcerts; then 29 | mkdir newcerts 30 | fi 31 | 32 | ##### 33 | # Create and sign host certificates 34 | # 35 | hosts="sun moon" 36 | 37 | for host in $hosts; do 38 | SubjectAltName=${host}.strongswan.org 39 | openssl req -newkey rsa:2048 -keyout ${host}Key.pem \ 40 | -out ${host}Req.pem \ 41 | -nodes \ 42 | -subj "/C=CH/O=Linux strongSwan/CN=${host}.strongswan.org" \ 43 | -config openssl.cnf 44 | 45 | openssl ca -in ${host}Req.pem -days 730 -out ${host}Cert.pem -notext \ 46 | -passin pass:1234 \ 47 | -batch \ 48 | -config openssl.cnf 49 | 50 | openssl rsa -in ${host}Key.pem -out tempkeyfile 51 | mv tempkeyfile ${host}Key.pem 52 | done 53 | 54 | ##### 55 | # View created certificates: 56 | # 57 | # openssl x509 -in strongswanCert.pem -text -noout | less 58 | # openssl x509 -in sunCert.pem -text -noout | less 59 | # openssl x509 -in moonCert.pem -text -noout | less 60 | 61 | # Check public (cert) / private: 62 | 63 | # openssl x509 -in moonCert.pem -modulus -noout 64 | # openssl rsa -in moonKey.pem -modulus -noout 65 | 66 | # openssl x509 -in sunCert.pem -modulus -noout 67 | # openssl rsa -in sunKey.pem -modulus -noout 68 | 69 | -------------------------------------------------------------------------------- /ipsec_common/certs/openssl.cnf: -------------------------------------------------------------------------------- 1 | # openssl.cnf - OpenSSL configuration file 2 | # :set tabstop=8 3 | 4 | [ ca ] 5 | default_ca = root_ca # The default ca section 6 | 7 | [ root_ca ] 8 | certs = ./certs # Where the issued certs are kept 9 | database = ./index.txt # database index file. 10 | new_certs_dir = ./newcerts # default place for new certs. 11 | certificate = ./strongswanCert.pem # The CA certificate 12 | serial = ./serial # The current serial number 13 | private_key = ./strongswanKey.pem # The private key 14 | RANDFILE = ./.randi # private random number file 15 | x509_extensions = host_ext # The extensions to add to the cert 16 | default_md = sha256 # which md to use. 17 | policy = policy_match # how similar the request must look 18 | 19 | [ policy_match ] 20 | countryName = match 21 | stateOrProvinceName = optional 22 | localityName = optional 23 | organizationName = match 24 | organizationalUnitName = optional 25 | userId = optional 26 | serialNumber = optional 27 | commonName = supplied 28 | emailAddress = optional 29 | 30 | [ req ] 31 | default_bits = 1024 32 | default_keyfile = privkey.pem 33 | distinguished_name = req_distinguished_name 34 | attributes = req_attributes 35 | x509_extensions = ca_ext # The ext to add to the self signed cert 36 | string_mask = nombstr 37 | 38 | [ req_distinguished_name ] 39 | [ req_attributes ] 40 | 41 | [ host_ext ] 42 | basicConstraints = CA:FALSE 43 | keyUsage = digitalSignature, keyEncipherment, keyAgreement 44 | subjectKeyIdentifier = hash 45 | authorityKeyIdentifier = keyid, issuer:always 46 | subjectAltName = DNS:$ENV::SubjectAltName 47 | extendedKeyUsage = serverAuth 48 | crlDistributionPoints = URI:http://crl.strongswan.org/strongswan.crl 49 | 50 | [ ca_ext ] 51 | basicConstraints = critical, CA:TRUE , pathlen:1 52 | keyUsage = cRLSign, keyCertSign 53 | subjectKeyIdentifier = hash 54 | authorityKeyIdentifier = keyid, issuer:always 55 | 56 | -------------------------------------------------------------------------------- /ipsec_common/moon/ipsec.d/cacerts/strongswanCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDojCCAoqgAwIBAgIBADANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTI0MDMwMzEzNDMzN1oXDTI4MDMwMjEzNDMzN1owRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9u 6 | Z1N3YW4gUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/7 7 | Ute3Y2QqlsV4PwdLW9m1U39ew5Zz77gZI9NuOlLmCmKnX0uB8eUdd91c1WyN2pcB 8 | 6z0B178OFDlqUM9feS71ROZh7BA8SbKfZau58ewkCYMiWrfbWJ7iCndoznFa60v8 9 | Hr0FX49vMXGcxLIOTDZahqxwHQT+Po2Bx46fUU3YVCHWLQicKRJef5N4Mev7xzRq 10 | BZTIrBrCHuzaWKk9e5h+8gKhHIFu43ESjam4E73ebW8sCn11D0pTcgCoyLrptQPc 11 | 4TJ46kIiwolB6ITwrNrb6L/Me3755yjUFgCRhNdyRWnaAU86diOIM+jswuaafNcJ 12 | Kogk4CfKf+IAfg3TWYkCAwEAAaOBnDCBmTASBgNVHRMBAf8ECDAGAQH/AgEBMAsG 13 | A1UdDwQEAwIBBjAdBgNVHQ4EFgQUgs6MgrN7A7j/sOoDkd0yeVYF6TowVwYDVR0j 14 | BFAwTqFJpEcwRTELMAkGA1UEBhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3 15 | YW4xGzAZBgNVBAMTEnN0cm9uZ1N3YW4gUm9vdCBDQYIBADANBgkqhkiG9w0BAQsF 16 | AAOCAQEAMj1xSr7bpNQnNzHi5gtIJoerJEuVKYYaXtmyr5LoNtJ7rMBqtz0LWI2m 17 | I44EHiivZsiuTTN0RSSU8jzULguWU4Ra6est3E0iZao2/UUhtZ9R+UMosIx5eBuw 18 | vEj/jv4Ny2W5jm8chwxS3EWbfgRDybFgj1yuMVs2KIJZkHjXbq5R3w1gGLSJhDmr 19 | 6IwqFOku/MOgQHcu22wFwezGyEaaMLtVpL4SnSOptekqOQ7R6tq1XO1zYOF9UBMG 20 | NnJjzA7qP5ClBwQ0mfwkR2W7TlhQDHrobOOdL4QyhZ54M9sEbJzmr6ThEr8pogQ5 21 | vVJEQpJYJRiHzI4hpT3fp4HkmT3PFg== 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /ipsec_common/moon/ipsec.d/certs/moonCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEIjCCAwqgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTI0MDMwMzEzNDMzN1oXDTI2MDMwMzEzNDMzN1owRjELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xHDAaBgNVBAMTE21vb24u 6 | c3Ryb25nc3dhbi5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg 7 | Fr17BykJLO5P4DSL23cwW+nRyA2MQ1Omq4X/L6tCiK2GOtMoWabqPZ7Fi96asQr5 8 | uueYB3pKIFie9NFOsX4rfRV8jWy/W+tLgWrsfv4d2Tymu7IilbKSeu6MbzuVhZHz 9 | 87wj/UgGbj7V7fuKvU4KeTnFkeeauyFeBCtLnb22Eu5w3nKYryZAPE2NkoLAAc24 10 | 5fGNXgQUPgIBkKxGuNaX2CC5TMbTayxQs1gKxDXX7gMy68+d2R7s/HIrk9+zdWBv 11 | lyerjXRSbMBnWthAgK7eY9C6a4ljdAT5v7pUEQCpI0/UDY9/Z/z52EB4E8jdfQM2 12 | hsS3sdj8s2kw/ssz0EY/AgMBAAGjggEaMIIBFjAJBgNVHRMEAjAAMAsGA1UdDwQE 13 | AwIDqDAdBgNVHQ4EFgQUSGdt5sBlrL5xijwSsXHQJeazNYYwbQYDVR0jBGYwZIAU 14 | gs6MgrN7A7j/sOoDkd0yeVYF6TqhSaRHMEUxCzAJBgNVBAYTAkNIMRkwFwYDVQQK 15 | ExBMaW51eCBzdHJvbmdTd2FuMRswGQYDVQQDExJzdHJvbmdTd2FuIFJvb3QgQ0GC 16 | AQAwHgYDVR0RBBcwFYITbW9vbi5zdHJvbmdzd2FuLm9yZzATBgNVHSUEDDAKBggr 17 | BgEFBQcDATA5BgNVHR8EMjAwMC6gLKAqhihodHRwOi8vY3JsLnN0cm9uZ3N3YW4u 18 | b3JnL3N0cm9uZ3N3YW4uY3JsMA0GCSqGSIb3DQEBCwUAA4IBAQBueM3CIdm4Zk56 19 | l2SrXu48rEz9jTFjuoVO2Bvtw2gpkLVzNTcotRXW/+ibeBqbxKUfHkrPgLs9qd/w 20 | 74NbtbHw/JdNGYLlJdh6eG9rk/1eovydZ3JTx2uCZ1PT29qonn/I2Hfo6Hf7oRxa 21 | XenYBnzrCNP2j7Qz/sB6pKYRZKiUEC0U6aSy0JT/V/tyA4I5MkS/Cq09wW17FhYv 22 | wL3+HE7J93N7gfZ+uWiCK21Xz+vF5Y2oDGTzKmYgxjP9andyvT0Z418qNGA00zh6 23 | gURiwAdyyM3urmzSY1IQItaDqC/cnWfBS/euczKCXC28CgbjkmG0zciu2iH8bmVS 24 | 07VnfXG9 25 | -----END CERTIFICATE----- 26 | -------------------------------------------------------------------------------- /ipsec_common/moon/ipsec.d/private/moonKey.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgFr17BykJLO5P 3 | 4DSL23cwW+nRyA2MQ1Omq4X/L6tCiK2GOtMoWabqPZ7Fi96asQr5uueYB3pKIFie 4 | 9NFOsX4rfRV8jWy/W+tLgWrsfv4d2Tymu7IilbKSeu6MbzuVhZHz87wj/UgGbj7V 5 | 7fuKvU4KeTnFkeeauyFeBCtLnb22Eu5w3nKYryZAPE2NkoLAAc245fGNXgQUPgIB 6 | kKxGuNaX2CC5TMbTayxQs1gKxDXX7gMy68+d2R7s/HIrk9+zdWBvlyerjXRSbMBn 7 | WthAgK7eY9C6a4ljdAT5v7pUEQCpI0/UDY9/Z/z52EB4E8jdfQM2hsS3sdj8s2kw 8 | /ssz0EY/AgMBAAECggEAMW20BWd5kR6xWjJEpyYVD/ZhJGebX0JucpilH9yNCVcA 9 | FODWz6+WrN5nxmDgU2z0kZTW6wbsCDUih7nZYm3FIhJV7wYPnKn55W9JH0o6lea8 10 | JlLvtmP4JegU/YFeqVT7cpI/9fC/K1Ugy5bWQskebndtkgXxt8GtlMS+xXMn3y5N 11 | vcuF3VglsF8N0uiI5XSNwv4CGzTtI4pNKnkX0wOnlz3R7sKigp268AaUocHtlAKE 12 | m7vP8AOn+TEZVW+kF5pySOe+gE/7XHYY2bOBWPMuowHflx7GDIFn8+DEmBEk3fB8 13 | pxaLMBCnkF2i6K6nrr09lU6qpx4XGx2gmDrA9+aYuQKBgQDckajdNaRcppLCScZ0 14 | cPtfZlHzSsBo+v4PVLaWv+836iSwmKj1JfMkF540+E3pn5gY8i0rD14Cqakuip7Q 15 | TpDUOJMcZgR4zdw0FzwlAN5PYv4pmtnBDsihkECgmWqv6wJp1oyZfxAIlh1Q8JtK 16 | vtycbo0U+xFv/BC9BEjUeDX5gwKBgQC5zfzLw5jZW3V39Zg2kL5AlL9fmNJOlwyZ 17 | j91H91C0CQnYMKy1o5kIUItUiNvlfe3wPxg+aWrneIkwsg/sxuVb22T1+otgspwY 18 | RwGm7tyC2lBNbOPPzd0W9NeKQ9GiazHHy/8d3uU5akF6sKGKqi8+Z13Sh9+tPcHp 19 | ks2BZV0vlQKBgEwQq4SGAEW3aDs6iAcWA4p11eMqL0rE7CLLWyCH1m6Y/8grDXFl 20 | ggE7Z+LqkqvzztcjhXIpHYmbiu2y/mvl/EpDrHAJupcSn1MThDlaoFAOWopsjZXn 21 | jEczYSZBYiqCyFVJmTlCOXxMkJWeNF/FjH0iHuNSZkQRUJBuztL/FdYTAoGBAI3c 22 | RNd6RlglqSFmxMlcZ7W9HAQsFN3mG7ufCK7ql5ZtlDOYrjScbLnZbRekymeEZ0dX 23 | lPYJ3JJQCEbCnMAF95XTg1j+6q1wkRdEF3HRy1CoyEjlC2ZcYiIl2+736rWcLEzE 24 | ZsrypIbappW7CAtr9lgp6YtVLCUEEup3qCnUL3qlAoGAWGHeFCpRkILybx4aE6zX 25 | tFCKGRuJ6kJPUzPKE7MGqpFYzGJnn72ZNlMlbEzDvrqE2z8rSVUa0Ga7V4HiM+zI 26 | 2aCNdhWpflXexFS+0csXzQau1xEj4Rzhq/cQ+zIcWk5sMYMvb6or6r4qBlhE63dj 27 | /R3Qqv6t4VNrNCAhmGT5jsE= 28 | -----END PRIVATE KEY----- 29 | -------------------------------------------------------------------------------- /ipsec_common/moon/ipsec.secrets: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.secrets - strongSwan IPsec secrets file 2 | 3 | : RSA moonKey.pem 4 | -------------------------------------------------------------------------------- /ipsec_common/moon/strongswan.conf: -------------------------------------------------------------------------------- 1 | # strongswan.conf - strongSwan configuration file 2 | 3 | charon { 4 | 5 | filelog { 6 | charon { 7 | path = /var/log/charon.log 8 | # add a timestamp prefix 9 | time_format = %b %e %T 10 | # loggers to files also accept the append option to open files in 11 | # append mode at startup (default is yes) 12 | append = no 13 | # the default loglevel for all daemon subsystems (defaults to 1). 14 | default = 1 15 | # flush each line to disk 16 | flush_line = yes 17 | } 18 | stderr { 19 | # more detailed loglevel for a specific subsystem, overriding the 20 | # default loglevel. 21 | ike = 3 22 | knl = 3 23 | dmn = 3 24 | mgr = 3 25 | ike = 3 26 | chd = 3 27 | job = 3 28 | cfg = 3 29 | knl = 3 30 | net = 3 31 | asn = 3 32 | enc = 3 33 | lib = 3 34 | esp = 3 35 | tls = 3 36 | tnc = 3 37 | imc = 3 38 | imv = 3 39 | pts = 3 40 | # prepend connection name, simplifies grepping 41 | ike_name = yes 42 | } 43 | } 44 | 45 | # number of worker threads in charon 46 | threads = 16 47 | 48 | # send strongswan vendor ID? 49 | # send_vendor_id = yes 50 | 51 | plugins { 52 | 53 | sql { 54 | # loglevel to log into sql database 55 | loglevel = -1 56 | 57 | # URI to the database 58 | # database = sqlite:///path/to/file.db 59 | # database = mysql://user:password@localhost/database 60 | } 61 | } 62 | 63 | # ... 64 | } 65 | 66 | pluto { 67 | 68 | } 69 | 70 | libstrongswan { 71 | 72 | # set to no, the DH exponent size is optimized 73 | # dh_exponent_ansi_x9_42 = no 74 | } 75 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | fragmentation=yes 14 | 15 | conn net-net 16 | left=10.0.0.1 17 | leftsubnet=aaaa::0/64 18 | leftcert=moonCert.pem 19 | leftid=@moon.strongswan.org 20 | leftfirewall=no 21 | right=10.0.1.2 22 | rightsubnet=bbbb::0/64 23 | rightid=@sun.strongswan.org 24 | auto=add 25 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/ipsec.d/cacerts/strongswanCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDuDCCAqCgAwIBAgIBADANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTE4MDkwNTA3MTUxNVoXDTIyMDkwNDA3MTUxNVowRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9u 6 | Z1N3YW4gUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALT6 7 | 6txGbwhENUAG6MdTtIZy6FctQo7vrmHd7F1UC/gZY4F2SYdE4vf0fWir4SvrQThW 8 | sLxnYCfKZdRC+lqcR/QUcaIb8n5N0/bIypOsSe9URxUvU0b5ft8rl8Bddn2u/QaG 9 | RfQPIMSP7iNtvhQ2h3VatbW8ZHOTIjYtnMkWDtRGhJd5kJdO21r8P0/R8J6yhQi3 10 | fpL6MeJNKJ2bI0ttttc519BtiaJ1Y0Ri2Z8ZEsjsLy4/2MxWhp2fi9z627tD3B9N 11 | AIWYEZm2+R8fyzl9sNBOGql2yMUSBCMCh/gs1dIZtqnY1DoRQRLBA2Q74FO/Lkf4 12 | EamE6tyUZ+FlgMqALzECAwEAAaOBsjCBrzASBgNVHRMBAf8ECDAGAQH/AgEBMAsG 13 | A1UdDwQEAwIBBjAdBgNVHQ4EFgQU9v0z9I0AKd8Ycidfx6kz5247hv4wbQYDVR0j 14 | BGYwZIAU9v0z9I0AKd8Ycidfx6kz5247hv6hSaRHMEUxCzAJBgNVBAYTAkNIMRkw 15 | FwYDVQQKExBMaW51eCBzdHJvbmdTd2FuMRswGQYDVQQDExJzdHJvbmdTd2FuIFJv 16 | b3QgQ0GCAQAwDQYJKoZIhvcNAQELBQADggEBAFG+PJxuDnvcONaoXfsWvWjrrGvG 17 | 9EZcB1KCGy0WYMQyhhxTkM9/M27g0iyLTdGJH4qg319dHKTKrfXMZ6bJXrues4dJ 18 | Wg5mETH8uuNbz1naMI1RMvwtp+Byih/sxSkt8JjtZXGyu9OCFj+JSky+yogs16Fv 19 | ihpQf9VcR9z2tDycDD7YFd+kBCM4JzolZtM6WbL0rBnFeRztKWLegS44Uof+peYj 20 | 1p1viJCAJnpI8fbe5gf3pIATrfCBywvyr0MM0PeKO4t/AD74RZk5EJQhhlRrlEZn 21 | H/MLGq3PYQ/M83qQ2XxWo9PY7+MtpxwzCkeOsjpiUN1gIyUY/IRkN8Z8xXA= 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/ipsec.d/certs/moonCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEIjCCAwqgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTE4MDkwNTA3MTUxNloXDTIwMDkwNDA3MTUxNlowRjELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xHDAaBgNVBAMTE21vb24u 6 | c3Ryb25nc3dhbi5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQ 7 | GRT8cHcTvORdy4FhciVBQQ1zKpfla9pOLvOl40SpfuHglubkCZzIslFlkTfKJTnK 8 | euuXaCcQaoEMyMDcC5VHBRcewmKlfkG/wj5lOK0foCOLHzRZeIsKIqo32ilOgQYS 9 | KW+PkajiztvPnbW2J93+FzkU2aKDzsIDB09kp4FgLb0BcB+d0GCtkLH7Fa2nWVBu 10 | 4nxfhvr2aYaDlS8sTc8+UqzS74/18mff3tiuo/u56VzMvKZR1UQJjMs2tNDVAA4Y 11 | 9JH4ow++NZWJjwf7n4naQ0Im+6QDt84KnIgvRx3ANk7dAoQhpYdBKrBtOjGCzsgw 12 | pzoJwfXIWRgzse4QYxDxAgMBAAGjggEaMIIBFjAJBgNVHRMEAjAAMAsGA1UdDwQE 13 | AwIDqDAdBgNVHQ4EFgQUMkQcGSWrOYqVTJ8RMl+CHbG8/9owbQYDVR0jBGYwZIAU 14 | 9v0z9I0AKd8Ycidfx6kz5247hv6hSaRHMEUxCzAJBgNVBAYTAkNIMRkwFwYDVQQK 15 | ExBMaW51eCBzdHJvbmdTd2FuMRswGQYDVQQDExJzdHJvbmdTd2FuIFJvb3QgQ0GC 16 | AQAwHgYDVR0RBBcwFYITbW9vbi5zdHJvbmdzd2FuLm9yZzATBgNVHSUEDDAKBggr 17 | BgEFBQcDATA5BgNVHR8EMjAwMC6gLKAqhihodHRwOi8vY3JsLnN0cm9uZ3N3YW4u 18 | b3JnL3N0cm9uZ3N3YW4uY3JsMA0GCSqGSIb3DQEBCwUAA4IBAQAfNkrkgSYGHs0T 19 | TUSWOozItT3G61m0qrmYhaUbfwPEajJNaKtPVIPT32ahBwm3tX84DDEXJJCI4Cft 20 | ZW/gv6TBjsyEbOSQ+FD9Pl08XGKdviZq3Hw26qqf6HeVhTDo7abMO8qvZY0m3qTx 21 | dV6uNCVO8r7E8dKTKQ7h3OegNGSkG5rpftF6uRzMnz5cqCZEcelVtftV0Urmrjhl 22 | 3FH2uII86taFstoMTMr1uXuKMSMnvusWJ5ifsqMWaWiwPMBRw/cdglhOxkeWj6b3 23 | u6aDaP86qGv3Le9BHwjmjilUMn7dskyY7D/nM2zCSmoxdpl8OyKBx5ZE20DQYXq+ 24 | 1uquHSjQ 25 | -----END CERTIFICATE----- 26 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/ipsec.d/private/moonKey.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN RSA PRIVATE KEY----- 2 | MIIEpgIBAAKCAQEA0BkU/HB3E7zkXcuBYXIlQUENcyqX5WvaTi7zpeNEqX7h4Jbm 3 | 5AmcyLJRZZE3yiU5ynrrl2gnEGqBDMjA3AuVRwUXHsJipX5Bv8I+ZTitH6Ajix80 4 | WXiLCiKqN9opToEGEilvj5Go4s7bz521tifd/hc5FNmig87CAwdPZKeBYC29AXAf 5 | ndBgrZCx+xWtp1lQbuJ8X4b69mmGg5UvLE3PPlKs0u+P9fJn397YrqP7uelczLym 6 | UdVECYzLNrTQ1QAOGPSR+KMPvjWViY8H+5+J2kNCJvukA7fOCpyIL0cdwDZO3QKE 7 | IaWHQSqwbToxgs7IMKc6CcH1yFkYM7HuEGMQ8QIDAQABAoIBAQCOa6wePQZyHsQY 8 | oW/x9kIjD9eZq1v76z2kZqPgM9PJQQpsQDrTdPS1srzci2+oTKPpvQjCPckGhi2+ 9 | RyMfNlo7GfPB3H3RD8EF8XXspsZtr5bD315foY1fKWxf/1Jn5Qv3oB43HxR77eEo 10 | jaJQgaaAAPrTF0QPe5Dyq60dkTqNTGRwLxDpq4gHlTPzvxELhMuARBg28x6rt8hO 11 | LgWkScQfADw1xetePnECROzv3NxwjJWF2QSHnv4AJVdXn21cP0ELKSfJZuxg6zU2 12 | jU+vmuxsmdSJiM9OBGRo86mk0LgnSxMrUsXAP68unZLC9HGvj9HwX4FyPp696oAO 13 | JEgsvwiFAoGBAOezKd3v/HW99q6lmrarEKBbomDWOUMzcLoxYDOclJ593d0nEDDP 14 | UP7kDbbCJq6ifZblgth4k6Iu3nOUrpGh0rfHPONyDoF7qiirwNKqAOQ2HmirNYWZ 15 | nlD0sN5cXkiBKACAPUlw406KBUo0RZ5jteWdgMtvyxOnAUDgrQEJc3KjAoGBAOXs 16 | PSzh3GDEbyhmH5afMeokrvwtzGpywuVjifOkr1Hczbdc6e4ISN4gcUpZ+PbsKdhN 17 | Rf5EibQT3OPiY7sMrpacuYruKwB39UVNnPNueTj6aW+p6tYW7l2imXRRl4Mhx9gN 18 | 6lyvNZ6lANQ4g8Rws1y/yUTdGJSnM1X86GLr93tbAoGBAIJBQ5kkMC5VA9f8+3QT 19 | yT4NJcUAyaJQyd+yoF2Dej17jv2j10NJWURiGp+SmEJ20NnC3wMpDf4QETiy7kyq 20 | x5ZPaJiI50S9q9Q/ciA8OFITZpb7IRShXtIuLTxkexCRo1ZcwZeG4hKmHwEvT7AS 21 | aBDUsbIsf+LlcRvy8u9xS7i3AoGBAJc/2N51letyTU1eINmMz+EfUJ1D430DEYKl 22 | AFLuuwY3InzE+n5DpOu6m8w1c7m7katg6fJiU9PKXTzr6H9b0F3zq3rhQhiE0SxN 23 | 6jmZKtV4pXN3a6x6WUPvetMx+WGiDzzpqopeF//Mu8bfho7rNJKG93f9mfXwJ60h 24 | Oh4Y7CyRAoGBANy2l1zLhdos8OeEdFJV2SvIKg9KNsyvbNItn+KjoKKjd5rk2ogq 25 | RKq2o16p4neEhBjWC7UuocqdpmATLuSeUD0hNoGzMBqjq4Hw1QEi95espajVX7Mq 26 | cMrXFIgGDX+WrOTJxA0wltt2At0HeSKLQ3saVb7KWAqR5NTdn7Dscu2j 27 | -----END RSA PRIVATE KEY----- 28 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/ipsec.secrets: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.secrets - strongSwan IPsec secrets file 2 | 3 | : RSA moonKey.pem 4 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/moon/strongswan.conf: -------------------------------------------------------------------------------- 1 | # strongswan.conf - strongSwan configuration file 2 | 3 | charon { 4 | 5 | filelog { 6 | /var/log/charon.log { 7 | # add a timestamp prefix 8 | time_format = %b %e %T 9 | # loggers to files also accept the append option to open files in 10 | # append mode at startup (default is yes) 11 | append = no 12 | # the default loglevel for all daemon subsystems (defaults to 1). 13 | default = 1 14 | # flush each line to disk 15 | flush_line = yes 16 | } 17 | stderr { 18 | # more detailed loglevel for a specific subsystem, overriding the 19 | # default loglevel. 20 | ike = 3 21 | knl = 3 22 | dmn = 3 23 | mgr = 3 24 | ike = 3 25 | chd = 3 26 | job = 3 27 | cfg = 3 28 | knl = 3 29 | net = 3 30 | asn = 3 31 | enc = 3 32 | lib = 3 33 | esp = 3 34 | tls = 3 35 | tnc = 3 36 | imc = 3 37 | imv = 3 38 | pts = 3 39 | # prepend connection name, simplifies grepping 40 | ike_name = yes 41 | } 42 | } 43 | 44 | # number of worker threads in charon 45 | threads = 16 46 | 47 | # send strongswan vendor ID? 48 | # send_vendor_id = yes 49 | 50 | plugins { 51 | 52 | sql { 53 | # loglevel to log into sql database 54 | loglevel = -1 55 | 56 | # URI to the database 57 | # database = sqlite:///path/to/file.db 58 | # database = mysql://user:password@localhost/database 59 | } 60 | } 61 | 62 | # ... 63 | } 64 | 65 | pluto { 66 | 67 | } 68 | 69 | libstrongswan { 70 | 71 | # set to no, the DH exponent size is optimized 72 | # dh_exponent_ansi_x9_42 = no 73 | } 74 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/nat.rules: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cmd="ipfw -q add" 3 | pif=eth1 4 | 5 | ipfw -q -f flush 6 | 7 | $cmd divert natd log all from any to any via $pif 8 | $cmd allow log all from any to any 9 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/nat.rules.linux: -------------------------------------------------------------------------------- 1 | *nat 2 | :PREROUTING ACCEPT [0:0] 3 | :INPUT ACCEPT [0:0] 4 | :OUTPUT ACCEPT [0:0] 5 | :POSTROUTING ACCEPT [0:0] 6 | -A POSTROUTING -s 10.0.0.0/24 -o eth1 -j SNAT --to-source 10.0.3.2 7 | -A POSTROUTING -s 10.0.2.0/24 -o eth1 -j SNAT --to-source 10.0.3.2 8 | COMMIT 9 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/start_ipsec.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | if [ $# -eq 1 ]; then 6 | moon="moon@$1" 7 | sun="sun@$1" 8 | else 9 | moon="moon" 10 | sun="sun" 11 | fi 12 | 13 | if isOSlinux; then 14 | DIR="/etc" 15 | else 16 | DIR="/usr/local/etc" 17 | fi 18 | 19 | hcp -r moon/* ${moon}:${DIR}/ 20 | hcp -r sun/* ${sun}:${DIR}/ 21 | 22 | himage -nt $moon ipsec start 23 | himage -nt $sun ipsec start 24 | 25 | sleep 1 26 | 27 | himage $moon ipsec up net-net 28 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/start_nat.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | error() { 6 | echo $* 7 | exit 2 8 | } 9 | 10 | himage nat@$1 hostname \ 11 | || error "Is simulation started? Try: Experiment->Execute" 12 | 13 | if isOSlinux; then 14 | himage nat@$eid iptables-restore < nat.rules.linux 15 | else 16 | kldload -n ipfw 17 | kldload -n ipdivert 18 | sleep 2 19 | himage nat@$1 natd -l -interface eth1 20 | hcp nat.rules nat@$1:/root 21 | himage nat@$1 sh /root/nat.rules 22 | fi 23 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/ipsec.conf: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.conf - strongSwan IPsec configuration file 2 | 3 | config setup 4 | #charondebug="dmn 3, mgr 3, ike 3, chd 3, job 3, cfg 3, knl 3, net 3, asn 3, enc 3, lib 3, esp 3, tls 3, tnc 3, imc 3, imv 3, pts 3" 5 | 6 | conn %default 7 | ikelifetime=60m 8 | keylife=20m 9 | rekeymargin=3m 10 | keyingtries=1 11 | keyexchange=ikev2 12 | mobike=no 13 | fragmentation=yes 14 | 15 | conn net-net 16 | left=10.0.1.2 17 | #left=%any 18 | leftsubnet=bbbb::0/64 19 | leftcert=sunCert.pem 20 | leftid=@sun.strongswan.org 21 | leftfirewall=no 22 | #right=10.0.0.1 23 | right=%any 24 | #rightsourceip=10.0.0.1 25 | rightsubnet=aaaa::0/64 26 | rightid=@moon.strongswan.org 27 | auto=add 28 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/ipsec.d/cacerts/strongswanCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDuDCCAqCgAwIBAgIBADANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTE4MDkwNTA3MTUxNVoXDTIyMDkwNDA3MTUxNVowRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9u 6 | Z1N3YW4gUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALT6 7 | 6txGbwhENUAG6MdTtIZy6FctQo7vrmHd7F1UC/gZY4F2SYdE4vf0fWir4SvrQThW 8 | sLxnYCfKZdRC+lqcR/QUcaIb8n5N0/bIypOsSe9URxUvU0b5ft8rl8Bddn2u/QaG 9 | RfQPIMSP7iNtvhQ2h3VatbW8ZHOTIjYtnMkWDtRGhJd5kJdO21r8P0/R8J6yhQi3 10 | fpL6MeJNKJ2bI0ttttc519BtiaJ1Y0Ri2Z8ZEsjsLy4/2MxWhp2fi9z627tD3B9N 11 | AIWYEZm2+R8fyzl9sNBOGql2yMUSBCMCh/gs1dIZtqnY1DoRQRLBA2Q74FO/Lkf4 12 | EamE6tyUZ+FlgMqALzECAwEAAaOBsjCBrzASBgNVHRMBAf8ECDAGAQH/AgEBMAsG 13 | A1UdDwQEAwIBBjAdBgNVHQ4EFgQU9v0z9I0AKd8Ycidfx6kz5247hv4wbQYDVR0j 14 | BGYwZIAU9v0z9I0AKd8Ycidfx6kz5247hv6hSaRHMEUxCzAJBgNVBAYTAkNIMRkw 15 | FwYDVQQKExBMaW51eCBzdHJvbmdTd2FuMRswGQYDVQQDExJzdHJvbmdTd2FuIFJv 16 | b3QgQ0GCAQAwDQYJKoZIhvcNAQELBQADggEBAFG+PJxuDnvcONaoXfsWvWjrrGvG 17 | 9EZcB1KCGy0WYMQyhhxTkM9/M27g0iyLTdGJH4qg319dHKTKrfXMZ6bJXrues4dJ 18 | Wg5mETH8uuNbz1naMI1RMvwtp+Byih/sxSkt8JjtZXGyu9OCFj+JSky+yogs16Fv 19 | ihpQf9VcR9z2tDycDD7YFd+kBCM4JzolZtM6WbL0rBnFeRztKWLegS44Uof+peYj 20 | 1p1viJCAJnpI8fbe5gf3pIATrfCBywvyr0MM0PeKO4t/AD74RZk5EJQhhlRrlEZn 21 | H/MLGq3PYQ/M83qQ2XxWo9PY7+MtpxwzCkeOsjpiUN1gIyUY/IRkN8Z8xXA= 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/ipsec.d/certs/sunCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEIDCCAwigAwIBAgIBATANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTE4MDkwNTA3MTUxNloXDTIwMDkwNDA3MTUxNlowRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN1bi5z 6 | dHJvbmdzd2FuLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANtD 7 | a/JJtABG4RxXrzicjhdwOfqQxaVBxAulu7AoJN7kanU8/Or0c6PHhWBwsVy+GZ61 8 | qnJhoc6aV4Zi4GvPgaS8zQs+9ps6HOvu1RAaNP/otxOyPe4LYvA0A5ryTm8fD1gA 9 | GSi17soUnLjcyZZ7+26duR5vmeYXIJWozcgZozjaRNu/ODKmBpP71dugbq14LYzu 10 | awOd+Ka1DIY544OJvwy3Snp1Gb9A62qsqtR1a1J8xODsrDdmNCDKQ/2URNEl/ztA 11 | vrZSCRDsf+cAxdJMvLAMJ8TAlcZvuP2QM/3UDr9VTZGMD9aLJCxUllYozRDt6lqN 12 | W6Gm4mJ8o/NNlflQcosCAwEAAaOCARkwggEVMAkGA1UdEwQCMAAwCwYDVR0PBAQD 13 | AgOoMB0GA1UdDgQWBBSEQRt8lwT3tHcZM1FMU1LmYX4jbDBtBgNVHSMEZjBkgBT2 14 | /TP0jQAp3xhyJ1/HqTPnbjuG/qFJpEcwRTELMAkGA1UEBhMCQ0gxGTAXBgNVBAoT 15 | EExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9uZ1N3YW4gUm9vdCBDQYIB 16 | ADAdBgNVHREEFjAUghJzdW4uc3Ryb25nc3dhbi5vcmcwEwYDVR0lBAwwCgYIKwYB 17 | BQUHAwEwOQYDVR0fBDIwMDAuoCygKoYoaHR0cDovL2NybC5zdHJvbmdzd2FuLm9y 18 | Zy9zdHJvbmdzd2FuLmNybDANBgkqhkiG9w0BAQsFAAOCAQEAqPiQeub0ysRTmYCe 19 | 08+pGmLuchs0WGpgCPMYcOevgdDnBrIiui063CdjeBpT98XfW4tWiT2ifkUdwOdc 20 | eYuqDz0sNxIi/2QJFafsgtz92Ver+Yd00tHv5Lw0CHzUyrqvoGF+aJ+rjPbMmWa9 21 | bAYmUHgZM+mZ+wucEYnljEMfWh6A15T4QDaxIHu+NwR5ebmKSrltYqjhzzwrUgoy 22 | ic1JyV0EMxYIcpA5AyUXOE+FQYGoDcM/58ysAGv24ur//lG4CmN8Z3niIU8lszZ+ 23 | he/cAiyrFftYDQyG5aZLcPQiJgQgv/aRivLbyrOKO98VBeMnnp22L+RLhQOtckkr 24 | RnLiuQ== 25 | -----END CERTIFICATE----- 26 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/ipsec.d/private/sunKey.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN RSA PRIVATE KEY----- 2 | MIIEpQIBAAKCAQEA20Nr8km0AEbhHFevOJyOF3A5+pDFpUHEC6W7sCgk3uRqdTz8 3 | 6vRzo8eFYHCxXL4ZnrWqcmGhzppXhmLga8+BpLzNCz72mzoc6+7VEBo0/+i3E7I9 4 | 7gti8DQDmvJObx8PWAAZKLXuyhScuNzJlnv7bp25Hm+Z5hcglajNyBmjONpE2784 5 | MqYGk/vV26BurXgtjO5rA534prUMhjnjg4m/DLdKenUZv0Draqyq1HVrUnzE4Oys 6 | N2Y0IMpD/ZRE0SX/O0C+tlIJEOx/5wDF0ky8sAwnxMCVxm+4/ZAz/dQOv1VNkYwP 7 | 1oskLFSWVijNEO3qWo1boabiYnyj802V+VByiwIDAQABAoIBAQDX84CGwiaBu02N 8 | X6MZC8A6v3KrIRk4mRxgKFxBtFgUGz3quCWVtyuJ3EG16WgWIrkTAnOcciIuXP7l 9 | Qc8s/9P9D2KXt+ykl8jSaoj4cgdPIMHnqT6rjBVm5KPEYO/1K88t6fLdkMpdx41P 10 | 2UzGZNgPa1Je8qXN42tZW0dJ1E5Y93UwODxdVe3hW7THs30mK9WfHAhujXtZrz+k 11 | vOBdgVdwHI7wHmFY/P/slcWjtmaH9/nzpcTFjzLXI5Y3NEFoyPpJYdOxzci0Nj90 12 | hQRxs42z2ucHeoiz/mE9ib6rzW6aTh8VsYQVnqpq2/18z5LwP5+mLyzMBX3cHdS2 13 | DLQTncZZAoGBAPsA/ZTqmfF5R8nMlbD4gLvWPSx+q8HLG7kJLNMC4adgvEyx9FkM 14 | M1lKlIRs89gbbNwdklcv920HafXyiKd16Lm/WWp8YqsgREHcshhpzRrxEuJZVZdl 15 | p1P3Zoky+4yEuHlfFc65zT0kaNYVcRGq06iz/VKKc7PCSlwEFOsWG0AtAoGBAN+g 16 | sefrpdLVZLJeIgXM0p+sTXNy11sxz8qTINXHaLjpcXFYRdu1BdVSGqfcJSTidIqd 17 | AHNfVGC1ee+10eTAAzMQYdRnfeMGz+GCD9m5/nlelERT0UFCo9ynaJ7J7NlnqSNc 18 | evuaEVJDqypk+LrAyQbw8ZDlqYPmBVd+c5dmmviXAoGBALBzLtCb52J4Zr33Axgo 19 | aZ8iaVi5J5cRaEi4qXkhIm6es2CbDPH4gLR5mFRLn1PBW9KVO0XtY1uTBasvN1+5 20 | pMPHP117WYWBJlrCgbRl1BjndeYG9QN8I5gEaGF0pJ9QwboY3OS5ew1LZiNxaU4J 21 | L8f918xJpjKtF8b925KztK51AoGAd5FzLh7YFeeVJK2iIVnHkCpPaxgPP6pdgOGz 22 | 37n0K1JeHo1lJLkgelOg/vl9PsB6MZcKo6Vn9yFxJhMgO9/Slh3/QNNpAtcklV22 23 | XeLNxlUkj3gFXZBlDtjP3n72zbNYQxjyhM52znZx8YP1Xd0wXy666o9xWJ3HY2Ww 24 | JlZtK9cCgYEA4eLakRSndfOlCyvOIYN6s13u408qu/srqs7Wp5AE6FO7jT/nEboQ 25 | buj7Oa0YSWLI6kluA0k9fMh++HAL08+509JVUKvQWKtg05aTVvT1NEdFCoNxvMPC 26 | uZVtXXlbjRywXuCxn3jA2Qc9lnic4eNsFUlMvcq5NDCK5swaNgLYAK0= 27 | -----END RSA PRIVATE KEY----- 28 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/ipsec.secrets: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.secrets - strongSwan IPsec secrets file 2 | 3 | : RSA sunKey.pem 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/sun/strongswan.conf: -------------------------------------------------------------------------------- 1 | # strongswan.conf - strongSwan configuration file 2 | 3 | charon { 4 | 5 | filelog { 6 | /var/log/charon.log { 7 | # add a timestamp prefix 8 | time_format = %b %e %T 9 | # loggers to files also accept the append option to open files in 10 | # append mode at startup (default is yes) 11 | append = no 12 | # the default loglevel for all daemon subsystems (defaults to 1). 13 | default = 1 14 | # flush each line to disk 15 | flush_line = yes 16 | } 17 | stderr { 18 | # more detailed loglevel for a specific subsystem, overriding the 19 | # default loglevel. 20 | ike = 3 21 | knl = 3 22 | dmn = 3 23 | mgr = 3 24 | ike = 3 25 | chd = 3 26 | job = 3 27 | cfg = 3 28 | knl = 3 29 | net = 3 30 | asn = 3 31 | enc = 3 32 | lib = 3 33 | esp = 3 34 | tls = 3 35 | tnc = 3 36 | imc = 3 37 | imv = 3 38 | pts = 3 39 | # prepend connection name, simplifies grepping 40 | ike_name = yes 41 | } 42 | } 43 | 44 | # number of worker threads in charon 45 | threads = 16 46 | 47 | # send strongswan vendor ID? 48 | # send_vendor_id = yes 49 | 50 | plugins { 51 | 52 | sql { 53 | # loglevel to log into sql database 54 | loglevel = -1 55 | 56 | # URI to the database 57 | # database = sqlite:///path/to/file.db 58 | # database = mysql://user:password@localhost/database 59 | } 60 | } 61 | 62 | # ... 63 | } 64 | 65 | pluto { 66 | 67 | } 68 | 69 | libstrongswan { 70 | 71 | # set to no, the DH exponent size is optimized 72 | # dh_exponent_ansi_x9_42 = no 73 | } 74 | -------------------------------------------------------------------------------- /ipsec_common/nat-ipsec/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b nat-ipsec64.imn | tail -1 | cut -d' ' -f4` 12 | startCheck "$eid" 13 | 14 | ./start_nat.sh $eid > /dev/null 15 | 16 | if [ $? -eq 0 ]; then 17 | sleep 4 18 | netDump nat@$eid eth1 19 | if [ $? -eq 0 ]; then 20 | pingCheck moon@$eid 10.0.1.2 1 21 | if [ $? -eq 0 ]; then 22 | sleep 2 23 | pings=`readDump nat@$eid eth1` 24 | if [ $? -eq 0 ]; then 25 | echo "$pings" 26 | pings=`echo "$pings" | grep "echo request"` 27 | natsrc=`echo "$pings" | cut -f3 -d' '` 28 | natdst=`echo "$pings" | cut -f5 -d' '` 29 | 30 | if [ "$natsrc" = "10.0.3.2" ]; then 31 | ./start_ipsec.sh $eid 32 | if [ $? -eq 0 ]; then 33 | sleep 2 34 | netDump nat@$eid eth1 ip 35 | if [ $? -eq 0 ]; then 36 | ping6Check pc1@$eid bbbb::20 2 37 | if [ $? -eq 0 ]; then 38 | sleep 2 39 | esps=`readDump nat@$eid eth1` 40 | if [ $? -eq 0 ]; then 41 | echo "$esps" 42 | echo "$esps" | grep -q "ESP" 43 | if [ $? -ne 0 ]; then 44 | echo "" 45 | echo "********* NO ESP ERROR ***********" 46 | err=1 47 | fi 48 | else 49 | echo "$esps" 50 | err=1 51 | fi 52 | else 53 | err=1 54 | fi 55 | else 56 | err=1 57 | fi 58 | else 59 | echo "" 60 | echo "********** START_IPSEC ERROR **********" 61 | err=1 62 | fi 63 | else 64 | if [ "$natsrc" = "10.0.0.1" ]; then 65 | echo "" 66 | echo "********** NAT ERROR **********" 67 | echo "********** IS NAT TURNED ON? **********" 68 | else 69 | echo "" 70 | echo "********** CONNECTION ERROR **********" 71 | fi 72 | err=1 73 | fi 74 | else 75 | echo "$pings" 76 | err=1 77 | fi 78 | else 79 | err=1 80 | fi 81 | fi 82 | else 83 | echo "********* START_NAT ERROR ***********" 84 | err=1 85 | fi 86 | 87 | imunes$legacy -b -e $eid 88 | 89 | thereWereErrors $err 90 | -------------------------------------------------------------------------------- /ipsec_common/sun/ipsec.d/cacerts/strongswanCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDojCCAoqgAwIBAgIBADANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTI0MDMwMzEzNDMzN1oXDTI4MDMwMjEzNDMzN1owRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9u 6 | Z1N3YW4gUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/7 7 | Ute3Y2QqlsV4PwdLW9m1U39ew5Zz77gZI9NuOlLmCmKnX0uB8eUdd91c1WyN2pcB 8 | 6z0B178OFDlqUM9feS71ROZh7BA8SbKfZau58ewkCYMiWrfbWJ7iCndoznFa60v8 9 | Hr0FX49vMXGcxLIOTDZahqxwHQT+Po2Bx46fUU3YVCHWLQicKRJef5N4Mev7xzRq 10 | BZTIrBrCHuzaWKk9e5h+8gKhHIFu43ESjam4E73ebW8sCn11D0pTcgCoyLrptQPc 11 | 4TJ46kIiwolB6ITwrNrb6L/Me3755yjUFgCRhNdyRWnaAU86diOIM+jswuaafNcJ 12 | Kogk4CfKf+IAfg3TWYkCAwEAAaOBnDCBmTASBgNVHRMBAf8ECDAGAQH/AgEBMAsG 13 | A1UdDwQEAwIBBjAdBgNVHQ4EFgQUgs6MgrN7A7j/sOoDkd0yeVYF6TowVwYDVR0j 14 | BFAwTqFJpEcwRTELMAkGA1UEBhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3 15 | YW4xGzAZBgNVBAMTEnN0cm9uZ1N3YW4gUm9vdCBDQYIBADANBgkqhkiG9w0BAQsF 16 | AAOCAQEAMj1xSr7bpNQnNzHi5gtIJoerJEuVKYYaXtmyr5LoNtJ7rMBqtz0LWI2m 17 | I44EHiivZsiuTTN0RSSU8jzULguWU4Ra6est3E0iZao2/UUhtZ9R+UMosIx5eBuw 18 | vEj/jv4Ny2W5jm8chwxS3EWbfgRDybFgj1yuMVs2KIJZkHjXbq5R3w1gGLSJhDmr 19 | 6IwqFOku/MOgQHcu22wFwezGyEaaMLtVpL4SnSOptekqOQ7R6tq1XO1zYOF9UBMG 20 | NnJjzA7qP5ClBwQ0mfwkR2W7TlhQDHrobOOdL4QyhZ54M9sEbJzmr6ThEr8pogQ5 21 | vVJEQpJYJRiHzI4hpT3fp4HkmT3PFg== 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /ipsec_common/sun/ipsec.d/certs/sunCert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEIDCCAwigAwIBAgIBATANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJDSDEZ 3 | MBcGA1UEChMQTGludXggc3Ryb25nU3dhbjEbMBkGA1UEAxMSc3Ryb25nU3dhbiBS 4 | b290IENBMB4XDTI0MDMwMzEzNDMzN1oXDTI2MDMwMzEzNDMzN1owRTELMAkGA1UE 5 | BhMCQ0gxGTAXBgNVBAoTEExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN1bi5z 6 | dHJvbmdzd2FuLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMoi 7 | Yg0Sw1kwtMTzWtAU3ldHg1S1+CnSnz9UFRrjuI+bmyKd3gT7mjLerGFJ8SnRjR05 8 | hHm3oe2VAFk3WgvxWxp2J/lD1A+cwTuoFqJQz9nMShwb7x5N4e1lu1XpTTTDMXRx 9 | RfVE7wxXa+BF6IrHcqyWhRchdFIMgSi9IZaOPF4Gxtbkg/+o6BemiumvBG0oQUqq 10 | QNyDviMmYwGSJjef/dWHkfTp8oL7lvHeLuIT0QNSc1bMQPqTdYTddeK1ktm54Bmr 11 | AnRG1QRFOGNI9A9idWf08/AxO4SZLzkymP9mzKeFAsizqcQvTpUzmdJMeH0o38yC 12 | QJnrVgrwnEpQupg0xGMCAwEAAaOCARkwggEVMAkGA1UdEwQCMAAwCwYDVR0PBAQD 13 | AgOoMB0GA1UdDgQWBBSz9i5goIFKkpaVn8NthQSD3SH5ITBtBgNVHSMEZjBkgBSC 14 | zoyCs3sDuP+w6gOR3TJ5VgXpOqFJpEcwRTELMAkGA1UEBhMCQ0gxGTAXBgNVBAoT 15 | EExpbnV4IHN0cm9uZ1N3YW4xGzAZBgNVBAMTEnN0cm9uZ1N3YW4gUm9vdCBDQYIB 16 | ADAdBgNVHREEFjAUghJzdW4uc3Ryb25nc3dhbi5vcmcwEwYDVR0lBAwwCgYIKwYB 17 | BQUHAwEwOQYDVR0fBDIwMDAuoCygKoYoaHR0cDovL2NybC5zdHJvbmdzd2FuLm9y 18 | Zy9zdHJvbmdzd2FuLmNybDANBgkqhkiG9w0BAQsFAAOCAQEALRVnAAt2P51fPLji 19 | REfMtJIjYpMZWquhe1HsJ0pBH2cG2I/iOz8dz8ytn2313/mfcULczzKv35+JrKq4 20 | 3N5bQJSJUXWcOI54yhOdSvn9J6gWoOwWei86S6ZQSnq5wf2vbMdooC5CsEBPtzuP 21 | C6o3FjgFVPkKJfkuXgrLyc6wu7UoSHUBqH0YQ2WWwYEH33ItFmom5jKaStLMOiA+ 22 | yFXsSbD/ltpOesNN6ul9JJbrihvABEAVKtU0dlsWpiU3qbkPGzvIVgy2ksO0ZWpG 23 | F+g7EImYSzp5BtblES6HyiK69ZJHmF8QXAyTTyDhyo0kWGU1r+dLqCis0olgF25e 24 | adhHaw== 25 | -----END CERTIFICATE----- 26 | -------------------------------------------------------------------------------- /ipsec_common/sun/ipsec.d/private/sunKey.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDKImINEsNZMLTE 3 | 81rQFN5XR4NUtfgp0p8/VBUa47iPm5sind4E+5oy3qxhSfEp0Y0dOYR5t6HtlQBZ 4 | N1oL8Vsadif5Q9QPnME7qBaiUM/ZzEocG+8eTeHtZbtV6U00wzF0cUX1RO8MV2vg 5 | ReiKx3KsloUXIXRSDIEovSGWjjxeBsbW5IP/qOgXporprwRtKEFKqkDcg74jJmMB 6 | kiY3n/3Vh5H06fKC+5bx3i7iE9EDUnNWzED6k3WE3XXitZLZueAZqwJ0RtUERThj 7 | SPQPYnVn9PPwMTuEmS85Mpj/ZsynhQLIs6nEL06VM5nSTHh9KN/MgkCZ61YK8JxK 8 | ULqYNMRjAgMBAAECggEAFlNW3hfI8MRy6t/wE1SCvEQfSs9wcfob8awxSo+FVoM6 9 | zsd9+rHpdZ3njzVSCCrneaddLO5t2aZf6/qznOcTB2iugJcPyIupQhQOL+5aDrXE 10 | J7ekIQY8InLejp4ek2nNwA00y2LKPmQ3e4VtKkreLRbQ612cEeXkrCG7oHvkSgQm 11 | IyTbkZ3ZsxWF590CzDhXQxbe1ufAfkeE2sZeP3hOR6qQGTP49HjywIWTBB1RF1OC 12 | zu/0KYM/t3GbfBhadu4AqyLfBfbHd0vmdzWelQV4zvPylUWbgC0F8Gv9dcPCZ5qw 13 | H8nTuKs0ttCNvAPsxPM53zbYGOMvCPJQ82UgQXUp+QKBgQD5Roz1Kf6mAhyRswn1 14 | FpS5M99okzB2cqYL8ez21tL0NCgqsWgNNU7gMJl43KbBNrLAXWwUQKFNVkBkLY7E 15 | 4Ql0SwApcO/le7tVapvfsxn6clLU2Hw4plH3lzosMvCNVKX30gv8mJMRS4uvX9/p 16 | 1Z2xS/BqAJH9fgJtitTtsAFSuQKBgQDPlkikujS04sxEq/nT3IENopvheNG3+hAn 17 | KiB4wGT/llgJrLhWNnXDoSBe46gv6DA4JfanyPrU0QpIhLkT/KtFlsTxR77KrcjC 18 | RW+aMyZpJ7iGWtfxkGaDNnV8I4I2gS4qy0wl0rglzb14TKEekKBa0YiUNUCFep2o 19 | J0yQLg1x+wKBgAfnYsTLRhXBb2J3SNOKmcCdknHgaOL4k6dBToAtI5c2qCdiZKg2 20 | jn+xSsx4QplRwK00yR6DRhoLqBMFFsfLUt9rGWA3AoRGPhRhQvv+084LHfE9xAKP 21 | 032EQAXyv4nbqz+GW3bw54je2lj/MzxY150tiTvzNK3S9wS+KC45LHGRAoGAOvp7 22 | 0TGGYA4/8xLZfDQeBn24xCrLivXlOPtjFmuzRlq00KreBMCcXOSeidcspc/WQ12l 23 | 4q3bdjOeNFRhMSiMkMzxT4wOzQ7rBycrOihmNWIvrxyIVf2s4oLKhmagTFQPheEU 24 | 1Xo1D6iQuGktLb3xkVwO7ezjVAkuWeQwgJZVA5kCgYAs2Rwlctsa3nSK7nonG/VH 25 | vjAWhoAF8a3pqxkV9diRKhXzKmXzHpH8NkGpZYFHWDCO432O+PoZ2xvpkdneK/4d 26 | 8l/OoTEw3Z8LaAdzn/LY/iTPPjIOYlxAsbOtC1ipOEk0rxBWJbt9Zl3u1PpkMFkj 27 | agI889A3Zj24SLLRT848Zg== 28 | -----END PRIVATE KEY----- 29 | -------------------------------------------------------------------------------- /ipsec_common/sun/ipsec.secrets: -------------------------------------------------------------------------------- 1 | # /etc/ipsec.secrets - strongSwan IPsec secrets file 2 | 3 | : RSA sunKey.pem 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ipsec_common/sun/strongswan.conf: -------------------------------------------------------------------------------- 1 | # strongswan.conf - strongSwan configuration file 2 | 3 | charon { 4 | 5 | filelog { 6 | charon { 7 | path = /var/log/charon.log 8 | # add a timestamp prefix 9 | time_format = %b %e %T 10 | # loggers to files also accept the append option to open files in 11 | # append mode at startup (default is yes) 12 | append = no 13 | # the default loglevel for all daemon subsystems (defaults to 1). 14 | default = 1 15 | # flush each line to disk 16 | flush_line = yes 17 | } 18 | stderr { 19 | # more detailed loglevel for a specific subsystem, overriding the 20 | # default loglevel. 21 | ike = 3 22 | knl = 3 23 | dmn = 3 24 | mgr = 3 25 | ike = 3 26 | chd = 3 27 | job = 3 28 | cfg = 3 29 | knl = 3 30 | net = 3 31 | asn = 3 32 | enc = 3 33 | lib = 3 34 | esp = 3 35 | tls = 3 36 | tnc = 3 37 | imc = 3 38 | imv = 3 39 | pts = 3 40 | # prepend connection name, simplifies grepping 41 | ike_name = yes 42 | } 43 | } 44 | 45 | # number of worker threads in charon 46 | threads = 16 47 | 48 | # send strongswan vendor ID? 49 | # send_vendor_id = yes 50 | 51 | plugins { 52 | 53 | sql { 54 | # loglevel to log into sql database 55 | loglevel = -1 56 | 57 | # URI to the database 58 | # database = sqlite:///path/to/file.db 59 | # database = mysql://user:password@localhost/database 60 | } 61 | } 62 | 63 | # ... 64 | } 65 | 66 | pluto { 67 | 68 | } 69 | 70 | libstrongswan { 71 | 72 | # set to no, the DH exponent size is optimized 73 | # dh_exponent_ansi_x9_42 = no 74 | } 75 | -------------------------------------------------------------------------------- /services/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | . ../common/procedures.sh 4 | 5 | err=0 6 | legacy="" 7 | if test -n "$LEGACY"; then 8 | legacy=" -l" 9 | fi 10 | 11 | eid=`imunes$legacy -b services.imn | awk '/Experiment/{print $4; exit}'` 12 | startCheck "$eid" 13 | 14 | # wait for the services to start 15 | sleep 5 16 | 17 | # ftp 18 | himage FTP@$eid netstat -an | grep LISTEN | grep -q "21" 19 | if [ $? -ne 0 ]; then 20 | echo "FTP error" 21 | err=1 22 | fi 23 | 24 | # ssh 25 | himage SSH@$eid netstat -an | grep LISTEN | grep -q "22" 26 | if [ $? -ne 0 ]; then 27 | echo "SSH error" 28 | err=1 29 | fi 30 | 31 | # telnet 32 | himage TELNET@$eid netstat -an | grep LISTEN | grep -q "23" 33 | if [ $? -ne 0 ]; then 34 | echo "TELNET error" 35 | err=1 36 | fi 37 | 38 | imunes$legacy -b -e $eid 39 | 40 | # tcpdump 41 | # testing after termination because that's when the file is saved in /tmp/$eid 42 | file /tmp/$eid/TCPDUMP_n3_eth0.pcap | grep -q "capture file" 43 | if [ $? -ne 0 ]; then 44 | echo "TCPDUMP error" 45 | err=1 46 | fi 47 | 48 | thereWereErrors $err 49 | --------------------------------------------------------------------------------