← Back to Portfolio PROJECT / 002
LINUX / SYSTEM ADMINISTRATION / DEVOPS

Ubuntu Server Environment

A practical Ubuntu Server environment built to develop hands-on experience with Linux administration, networking, SSH, services, firewall configuration and server management.

Ubuntu Server Linux SSH Networking UFW Cockpit systemd
ubuntu-server
$ hostname
ubuntu-server
$ whoami
alvin
$ systemctl --type=service
Active Linux services
$ sudo ufw status
Firewall configuration
$ ssh alvin@server
Remote shell connected

Building a practical Linux server environment.

This project focuses on building and managing an Ubuntu Server environment as a foundation for learning Linux system administration and Cloud DevOps practices.

Instead of treating Linux as only a collection of commands, the environment is used as an actual server where users, services, networking, permissions and system configuration can be practiced.

The environment also provides a foundation for experimenting with additional services and infrastructure tools as the project develops.

Server management workflow.

The Ubuntu Server acts as the central Linux environment. Administration can be performed through the terminal using SSH, while Cockpit provides a browser-based management interface.

Development PC Workstation
→
Ubuntu Server Linux Environment
→
SSH Remote Administration
→
Cockpit Web Management

Technologies and concepts.

01

Ubuntu Server

Linux server operating system used as the foundation of the environment.

Linux CLI Server
02

Linux CLI

Command-line tools used to inspect, configure and manage the server.

bash filesystem processes
03

SSH

Secure remote administration from another computer.

Remote Access Authentication Networking
04

systemd

Service and system management using the Linux service manager.

Services systemctl Boot
05

UFW

Host-based firewall management and network access control.

Firewall TCP Ports
06

Cockpit

Browser-based interface for monitoring and managing the Linux server.

Web UI Monitoring Administration

Building the environment.

01

Install Ubuntu Server

Set up a minimal Ubuntu Server environment and prepare the system for administration.

02

Learn the Linux filesystem

Work with directories, files, paths, permissions and common Linux command-line utilities.

03

Configure users and permissions

Practice user management, administrative privileges and Linux file permissions.

04

Configure SSH

Enable secure remote access and manage the server from another machine.

05

Work with services

Learn how Linux services operate and use systemctl to inspect and manage them.

06

Configure firewall rules

Practice controlling network access through UFW and understand the relationship between services and ports.

07

Install Cockpit

Add browser-based server management for system monitoring and administration.

Core server commands.

ubuntu-server.sh
# Check the current user

whoami

# Display the hostname

hostname

# Display the current directory

pwd

# List files

ls -la

# Inspect IP addresses

ip addr

# Check SSH service

sudo systemctl status ssh

# Check firewall

sudo ufw status

# List active services

systemctl --type=service --state=running

# Check listening ports

sudo ss -tulpn

Managing the server.

SSH

Remote Administration

Manage the Linux server remotely from a workstation through a secure shell connection.

UFW

Network Protection

Control which network services and ports are allowed through the host firewall.

GUI

Cockpit

Monitor and manage the Linux server through a browser-based administration interface.

What this environment is teaching me.

AREA 01

Linux administration

Understanding how files, users, permissions, processes and services work together on a Linux server.

AREA 02

Networking

Understanding interfaces, IP addresses, ports, services and remote connectivity.

AREA 03

Service management

Learning how services are started, stopped, enabled and monitored using systemd.

AREA 04

Troubleshooting

Investigating configuration, connectivity and service issues instead of relying only on preconfigured environments.

Linux as the foundation.

This environment is helping me move from learning individual Linux commands to understanding how a complete server environment operates.

The focus is on practical administration: connecting remotely, managing services, configuring networking, working with permissions and controlling access to server resources.

These fundamentals form the base of the Cloud and DevOps technologies I am continuing to learn.

Current direction

Continue expanding the Ubuntu Server environment with additional services, automation and Cloud/DevOps tooling.

END OF PROJECT

Learn Linux. Build servers. Automate everything.

This environment is part of my hands-on journey toward Cloud and DevOps engineering.