
A quick introduction to the course, overview of the main learning points, and why you should be hyped.
Learn a little bit about your instructor for this course, Henry.
Dip your feet into Server administration with this quick introductory activity.
Learn about which tools and resources you will need while going through this course.
Henry goes over Digital Ocean.
Henry shows you how to create your first server.
Henry gets you started on your first lab exercise for the course.
Congratulations video on making your first server!
Cool, you have a server. Now what?
Learn how to use SSH to log in using emailed credentials.
Henry goes over sudo, and how to add a user that’s not root and explain why that’s important.
Some basics of navigating the file tree with - ls (-a -l -alt), cd, cp, mv, rm, pwd, man.
Take a look at Linux file system.
Dive a little deeper with File permissions, chmod, chown.
This second lab will have you go through a set of tasks on the command line.
You now have the knowledge to move around your server!
CLI is neat and all, but how do I write code in here?
CLI editors vs GUI editors
A rundown of the basics of using Nano.
Henry shows you how to install and get started with Vim.
Learn some VIM commands in a neat and fun game!
In this lab exercise you will Create a file/edit file, find/replace, and copy/paste.
Vim seems like a lot, but it’s powerful. Nano is more than acceptable.
Cool. Files and stuff. What else can this do?
There are programs just like on desktops. Just… different.
Henry discusses dependencies, Yum list, yum search, and compares version numbers.
Henry shows you how to install the sl train, shows how it works, and demonstrates how remove it with yum.
Go over some commands in Yum and some places for quick reference.
Package managers are the key to making any server you want.
How do I string packages together?
Install and enable Apache, MySQL and PHP.
Common settings people change, and /var/www/
Enable and configure MySQL and learn some basic MySQL commands.
Henry talks about how this translates PHP and serves HTML pages.
Now you have LAMP up. You can put any number of sites in here!
But how do I get projects on here?
Brief overview of Git, and an explanation of /var/www/ hosting sites.
Clone a repository down to your server and check in browser.
Make a change on your computer, push it to GitHub, and pull to your server.
Henry shows you how to make changes on the server (Vim), commit, push to GH, and pull to computer.
This lab will ask you to Git clone two of Henry's repos and set up virtual hosts (ports).
Now you can get your code somewhere you can show it off!
But how do I store and use input data?
Create a user, give CRUD access, and go over GRANT.
Go over how databases are made up of tables.
Connect Prebuilt PHP app to the database and learn how conn/user/pass/db work.
Install and hook up SQLBuddy. Easy mode.
In this lab you will Git clone Henry's repo and hook it up to MySQL.
Now you can give your apps lasting memory and that's pretty neat.
Buy a domain from NameCheap and do the name server forwarding.
Henry teaches you how to create virtual host to have a subdomain.
Henry talks about how you can use MX, TXT, and AAAA records.
No one likes remembering IP’s. This makes your life easier.
This all seems like it would be awfully easy to hack…
Henry goes over settings, explains some of them, and teaches you how to lock down ssh by root when not local.
Henry explains creating, adding, and using an SSH key.
Lock down those ports.
Making snapshots with DO, go over offsite backups and git fire.
Read up on basic security principles?
There is SO much more you can do, but this is a solid baseline.
Seriously though, have you checked the logs?
If something broke, this should be your first stop. Henry explains logs.
Quick video to go over ls flags again, so you can find last modified.
Henry breaks a couple things on purpose and finds the access/error logs.
Talk briefly on technology like Splunk and ELK.
In this lab, you will open certain logs in vim and search for provided events.
Logs make your life easier. Learn to read them. Learn to love them.
Are you a developer who wants to be able to deploy and manage your own servers? Perhaps you want to start working in server side development and need to understand the back end environment. Maybe you're interested in starting a career in server administration and want to understand the fundamentals?
The fact is if you're a web developer, or web technologist you need to understand server administration. After you complete this course you will be able to independently provision your own web servers, and deploy salable web applications that can be shared globally. You'll learn the tools of the trade used by server administrators, and how to properly secure your web servers.
This is a course about DOING-- not simply watching an instructor. In the very first chapter you'll hit the ground running as you create and configure your first server. During the course you'll master command interface tools like NANO and VIM. You'll examine package managers and understanding the LAMP stack.
This course also prepares you to work with GIT code repositories and the popular mySQL database. You'll also learn the important server administration skills of working with security and logs.
When you enroll in this class you'll join a community of learners led by LearnToProgram's Henry Quinn. If you'd like to add server administration to your list of skills, we'll look forward to seeing you in class.