All my Ansible Playbooks
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

87 lines
2.7 KiB

#!/bin/bash
# Network Startup config
#
# chkconfig: 2345 99 01
# description: Layer7's Secure Span Gateway TCP protection
# processname: none
# pidfile: none
# config: none
# Source function library.
. /etc/rc.d/init.d/functions
# Tune the Linux TCP/IP Stack
start() {
echo "Setting wide local port range for more outbound connections"
echo "1024 65530" > /proc/sys/net/ipv4/ip_local_port_range
echo "Disable ECN because some systems don't do it right yet"
echo 0 > /proc/sys/net/ipv4/tcp_ecn
echo "Setting Low latency TCP"
echo 1 > /proc/sys/net/ipv4/tcp_low_latency
echo "Turning off timestamps"
echo 0 > /proc/sys/net/ipv4/tcp_timestamps
echo "Lowering keepalive time"
echo 2400 > /proc/sys/net/ipv4/tcp_keepalive_time
echo 5 > /proc/sys/net/ipv4/tcp_keepalive_intvl
echo "Lowering FIN timeout"
echo 20 > /proc/sys/net/ipv4/tcp_fin_timeout
echo "Turning On Window scaling"
echo 1 > /proc/sys/net/ipv4/tcp_window_scaling
echo "Turning On Selective Acknowledgement"
echo 1 > /proc/sys/net/ipv4/tcp_sack
echo "Disable route triangulation"
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo "Disable Source routing"
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo "Disable Ping broadcasts"
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "Increasing SYN packet Backlog"
echo 8192 > /proc/sys/net/ipv4/tcp_max_syn_backlog
echo "Setting higher tcp memory limits"
echo 16777216 > /proc/sys/net/core/wmem_max
echo 16777216 > /proc/sys/net/core/rmem_max
# The following are in 4k-byte PAGES, not bytes
echo "196608 262144 393216" > /proc/sys/net/ipv4/tcp_mem
echo "Setting socket sizes for best cpu usage"
echo "131072" > /proc/sys/net/core/wmem_default
echo "174760" > /proc/sys/net/core/rmem_default
echo "4096 174760 16777216" > /proc/sys/net/ipv4/tcp_rmem
echo "4096 16384 16777216" > /proc/sys/net/ipv4/tcp_wmem
echo "Turning on TIME_WAIT recyle and reuse"
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
echo "Increasing number of TIME_WAIT buckets"
echo 360000 > /proc/sys/net/ipv4/tcp_max_tw_buckets
echo "Turning on syncookie protection from Denial of Service (DOS) attacks"
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo "Don't cache thresholds from previous connections"
echo 1 > /proc/sys/net/ipv4/tcp_no_metrics_save
echo "Increase Network backlogs for Gigabit"
echo 2500 > /proc/sys/net/core/netdev_max_backlog
echo "Increase maximum connections"
echo 10240 > /proc/sys/net/core/somaxconn
echo "Memory limit for fragment assembly"
echo 4194304 > /proc/sys/net/ipv4/ipfrag_high_thresh
echo "Done"
return 0
}
stop() {
echo
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
esac
exit $RETVAL