Tip Your Server, Please

Ubuntu Server Install and 1st 5 Minutes

JD P

http://blog.jdpfu.com - jdp [at] algoloma

Tonight


Upcoming Events / Meetings



Meetings 2nd Thursday of the Month
Sign up for ALE's email list to stay informed - http://ale.org/

Other Linux Groups in Metro ATL

Volunteers Needed


About Me


Linux Server Overview


These are all different services - should be on different installations.
Not just a UNIX best practice - Windows too.

All-in-One Servers


Against Security Best Practices

Trade-Offs


Confusion


Backup Plan or DR Plan?

Storage Considerations


Network Considerations


CPU Considerations


RAM Considerations


Installation for Tonight


Do Install


Installing Ubuntu Server 14.04.1

1st Five Minutes on Server


Methods / System / Documentation


My Script


Manually

Static IP / Network Settings


auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 172.22.22.11
  gateway 172.22.22.1
  netmask 255.255.255.0
  dns-nameservers 172.22.22.1
  dns-search jdpfu.com jdp.foo

My Script - Automatic


open the file ~/.ansible/.../ubusrv.yml

Playbook - 1


Playbook - 2


Playbook - 3


Base Packages?


* acpid – so a client VM can receive shutdown requests from the host VM server
* openssh-server – never forget this. Might be running on a console.
* fail2ban – dynamically block any failed ssh attacks. I can’t think of any reason NOT to have this on every box.
* iptables-persistent – no need to manually save/restore iptable rules
* postfix – system emails need an MTA to get forwarded to a real email address; only sends email, does NOT receive from outside the machine/VM
* aptitude – aptitude is smarter about package dependencies than apt-get.
* sysstat – performance capture tools
* ethtool – want jumbo frames and expanded network settings control?
* rsync – duh. MANDATORY
* rdiff-backup – backup tool of choice
* mlocate – locate is instantaneous.
* logwatch – daily reports of server activity (emailed, so MTA needed)
* lshw – create daily system hardware configs, compare today to yesterday and highlight any changes
* ntp – Keeping accurate time is a security consideration. Also, when troubleshooting complex client/server systems, having all the timestamps on logfiles match to the 0.001 sec makes finding root causes much easier
* tree – nice directory tree visualization – find . -type d replacement
* heirloom-mailx – provides a CLI mail program
* software-properties-common – PPA helper

Backups


Manual Steps


Not automated yet ...

Server is Ready for Internal Apps


Definitely NOT ready for the Internet!

That's all there is to bringing up a server.
Next steps are determined by your needs.

Summary


  1. Have a plan / script / paper / DevOps
  2. Follow it
  3. Improve it every time
  4. Consistency is critical
  5. Don't Confuse HA, Disaster Recovery and Backups

Questions?


Questions?


Questions?


Please send feedback!
Thank you.
[any material that should appear in print but not on the slide]