Hacker News new | past | comments | ask | show | jobs | submit login
A Linux Optimizer Script (github.com/hawshemi)
5 points by hawshemi 6 months ago | hide | past | favorite | 2 comments
This Bash script automates the optimization of your Linux server.

It performs the following tasks: Fix hosts file and DNS (temporarily):

Check and add 127.0.1.1 and server hostname to /etc/hosts. The original hosts file is backed up at /etc/hosts.bak.

Add 1.1.1.2, 1.0.0.2 nameservers to /etc/resolv.conf. The original DNS file is backed up at /etc/resolv.conf.bak.

Update, Upgrade, and Clean the server:

Update Upgrade Full-Upgrade AutoRemove AutoClean Clean Disable Terminal Ads (Only on Ubuntu).

Install XanMod Kernel (Only on Ubuntu & Debian):

Enable BBRv3. CloudFlare TCP Optimizations. More Details: https://xanmod.org Install Useful Packages:

apt-transport-https apt-utils autoconf automake bash-completion bc binutils binutils-common binutils-x86-64-linux-gnu build-essential busybox ca-certificates cron curl dialog epel-release gnupg2 git haveged htop jq keyring libssl-dev libsqlite3-dev libtool locales lsb-release make nano net-tools packagekit preload python3 python3-pip qrencode socat screen software-properties-common ufw unzip vim wget zip

Enable Packages at Server Boot.

Set the server TimeZone to the VPS IP address location.

Create & Enable SWAP File:

Swap Path: "/swapfile" Swap Size: 2Gb Enable IPv6 Support.

Optimize the SYSCTL Configs:

Optimize File System Settings. Optimize Network Core Settings. Optimize SWAP. Optimzie TCP Settings. Optimzie UDP Settings. Optimize UNIX Domain Sockets Settings. Optimize Virtual Memory (VM) Settings. Optimize Network Configuration Settings. Optimize the Kernel. Activate BBR (BBRv3 with XanMod). The original file is backed up at /etc/sysctl.conf.bak.

Optimize SSH:

Disable DNS lookups for connecting clients. Remove less efficient encryption ciphers. Enable and Configure TCP keep-alive messages. Allow agent & TCP forwarding. Enable gateway ports, Tunneling and compression. Enable X11 Forwarding. The original file is backed up at /etc/ssh/sshd_config.bak.

Optimize the System Limits:

Soft and Hard ulimit -c -d -f -i -l -n -q -s -u -v -x optimizations. Optimize UFW and open Common Ports:

Open Ports SSH, 80, 443. With IPv6, TCP & UDP. Reboot at the end is Recommended.




This is not the only thing about it, but this made me post:

  > Create & Enable SWAP File:
  > Swap Path: "/swapfile" Swap Size: 2Gb
  > Set the server TimeZone
I think we have very different ideas about optimization. Please don't do this.


Nice




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: