- The auditd rules you're using look highly application-specific. Installing them blindly is probably not appropriate.
- Some of the changes made by this script are not persistent. In particular, changes made using "mount" will not persist beyond a restart, and changes to permissions on files installed by packages will be overridden when the package is updated.
- Your script attempts to disable USB storage, FireWire, and some filesystems (like HFS+). These steps may be unexpected and undesirable for desktop systems.
- Your script attempts to write to paths which will not exist on a Debian system, like "/etc/sysconfig/init".
- Many of the snippets used by this script make assumptions about the base system configuration, like the names and purposes of its network interfaces. These assumptions need to be checked.
- The IPtables rules installed by this script are extremely questionable. They include a number of sample rules (like one that allows IP forwarding on weekdays between 9:30 and 10:30 PM, one that blocks packets containing the strings ".com" or ".exe", or one that blocks certain traffic from 1.2.3.4), some rules which will limit the functionality of the system (like the rate-limit rules for port 80, or the rule to "force fragments packets check", which actually rejects fragmented packets), and some rules which do nothing at all (like the unreferenced "port-scanning" chain, or a rule that attempts to "block new packets that aren't SYN packets"). Additionally, the rules will block all traffic from/to RFC1918 networks, which will block all network connectivity on any system that's on a private network (like a home network or a VPC).
- The three (!) firewalls which this script will attempt to install (iptables-persistent, shorewall, and ufw) are incompatible with each other.
- The "core file permissions" snippet does nothing, because it attempts to change permissions on files in the current working directory.
- Some of the features that this script prompts for (like "revert_/root_permissions") are simply unimplemented, and will throw an error if selected.