Course: Introduction to Server Administration

Introduction to Server Administration

  • Life Time Access
  • Certificate on Completion
  • Access on Android and iOS App
  • Self-Paced
About this Course

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.

Who is the target audience?

  • Web Designers and Developers who want to understand the server environment
  • People who want to learn DevOps (Development Operations)
  • People who work with enterprise applications
  • Back end developers
Basic knowledge
  • You should have basic understanding of the Windows or Mac operating system
  • You should able to use the internet and internet tools
What you will learn
  • You will learn what exactly a virtual private server (VPS) is, how one can benefit you, and how to provision one
  • You will learn how to SSH into your new machine and navigate around using the command line
  • You will learn how to use command line based text editors to edit configuration files
  • You will learn what a package manager is and how they can help you set up a system
  • You will learn how to set up a LAMP hosting environment
  • You will learn how to use Git to populate /var/www/ with your projects
  • You will learn how to connect projects to local MySQL databases
  • You will learn how to point domain names to your sites and set up Apache virtual hosts
  • You will learn to lock down your system by closing common web server attack vectors
  • You will learn how to troubleshoot your server by reading your log files
Number of Lectures: 74
Total Duration: 04:57:23
First Steps In Server Administration
  • Welcome to the Course  

    A quick introduction to the course, overview of the main learning points, and why you should be hyped.

  • About the Instructor  

    Learn a little bit about your instructor for this course, Henry.

  • Introductory Activity  

    Dip your feet into Server administration with this quick introductory activity.

  • Defining a Virtual Private Server  
  • Obtain the Tools of the Trade  

    Learn about which tools and resources you will need while going through this course.

  • Digital Ocean Overview  

    Henry goes over Digital Ocean.

  • Creating Your First Server  

    Henry shows you how to create your first server.

  • Sign up for Digital Ocean and Create a Server  

    Henry gets you started on your first lab exercise for the course.

  • You’re Officially a Server Admin (“It’s A Unix System!”)  

    Congratulations video on making your first server!

How To Connect And Get A Lay Of The Land (SSH & CLI)
  • Handling Permissions and Users  

    Cool, you have a server. Now what?

  • SSH (Secure Shell)  

    Learn how to use SSH to log in using emailed credentials.

  • Create a User  

    Henry goes over sudo, and how to add a user that’s not root and explain why that’s important.

  • Navigate the File Tree  

    Some basics of navigating the file tree with - ls (-a -l -alt), cd, cp, mv, rm, pwd, man.

  • Quick Tour  

    Take a look at Linux file system.

  • Less Quick Tour  

    Dive a little deeper with File permissions, chmod, chown.

  • Setting up Tasks on the Command Line  

    This second lab will have you go through a set of tasks on the command line.

  • CLI Came, CLI Saw, CLI Conquered  

    You now have the knowledge to move around your server!

Editing Files, Or How To Stop Worrying And Love Vim (Nano & Vim)
  • Navigating with Nano & VIM  

    CLI is neat and all, but how do I write code in here?

  • CLI Text Editors  

    CLI editors vs GUI editors

  • Nano  

    A rundown of the basics of using Nano.

  • Vim  

    Henry shows you how to install and get started with Vim.

  • VIM Adventures  

    Learn some VIM commands in a neat and fun game!

  • Creating and editing files  

    In this lab exercise you will Create a file/edit file, find/replace, and copy/paste.

  • You Too Can Be a Vim Snob!  

    Vim seems like a lot, but it’s powerful. Nano is more than acceptable.

Sudo Yum Get Install Understanding-Of-Package-Managers (Yum)
  • Basic Yum Commands  

    Cool. Files and stuff. What else can this do?

  • Package Managers 101  

    There are programs just like on desktops. Just… different.

  • See What You’ve Got and Find Something New  

    Henry discusses dependencies, Yum list, yum search, and compares version numbers.

  • Remove a Package  

    Henry shows you how to install the sl train, shows how it works, and demonstrates how remove it with yum.

  • Yum Cheat Sheet  

    Go over some commands in Yum and some places for quick reference.

  • Using Package managers  
  • The World At Your Fingers  

    Package managers are the key to making any server you want.

No, The Other Kind of LAMP (LAMP Stack)
  • What is the Lamp Stack?  

    How do I string packages together?

  • Introduction to the LAMP Stack  
  • Gather The Tools  

    Install and enable Apache, MySQL and PHP.

  • Common Setting in Apache  

    Common settings people change, and /var/www/

  • Enabling and Configuring with MySQL  

    Enable and configure MySQL and learn some basic MySQL commands.

  • Serving HTML Pages with PHP  

    Henry talks about how this translates PHP and serves HTML pages.

  • Working with Apache, MySQL, and PHP  
  • The Hostess With the Mostest  

    Now you have LAMP up. You can put any number of sites in here!

Let’s Git Your Code On This Server (Git & HTTPD)
  • Using GITHUB to put projects on your Server  

    But how do I get projects on here?

  • Overview of Git and /var/www/  

    Brief overview of Git, and an explanation of /var/www/ hosting sites.

  • Git Clone  

    Clone a repository down to your server and check in browser.

  • Making Changes (Remote)  

    Make a change on your computer, push it to GitHub, and pull to your server.

  • Making Changes (Local)  

    Henry shows you how to make changes on the server (Vim), commit, push to GH, and pull to computer.

  • Git Cloning Virtual repositories  

    This lab will ask you to Git clone two of Henry's repos and set up virtual hosts (ports).

  • You’re A Git-ar Hero  

    Now you can get your code somewhere you can show it off!

If It Only Had A Brain (MySQL)
  • Connecting Databases to your Server  

    But how do I store and use input data?

  • Creating Users/Passwords/Permissions  

    Create a user, give CRUD access, and go over GRANT.

  • Creating Databases/Tables/Columns  

    Go over how databases are made up of tables.

  • Connecting App To Database  

    Connect Prebuilt PHP app to the database and learn how conn/user/pass/db work.

  • SQLBuddy  

    Install and hook up SQLBuddy. Easy mode.

  • Linking up to MySQL  

    In this lab you will Git clone Henry's repo and hook it up to MySQL.

  • It’s Alive It’s Alive!!!  

    Now you can give your apps lasting memory and that's pretty neat.

Help People Find Your Projects (Domains)
  • Linking a Domain to your Server  
  • Buying A Domain  

    Buy a domain from NameCheap and do the name server forwarding.

  • Pointing That Domain To Your Site/Server  
  • Subdomains  

    Henry teaches you how to create virtual host to have a subdomain.

  • Advanced Domain Stuff  

    Henry talks about how you can use MX, TXT, and AAAA records.

  • Setting up a Domain with your Server  
  • This Is Kind Of How Google Started  

    No one likes remembering IP’s. This makes your life easier.

How To Stop The Hackers (Security)
  • Protecting Your Server  

    This all seems like it would be awfully easy to hack…

  • Lock Down SSH  

    Henry goes over settings, explains some of them, and teaches you how to lock down ssh by root when not local.

  • Add SSH Key  

    Henry explains creating, adding, and using an SSH key.

  • Basic Firewall  

    Lock down those ports.

  • Snapshot  

    Making snapshots with DO, go over offsite backups and git fire.

  • Basic Security  

    Read up on basic security principles?

  • The Best Offense Is A Good Defense  

    There is SO much more you can do, but this is a solid baseline.

Have You Checked The Logs?
  • Check those Logs  

    Seriously though, have you checked the logs?

  • Logs and You! (/var/log/)  

    If something broke, this should be your first stop. Henry explains logs.

  • Which Files To Check (ls -altr)  

    Quick video to go over ls flags again, so you can find last modified.

  • What To Look For  

    Henry breaks a couple things on purpose and finds the access/error logs.

  • Log Aggregators  

    Log Aggregators

  • Opening up logs and searching for events  

    In this lab, you will open certain logs in vim and search for provided events.

  • Pay Attention To The Man Behind The Curtain  

    Logs make your life easier. Learn to read them. Learn to love them.

Reviews (0)