We may earn an affiliate commission when you visit our partners.
Course image
Aleksey Grebeshkov

Join the community of over 2000 students to learn the basic concepts and tools that you will need to build fully functional Linux based web server.

Here's what our students say:

Read more

Join the community of over 2000 students to learn the basic concepts and tools that you will need to build fully functional Linux based web server.

Here's what our students say:

I would recommend this class to whom ever is interested in Learning how to setup a Linux Web Server awesome. Talk about the instructor he is very attentive to his students. Answered back in a timely manner and the quality of the videos is excellent I hope to see more courses from this instructor.

I wanted to take a step forward from shared hosting to unmanaged VPS and this course has been really helpful. Thank you.

The teaching style makes it easy to understand. Very detailed approach.

Ideas are shown in an interesting manner with some catchy phrases. Overall, good presentation.

Great course and instructor. Just as described. Five Stars.

+ even more 5-star reviews.

Build practical skills in Linux OS installation and web server setup with this tutorial for beginners. 

  • Physical dedicated server set up

  • DigitalOcean and Amazon Web Services virtual private server set up

  • Debian Linux operating system installation

  • Apache 2 web server / Nginx, MySQL / MariaDB database and PHP installation

  • Tuning the web server for low memory systems

  • Setting up a personal web hosting

  • Applying security tweaks to your server to make it less vulnerable to external attacks

Powerful Tools at Your Fingertips  

Learning Linux server setup essentials puts a very powerful and useful tools at your disposal. After finishing this course you will be able to organize your personal web hosting and any other web-based service out there, from e-mail to file sharing service.

Save money, take total control over your data and have fun.

Content and Overview 

Suitable for beginning system administrators with zero experience in Linux administration. Through this course of  46 lectures (will be adding more regularly) you'll learn all of the fundamentals of web server administration, and gain experience in setting up Linux server OS and LAMP stack. Each chapter is packed with step-by-step guides which will put your new learned skills into practical use immediately.

You will start with choosing the right platform for your server. Then you will install Debian Linux OS to the server and set up the LAMP stack. After that you will configure multiple Apache virtual hosts and Nginx server blocks, create your first MySQL/MariaDB user and database, and finally you will install WordPress to your new server.

Students completing the course will have the knowledge and skills to set up and administrate their personal server.

Note, that this course shares some basic theoretical content from my other course "CentOS Linux Server Setup Essentials for Webhosting and More", but all the practical lessons are being designed for Debian Linux.

Working through all the lections and command-line commands, you'll be able to instantly put the knowledge into practice, and will receive a verifiable certificate of completion upon finishing the course.

100% Satisfaction Guarantee. No Questions Asked.  

I hope you will be absolutely satisfied once you got through my course. I do my best to make sure this course meets your need and expectations. But if you're not satisfied with this course for ANY valid reason, contact me within 30 days from your purchase and I will refund in full. No questions asked. You have absolutely nothing to lose.

Enroll now

What's inside

Learning objectives

  • Install and run debian linux os on any computer or server
  • Configure lamp (linux + apache/nginx + mysql/mariadb + php) software bundle to host one or multiple blogs or websites
  • Tune low-ram web servers to work as production servers
  • Create and configure ssl certificates & more useful tips for webserver administrators

Syllabus

Get ready to start learning in a most efficient way.

Welcome to my course on Linux server setup!

I’ll go over the broad topics we’ll cover in the course. I’ll state what to expect from the course and will give you some ideas on why you might need your own server (either you are an IT person or not).

Read more

In this lection I will give you some ideas on how can you utilize a personal server for your various needs.

A short BIO of me as your instructor:

  • 15 years in web development business;
  • 7 years in IT consulting;
  • 5 years in hosting business;
  • PhD in enterprise information strategy.

This lection is about hardware and software you’ll need.

In short, you will need:

  • Any PC or laptop running Windows, OS X or Linux desktop as your workstation;
  • Internet connection;
  • Notebook and a pan for note taking (Evernote or Microsoft OneNote will be even better) (highly recommended);
  • 2+ Gb USB flash drive or a DVD-R drive (optional);
  • Server computer or a dedicated PC (optional);
  • Dedicated static IP address (optional).

To get maximum out of this lessons, chose the desired platform (a dedicated physical server, a virtual server or a virtual machine) in further lectures and please do repeat all the practical lessons to gain your own experience!

This course is about practice -- there is no point in just watching the video lectures or reading the instructions. And, please, take notes! Create your own knowledge base in a note taking app and use tagging (!), so that you can quickly find a command or solution you need at the moment.

Command line may seem to be an out-fashioned old-style way of communicating with a computer, but it may be much more powerful, fast and comfortable then a graphical interface. You may want to think of it as of a Siri that understands a specific dialect (“commands”), a way to directly talk to a computer.

Get to know how to chose the appropriate platform for you server.
Welcome to Section Two

We will talk about pros and cons of having a physical server (either in a data center or at home/office), what actually is a virtual server and what are its’ limitations.

If you want to have a server at home or at your office and don’t want to pay extra money for a specialized server hardware, you may still set up a server on an ordinary PC, even an old one (not too old obviously).

A bit deeper look into what virtual server are and how do they differ. We will answer a question: what is a difference between VPS and VDS?

Now you are ready to start your own journey to the world of server setup.

Learn all the steps and aspects of Linux OS installation for server purposes.

We will learn how to prepare the installation media with Unetbootin tool for Microsoft Windows OS users.

We will learn how to prepare the installation CD or DVD for Microsoft Windows OS users.

We will learn how to prepare the installation media with Unetbootin tool with some tips and tricks for OS X users.

We will learn how to prepare the installation CD or DVD for OS X users.

This lection will cover all steps of Linux OS setup for physical (dedicated) server: from configuring the BIOS to change boot order to step-by-step Linux installation guide.

In this lection you we will:

  • Change the BIOS configuration to load the system installation tool from DVD or USB drive;
  • Go through all steps of Debian Linux setup process.

This short lection is to show you that virtual server option is the way to get rid of all difficulties you may face before and during Linux installation. Moreover, going into VS you will not need to support the hardware of your server at all: no need in power backup, no need in fast internet channel and static IP address, no need in fixing broken hardware if it fails and much more.

We will cover all the steps of creating a virtual server (so called “droplet”) at DigitalOcean.

You will learn:

  • How to set up your Linux server in 60 seconds;
  • How to choose data center location for your droplet and a droplet size with best cost/performance ratio;
  • How to configure secure encrypted connection to your server.

See additional materials for a free $10 bonus to have a quick start with DigialOcean.

We will cover all the steps of creating a virtual server (so called “instance”) at Amazon Web Services.

You will learn:

  • How to set up your Linux server in just several minutes;
  • How to choose data center location for your instance and an instance size with best cost/performance ratio;
  • How to configure secure encrypted connection to your server.

This lesson will show you how to connect to your newly setup server via SSH.

You will learn:

  • What software you need for SSH connection;
  • How to connect to your server using a password or a secure key pair;
  • How to connect to your server from your smartphone or tablet.
Creating a non-root sudo User
Creating a non-root sudo User (article)
Install all the software you need to run a fully functional server

This lection is about what LAMP stack is. Putting simply, LAMP is a group of open source software used to get web servers up and running: Linux, Apache, MySQL, and PHP. Since our server is already up and running Debian, the linux part is already taken care of. And Section 4 is about how to install and configure the rest.

This lection is about how to install and configure Apache webserver.

This lection is a step-by-step installation guide for Apache. We will install the Apache Web Server to your server via command line and configure it to run a simple HTML-based website.

See additional materials for linux commands we use here so you can copy and paste them into your console.

This lection is about main differences between Apache and Nginx webservers.

Installing and Configuring Nginx Web Server

This lection is a step-by-step installation guide for Nginx. We will install the Nginx Web Server to your server via command line and configure it to run a simple HTML-based website, and configure server blocks (virtual hosts).

See additional materials for linux commands we use here so you can copy and paste them into your console.

This lection is a step-by-step installation guide for MySQL database server. I will guide you through the installation process. We will also install a web based database administration tool – phpMyAdmin – so that you can do all the basic administration through a convenient web interface.

This lection is a step-by-step installation guide for MySQL database server. I will guide you through the installation process. We will also install a web based database administration tool – phpMyAdmin – so that you can do all the basic administration through a convenient web interface.

This lection contains linux commands we use here so you can copy and paste them into your console.

This lection is a step-by-step installation guide for MariaDB database server. I will guide you through the installation process.

Installing and Configuring MariaDB Database Server (commands)
Securing MySQL & MariaDB Database Server
Securing MySQL & MariaDB Database Server (article)

This lection is a step-by-step installation guide for PHP. We will install PHP and configure it for further use.

This lection contains commands we use to install and configure PHP so that you can copy and paste them into your console.

This lesson contains some modifications to LAMP configuration files for servers that run on Low Memory computers. These tips will help you make such systems more responsive and avoid out-of-memory issues.

This lesson contains console commands for servers that run on Low Memory computers. These tips will help you make such systems more responsive and avoid out-of-memory issues.

This lecture is about installing some very usefull tools to help you be more productive with your newly configured server.

This lecture contains console commands for installing some very usefull tools to help you be more productive with your newly configured server.

Set up your web hosting service for personal or business use.

In this lecture we will learn how to configure multiple Apache virtual hosts to host several websites on your webserver.

This lecture contains console commands for configuring multiple Apache virtual hosts to host several websites on your webserver.

In this lesson we will learn how to administrate databases, users and permissions through command line as well as with phpMyAdmin tool.

You will learn how to:

  • Create and remove database users;
  • Create, remove and edit databases;
  • Assign permissions to users.

In this lesson we will install WordPress CMS to your new server.

In this lesson we will learn how to:

  • Prepare your server for Wordpress installation by creating MySQL database and user;
  • Download the installation bundle;
  • Actually install Wordpress CMS to your server.

