module Test_iptables = let add_rule = Iptables.table_rule let ipt_match = Iptables.ipt_match test add_rule get "-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT\n" = { "append" = "INPUT" { "match" = "state" } { "state" = "ESTABLISHED,RELATED" } { "jump" = "ACCEPT" } } test add_rule get "-A INPUT -p icmp -j \tACCEPT \n" = { "append" = "INPUT" { "protocol" = "icmp" } { "jump" = "ACCEPT" } } test add_rule get "-A INPUT -i lo -j ACCEPT\n" = { "append" = "INPUT" { "in-interface" = "lo" } { "jump" = "ACCEPT" } } test ipt_match get " -m tcp -p tcp --dport 53" = { "match" = "tcp" } { "protocol" = "tcp" } { "dport" = "53" } let arule = " -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT" test add_rule get ("--append INPUT" . arule . "\n") = { "append" = "INPUT" { "match" = "state" } { "state" = "NEW" } { "match" = "tcp" } { "protocol" = "tcp" } { "dport" = "53" } { "jump" = "ACCEPT" } } test ipt_match get arule = { "match" = "state" } { "state" = "NEW" } { "match" = "tcp" } { "protocol" = "tcp" } { "dport" = "53" } { "jump" = "ACCEPT" } test ipt_match get ("-A INPUT" . arule) = * test ipt_match get " -p esp -j ACCEPT" = { "protocol" = "esp" } { "jump" = "ACCEPT" } test ipt_match get " -m state --state NEW -m udp -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT" = { "match" = "state" } { "state" = "NEW" } { "match" = "udp" } { "protocol" = "udp" } { "dport" = "5353" } { "destination" = "224.0.0.251" } { "jump" = "ACCEPT" } test add_rule get "-I FORWARD -m physdev --physdev-is-bridged -j ACCEPT\n" = { "insert" = "FORWARD" { "match" = "physdev" } { "physdev-is-bridged" } { "jump" = "ACCEPT" } } test add_rule get "-A INPUT -j REJECT --reject-with icmp-host-prohibited\n" = { "append" = "INPUT" { "jump" = "REJECT" } { "reject-with" = "icmp-host-prohibited" } } test add_rule get "-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT\n" = { "append" = "RH-Firewall-1-INPUT" { "protocol" = "icmp" } { "icmp-type" = "any" } { "jump" = "ACCEPT" } } test Iptables.table get "*filter :RH-Firewall-1-INPUT - [0:0] -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT COMMIT\n" = { "table" = "filter" { "chain" = "RH-Firewall-1-INPUT" { "policy" = "-" } } { "append" = "FORWARD" { "jump" = "RH-Firewall-1-INPUT" } } { "append" = "RH-Firewall-1-INPUT" { "in-interface" = "lo" } { "jump" = "ACCEPT" } } } test Iptables.table get "*filter :RH-Firewall-1-INPUT - [0:0] -A FORWARD -j RH-Firewall-1-INPUT COMMIT\n" = { "table" = "filter" { } { "chain" = "RH-Firewall-1-INPUT" { "policy" = "-" } } { } { "append" = "FORWARD" { "jump" = "RH-Firewall-1-INPUT" } } { } } let conf = "# Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002 *filter :INPUT DROP [1:229] :FORWARD DROP [0:0] :OUTPUT DROP [0:0] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -I FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT # comments and blank lines are allow between rules -A FORWARD -i eth1 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT --append OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT COMMIT # Completed on Wed Apr 24 10:19:55 2002 # Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002 *mangle :PREROUTING ACCEPT [658:32445] :INPUT ACCEPT [658:32445] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [891:68234] :POSTROUTING ACCEPT [891:68234] COMMIT # Completed on Wed Apr 24 10:19:55 2002 # Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002 *nat :PREROUTING ACCEPT [1:229] :POSTROUTING ACCEPT [3:450] # The output chain :OUTPUT ACCEPT [3:450] # insert something --insert POSTROUTING -o eth0 -j SNAT --to-source 195.233.192.1 \t # and now commit COMMIT # Completed on Wed Apr 24 10:19:55 2002\n" test Iptables.lns get conf = { "#comment" = "Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002" } { "table" = "filter" { "chain" = "INPUT" { "policy" = "DROP" } } { "chain" = "FORWARD" { "policy" = "DROP" } } { "chain" = "OUTPUT" { "policy" = "DROP" } } { "append" = "INPUT" { "match" = "state" } { "state" = "RELATED,ESTABLISHED" } { "jump" = "ACCEPT" } } {} { "insert" = "FORWARD" { "in-interface" = "eth0" } { "match" = "state" } { "state" = "RELATED,ESTABLISHED" } { "jump" = "ACCEPT" } } {} { "#comment" = "comments and blank lines are allow between rules" } {} { "append" = "FORWARD" { "in-interface" = "eth1" } { "match" = "state" } { "state" = "NEW,RELATED,ESTABLISHED" } { "jump" = "ACCEPT" } } { "append" = "OUTPUT" { "match" = "state" } { "state" = "NEW,RELATED,ESTABLISHED" } { "jump" = "ACCEPT" } } } { "#comment" = "Completed on Wed Apr 24 10:19:55 2002" } { "#comment" = "Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002" } { "table" = "mangle" { "chain" = "PREROUTING" { "policy" = "ACCEPT" } } {} { "chain" = "INPUT" { "policy" = "ACCEPT" } } { "chain" = "FORWARD" { "policy" = "ACCEPT" } } { "chain" = "OUTPUT" { "policy" = "ACCEPT" } } { "chain" = "POSTROUTING" { "policy" = "ACCEPT" } } } { "#comment" = "Completed on Wed Apr 24 10:19:55 2002" } { "#comment" = "Generated by iptables-save v1.2.6a on Wed Apr 24 10:19:55 2002" } { "table" = "nat" { "chain" = "PREROUTING" { "policy" = "ACCEPT" } } { "chain" = "POSTROUTING" { "policy" = "ACCEPT" } } { "#comment" = "The output chain" } { "chain" = "OUTPUT" { "policy" = "ACCEPT" } } { "#comment" = "insert something" } { "insert" = "POSTROUTING" { "out-interface" = "eth0" } { "jump" = "SNAT" } { "to-source" = "195.233.192.1" } } { "#comment" = "and now commit" } } { "#comment" = "Completed on Wed Apr 24 10:19:55 2002" } test ipt_match get " -m comment --comment \"A comment\"" = { "match" = "comment" } { "comment" = "\"A comment\"" } (* * Test the various schemes for negation that iptables supports * * Note that the two ways in which a parameter can be negated lead to * two different trees that mean the same. *) test add_rule get "-I POSTROUTING ! -d 192.168.122.0/24 -j MASQUERADE\n" = { "insert" = "POSTROUTING" { "destination" = "192.168.122.0/24" { "not" } } { "jump" = "MASQUERADE" } } test add_rule get "-I POSTROUTING -d ! 192.168.122.0/24 -j MASQUERADE\n" = { "insert" = "POSTROUTING" { "destination" = "! 192.168.122.0/24" } { "jump" = "MASQUERADE" } } test add_rule put "-I POSTROUTING ! -d 192.168.122.0/24 -j MASQUERADE\n" after rm "/insert/destination/not" = "-I POSTROUTING -d 192.168.122.0/24 -j MASQUERADE\n" (* I have no idea if iptables will accept double negations, but we * allow it syntactically *) test add_rule put "-I POSTROUTING -d ! 192.168.122.0/24 -j MASQUERADE\n" after clear "/insert/destination/not" = "-I POSTROUTING ! -d ! 192.168.122.0/24 -j MASQUERADE\n" test Iptables.chain get ":tcp_packets - [0:0] " = { "chain" = "tcp_packets" { "policy" = "-" } } (* Bug #157 *) test ipt_match get " --tcp-flags SYN,RST,ACK,FIN SYN" = { "tcp-flags" { "mask" = "SYN" } { "mask" = "RST" } { "mask" = "ACK" } { "mask" = "FIN" } { "set" = "SYN" } } (* Bug #224 *) test ipt_match get " --icmpv6-type neighbor-solicitation" = { "icmpv6-type" = "neighbor-solicitation" }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
test_access.aug | File | 3.44 KB | 0644 |
|
test_activemq_conf.aug | File | 758 B | 0644 |
|
test_activemq_xml.aug | File | 1.63 KB | 0644 |
|
test_afs_cellalias.aug | File | 1.31 KB | 0644 |
|
test_aliases.aug | File | 2.99 KB | 0644 |
|
test_anacron.aug | File | 1.21 KB | 0644 |
|
test_approx.aug | File | 1.44 KB | 0644 |
|
test_apt_update_manager.aug | File | 1.12 KB | 0644 |
|
test_aptcacherngsecurity.aug | File | 1.17 KB | 0644 |
|
test_aptconf.aug | File | 5.26 KB | 0644 |
|
test_aptpreferences.aug | File | 1.86 KB | 0644 |
|
test_aptsources.aug | File | 3.42 KB | 0644 |
|
test_authorized_keys.aug | File | 4.47 KB | 0644 |
|
test_automaster.aug | File | 1.53 KB | 0644 |
|
test_automounter.aug | File | 5.2 KB | 0644 |
|
test_avahi.aug | File | 545 B | 0644 |
|
test_backuppchosts.aug | File | 623 B | 0644 |
|
test_bbhosts.aug | File | 3.68 KB | 0644 |
|
test_bootconf.aug | File | 980 B | 0644 |
|
test_build.aug | File | 8.12 KB | 0644 |
|
test_cachefilesd.aug | File | 579 B | 0644 |
|
test_carbon.aug | File | 2.54 KB | 0644 |
|
test_ceph.aug | File | 4.86 KB | 0644 |
|
test_cgconfig.aug | File | 5.93 KB | 0644 |
|
test_cgrules.aug | File | 903 B | 0644 |
|
test_channels.aug | File | 4.72 KB | 0644 |
|
test_chrony.aug | File | 5.49 KB | 0644 |
|
test_clamav.aug | File | 8.48 KB | 0644 |
|
test_cobblermodules.aug | File | 620 B | 0644 |
|
test_cobblersettings.aug | File | 1.34 KB | 0644 |
|
test_collectd.aug | File | 1.3 KB | 0644 |
|
test_cpanel.aug | File | 1.62 KB | 0644 |
|
test_cron.aug | File | 1.96 KB | 0644 |
|
test_cron_user.aug | File | 779 B | 0644 |
|
test_crypttab.aug | File | 1.28 KB | 0644 |
|
test_csv.aug | File | 1.56 KB | 0644 |
|
test_cups.aug | File | 13.93 KB | 0644 |
|
test_cyrus_imapd.aug | File | 1.33 KB | 0644 |
|
test_darkice.aug | File | 575 B | 0644 |
|
test_debctrl.aug | File | 13.94 KB | 0644 |
|
test_desktop.aug | File | 1.23 KB | 0644 |
|
test_device_map.aug | File | 797 B | 0644 |
|
test_dhclient.aug | File | 4.75 KB | 0644 |
|
test_dhcpd.aug | File | 15.07 KB | 0644 |
|
test_dns_zone.aug | File | 10.33 KB | 0644 |
|
test_dnsmasq.aug | File | 1.19 KB | 0644 |
|
test_dovecot.aug | File | 22.15 KB | 0644 |
|
test_dpkg.aug | File | 322 B | 0644 |
|
test_dput.aug | File | 3.37 KB | 0644 |
|
test_erlang.aug | File | 2.58 KB | 0644 |
|
test_ethers.aug | File | 1.4 KB | 0644 |
|
test_exports.aug | File | 1.69 KB | 0644 |
|
test_fai_diskconfig.aug | File | 15.04 KB | 0644 |
|
test_fonts.aug | File | 19.45 KB | 0644 |
|
test_fstab.aug | File | 4.32 KB | 0644 |
|
test_fuse.aug | File | 590 B | 0644 |
|
test_gdm.aug | File | 620 B | 0644 |
|
test_getcap.aug | File | 3.77 KB | 0644 |
|
test_group.aug | File | 1.09 KB | 0644 |
|
test_grub.aug | File | 9.4 KB | 0644 |
|
test_grubenv.aug | File | 2.44 KB | 0644 |
|
test_gshadow.aug | File | 359 B | 0644 |
|
test_gtkbookmarks.aug | File | 820 B | 0644 |
|
test_host_conf.aug | File | 834 B | 0644 |
|
test_hostname.aug | File | 103 B | 0644 |
|
test_hosts.aug | File | 1.78 KB | 0644 |
|
test_hosts_access.aug | File | 6.12 KB | 0644 |
|
test_htpasswd.aug | File | 468 B | 0644 |
|
test_httpd.aug | File | 15.71 KB | 0644 |
|
test_inetd.aug | File | 4.51 KB | 0644 |
|
test_inifile.aug | File | 11.64 KB | 0644 |
|
test_inittab.aug | File | 1.82 KB | 0644 |
|
test_inputrc.aug | File | 5.13 KB | 0644 |
|
test_interfaces.aug | File | 3.65 KB | 0644 |
|
test_iproute2.aug | File | 945 B | 0644 |
|
test_iptables.aug | File | 7.39 KB | 0644 |
|
test_iscsid.aug | File | 2.45 KB | 0644 |
|
test_jaas.aug | File | 5.35 KB | 0644 |
|
test_jettyrealm.aug | File | 982 B | 0644 |
|
test_jmxaccess.aug | File | 637 B | 0644 |
|
test_jmxpassword.aug | File | 653 B | 0644 |
|
test_json.aug | File | 16.85 KB | 0644 |
|
test_kdump.aug | File | 2.84 KB | 0644 |
|
test_keepalived.aug | File | 14.33 KB | 0644 |
|
test_known_hosts.aug | File | 1.79 KB | 0644 |
|
test_koji.aug | File | 1.65 KB | 0644 |
|
test_krb5.aug | File | 28.56 KB | 0644 |
|
test_ldap.aug | File | 398 B | 0644 |
|
test_ldif.aug | File | 3.88 KB | 0644 |
|
test_ldso.aug | File | 486 B | 0644 |
|
test_lightdm.aug | File | 3.98 KB | 0644 |
|
test_limits.aug | File | 924 B | 0644 |
|
test_login_defs.aug | File | 528 B | 0644 |
|
test_logrotate.aug | File | 7.81 KB | 0644 |
|
test_logwatch.aug | File | 322 B | 0644 |
|
test_lokkit.aug | File | 2.1 KB | 0644 |
|
test_lvm.aug | File | 4.56 KB | 0644 |
|
test_mailscanner.aug | File | 32.15 KB | 0644 |
|
test_mailscanner_rules.aug | File | 2.6 KB | 0644 |
|
test_masterpasswd.aug | File | 3.21 KB | 0644 |
|
test_mcollective.aug | File | 1.2 KB | 0644 |
|
test_mdadm_conf.aug | File | 2.52 KB | 0644 |
|
test_memcached.aug | File | 1.15 KB | 0644 |
|
test_mke2fs.aug | File | 2.13 KB | 0644 |
|
test_modprobe.aug | File | 4.07 KB | 0644 |
|
test_modules.aug | File | 229 B | 0644 |
|
test_modules_conf.aug | File | 3.23 KB | 0644 |
|
test_mongodbserver.aug | File | 775 B | 0644 |
|
test_monit.aug | File | 1.03 KB | 0644 |
|
test_multipath.aug | File | 5.21 KB | 0644 |
|
test_mysql.aug | File | 8.75 KB | 0644 |
|
test_nagioscfg.aug | File | 2.95 KB | 0644 |
|
test_nagiosobjects.aug | File | 1.69 KB | 0644 |
|
test_netmasks.aug | File | 640 B | 0644 |
|
test_networkmanager.aug | File | 1.27 KB | 0644 |
|
test_networks.aug | File | 1.16 KB | 0644 |
|
test_nginx.aug | File | 7.04 KB | 0644 |
|
test_nrpe.aug | File | 2.13 KB | 0644 |
|
test_nslcd.aug | File | 12.84 KB | 0644 |
|
test_nsswitch.aug | File | 1.54 KB | 0644 |
|
test_ntp.aug | File | 5.09 KB | 0644 |
|
test_ntpd.aug | File | 1.87 KB | 0644 |
|
test_odbc.aug | File | 1.62 KB | 0644 |
|
test_opendkim.aug | File | 5.66 KB | 0644 |
|
test_openshift_config.aug | File | 3.64 KB | 0644 |
|
test_openshift_http.aug | File | 2.16 KB | 0644 |
|
test_openshift_quickstarts.aug | File | 12.42 KB | 0644 |
|
test_openvpn.aug | File | 28.09 KB | 0644 |
|
test_oz.aug | File | 611 B | 0644 |
|
test_pagekite.aug | File | 2.75 KB | 0644 |
|
test_pam.aug | File | 1.54 KB | 0644 |
|
test_pamconf.aug | File | 1010 B | 0644 |
|
test_passwd.aug | File | 2.44 KB | 0644 |
|
test_pbuilder.aug | File | 531 B | 0644 |
|
test_pg_hba.aug | File | 6.1 KB | 0644 |
|
test_pgbouncer.aug | File | 1.97 KB | 0644 |
|
test_php.aug | File | 1.4 KB | 0644 |
|
test_phpvars.aug | File | 1.63 KB | 0644 |
|
test_postfix_access.aug | File | 1.52 KB | 0644 |
|
test_postfix_main.aug | File | 1.03 KB | 0644 |
|
test_postfix_master.aug | File | 3.77 KB | 0644 |
|
test_postfix_passwordmap.aug | File | 1.31 KB | 0644 |
|
test_postfix_sasl_smtpd.aug | File | 530 B | 0644 |
|
test_postfix_transport.aug | File | 1.58 KB | 0644 |
|
test_postfix_virtual.aug | File | 1.23 KB | 0644 |
|
test_postgresql.aug | File | 8.07 KB | 0644 |
|
test_properties.aug | File | 3.51 KB | 0644 |
|
test_protocols.aug | File | 1.3 KB | 0644 |
|
test_puppet.aug | File | 547 B | 0644 |
|
test_puppet_auth.aug | File | 1.1 KB | 0644 |
|
test_puppetfile.aug | File | 1.73 KB | 0644 |
|
test_puppetfileserver.aug | File | 949 B | 0644 |
|
test_pylonspaste.aug | File | 1.73 KB | 0644 |
|
test_pythonpaste.aug | File | 1.23 KB | 0644 |
|
test_qpid.aug | File | 1.3 KB | 0644 |
|
test_quote.aug | File | 8.66 KB | 0644 |
|
test_rabbitmq.aug | File | 3.66 KB | 0644 |
|
test_radicale.aug | File | 1.04 KB | 0644 |
|
test_rancid.aug | File | 706 B | 0644 |
|
test_redis.aug | File | 5.81 KB | 0644 |
|
test_reprepro_uploaders.aug | File | 4.68 KB | 0644 |
|
test_resolv.aug | File | 1.46 KB | 0644 |
|
test_rhsm.aug | File | 4.46 KB | 0644 |
|
test_rmt.aug | File | 826 B | 0644 |
|
test_rsyncd.aug | File | 1.27 KB | 0644 |
|
test_rsyslog.aug | File | 5.44 KB | 0644 |
|
test_rtadvd.aug | File | 859 B | 0644 |
|
test_rx.aug | File | 3.33 KB | 0644 |
|
test_samba.aug | File | 3.52 KB | 0644 |
|
test_schroot.aug | File | 2.25 KB | 0644 |
|
test_securetty.aug | File | 636 B | 0644 |
|
test_services.aug | File | 2.87 KB | 0644 |
|
test_shadow.aug | File | 2.01 KB | 0644 |
|
test_shells.aug | File | 348 B | 0644 |
|
test_shellvars.aug | File | 18.33 KB | 0644 |
|
test_shellvars_list.aug | File | 4.18 KB | 0644 |
|
test_simplelines.aug | File | 724 B | 0644 |
|
test_simplevars.aug | File | 994 B | 0644 |
|
test_sip_conf.aug | File | 3.61 KB | 0644 |
|
test_slapd.aug | File | 3.03 KB | 0644 |
|
test_smbusers.aug | File | 664 B | 0644 |
|
test_solaris_system.aug | File | 2.48 KB | 0644 |
|
test_soma.aug | File | 424 B | 0644 |
|
test_spacevars.aug | File | 431 B | 0644 |
|
test_splunk.aug | File | 2.96 KB | 0644 |
|
test_squid.aug | File | 5.09 KB | 0644 |
|
test_ssh.aug | File | 2.92 KB | 0644 |
|
test_sshd.aug | File | 5.04 KB | 0644 |
|
test_sssd.aug | File | 896 B | 0644 |
|
test_star.aug | File | 1.56 KB | 0644 |
|
test_stunnel.aug | File | 791 B | 0644 |
|
test_subversion.aug | File | 3.06 KB | 0644 |
|
test_sudoers.aug | File | 9.9 KB | 0644 |
|
test_sysconfig.aug | File | 4.1 KB | 0644 |
|
test_sysconfig_route.aug | File | 522 B | 0644 |
|
test_sysctl.aug | File | 1.34 KB | 0644 |
|
test_syslog.aug | File | 10.96 KB | 0644 |
|
test_systemd.aug | File | 7.95 KB | 0644 |
|
test_termcap.aug | File | 16.69 KB | 0644 |
|
test_thttpd.aug | File | 1.17 KB | 0644 |
|
test_tmpfiles.aug | File | 9.94 KB | 0644 |
|
test_trapperkeeper.aug | File | 4.15 KB | 0644 |
|
test_tuned.aug | File | 259 B | 0644 |
|
test_up2date.aug | File | 6.23 KB | 0644 |
|
test_updatedb.aug | File | 855 B | 0644 |
|
test_util.aug | File | 428 B | 0644 |
|
test_vfstab.aug | File | 2.79 KB | 0644 |
|
test_vmware_config.aug | File | 1.7 KB | 0644 |
|
test_vsftpd.aug | File | 2.49 KB | 0644 |
|
test_webmin.aug | File | 195 B | 0644 |
|
test_wine.aug | File | 5.58 KB | 0644 |
|
test_xendconfsxp.aug | File | 7.74 KB | 0644 |
|
test_xinetd.aug | File | 2.78 KB | 0644 |
|
test_xml.aug | File | 20.04 KB | 0644 |
|
test_xorg.aug | File | 2.41 KB | 0644 |
|
test_xymon.aug | File | 4.29 KB | 0644 |
|
test_xymon_alerting.aug | File | 7.44 KB | 0644 |
|
test_yaml.aug | File | 1.34 KB | 0644 |
|
test_yum.aug | File | 7.28 KB | 0644 |
|