I will also give you a simple shell script to make Wrodpress installation easier for you.

What's Next?
This section will show you some useful tips and techniques to solve the problems you may face during the server administration and/or running a web hosting server
Adding the Restricted SFTP User to the System
Adding the Restricted SFTP User to the System (commands + article)
Create and Configure SSL Certificate on Apache
Create and Configure SSL Certificate on Apache (commands)
Bonuses for my dear students
Bonus Lecture: discounts for my students

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches all the fundamentals of web server administration, which is standard in industry
Develops knowledge and skills for setting up Linux servers, which is a core skill for system administrators
Covers getting setup with a server
Covers web server installation
Teaches linux operating system setup
Covers database setup

Save this course

Save Debian Linux Server Setup and Administration Essentials to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Debian Linux Server Setup and Administration Essentials with these activities:
Follow a tutorial to set up and configure a MySQL database server
Following a tutorial will provide you with structured guidance to set up and configure a MySQL database server.
Browse courses on Database Administration
Show steps
  • Identify a beginner-friendly tutorial on setting up and configuring a MySQL database server.
  • Follow the tutorial step-by-step, taking notes and asking questions as needed.
  • Test your MySQL database server to ensure it is working properly.
Practice installing and configuring Apache web server
Practice installing and configuring Apache web server to gain hands-on experience with the setup process.
Browse courses on Apache Web Server
Show steps
  • Download and install Apache web server on your local machine.
  • Configure the Apache configuration file to suit your needs.
  • Start the Apache web server and verify that it is running.
  • Create a simple HTML file and host it on your Apache web server.
  • Test that your Apache web server is accessible by visiting the HTML file in a web browser.
Develop a PHP script to connect to a MySQL database and perform basic CRUD operations
Creating a PHP script will allow you to apply your knowledge of PHP and MySQL by performing practical database operations.
Browse courses on PHP
Show steps
  • Plan the structure of your PHP script and decide on the specific CRUD operations you want to implement.
  • Write the PHP code to connect to the MySQL database.
  • Implement the CRUD operations (create, read, update, delete) in your PHP script.
  • Test your PHP script to ensure that it is working correctly.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Create a step-by-step guide on how to install and configure Nginx web server
Creating a step-by-step guide will help you solidify your understanding of the process and provide a valuable resource for others.
Show steps
  • Gather the necessary information and materials to create the guide.
  • Write the guide in a clear and concise manner, providing detailed instructions and screenshots as needed.
  • Review and edit the guide to ensure accuracy and completeness.
  • Share the guide with others through a blog post, social media, or other platforms.
Practice tuning the web server for low memory systems
Practicing tuning the web server for low memory systems will help you improve the performance of your web server on resource-constrained environments.
Browse courses on System Administration
Show steps
  • Identify the key configuration settings that can be adjusted to improve performance on low memory systems.
  • Make the necessary changes to the configuration file and monitor the impact on the web server's performance.
  • Test your changes under different load conditions to ensure stability and performance.
Create a presentation on the benefits and challenges of using WordPress for personal or business web hosting
Creating a presentation will allow you to synthesize your knowledge about WordPress and its applications for web hosting.
Browse courses on Wordpress
Show steps
  • Gather information about the benefits and challenges of using WordPress for web hosting.
  • Organize your information into a logical and engaging presentation format.
  • Create visual aids and examples to support your presentation.
  • Practice delivering your presentation to ensure clarity and effectiveness.
Attend a local meetup or conference related to web hosting or server administration
Attending industry events will allow you to connect with professionals, learn about the latest trends, and expand your knowledge beyond the classroom.
Show steps
  • Research local meetups or conferences related to web hosting or server administration.
  • Register for the event and make plans to attend.
  • Prepare questions and talking points to engage with speakers and attendees.
  • Follow up with connections made at the event and explore opportunities for collaboration or learning.
Participate in a hands-on workshop on server security best practices
Participating in a hands-on workshop will provide you with practical experience in implementing server security measures.
Browse courses on Server Security
Show steps
  • Identify and register for a workshop on server security best practices.
  • Attend the workshop and actively participate in the hands-on exercises.
  • Implement the security measures learned in the workshop on your own server or a test environment.
  • Monitor and evaluate the effectiveness of the implemented security measures.

Career center

Learners who complete Debian Linux Server Setup and Administration Essentials will develop knowledge and skills that may be useful to these careers:

Reading list

We haven't picked any books for this reading list yet.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Debian Linux Server Setup and Administration Essentials.
Setup XAMPP run a local server web development
Most relevant
CentOS 7 Linux Server: Alternative to Red Hat Enterprise
Most relevant
Ubuntu Linux Server Basics
Most relevant
VirtualBox 1.9: Advanced Features and Practical Use
The Perfect Nginx Server - Ubuntu (22.04) Edition
Creating Your Own Minecraft Server
Getting Started with Linux
LiteSpeed Fundamentals
Linux Administration Bootcamp: Go from Beginner to...
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser