Skip to main content
In this lesson, we explore four methods to log into a Linux system—similar to signing in to websites or apps with a username and password. The four methods covered include:
  1. Local Text Mode Console
  2. Local Graphical Mode Console
  3. Remote Text Mode Login
  4. Remote Graphical Mode Login
You may encounter terms such as console, virtual terminal, and terminal emulator. Despite their historical origins, today’s explanation is straightforward:
  • A console is the display screen where Linux outputs text and accepts commands.
  • A terminal emulator is a graphical application that replicates console functionality within a window.
The image shows three types of terminal interfaces: a console, a virtual terminal, and a terminal emulator, each with a distinct visual representation.
Historically, when computing resources were scarce and expensive, a powerful central computer was connected to multiple remote terminals, allowing simultaneous use by multiple users. Today, both consoles and terminal emulators are implemented in software. For instance, during the Linux boot process, you will see vital system events displayed as text:
After booting, you can access a virtual terminal by pressing Control + Alt + F2 on your keyboard. This action brings up a text-based interface for login.
The image shows instructions for accessing virtual terminals using the key combination "CTRL + ALT + F2" and a login prompt for Ubuntu 23.10.
If you are using a Linux desktop with a graphical user interface (GUI), you will typically use a terminal emulator to issue commands. The login interface changes based on whether a GUI is available:
  • For a GUI system, you will see a graphical login screen displaying a list of users.
  • For systems without a GUI (like many servers), a text console login prompt will request your username and password (the password is hidden as you type). To log out of these sessions, simply type exit.
The image shows a login screen for Ubuntu with a user named "Aaron" and the text "Local GUI" at the top.
The image shows a local text console displaying system information for Ubuntu 23.10, including system load, memory usage, and network addresses. It also mentions available updates and provides links for documentation and support.
Remote graphical connections are available, though set up differently. Administrators may configure VNC (Virtual Network Computing) or RDP (Remote Desktop Protocol) for remote GUI access. For VNC, use a compatible client like VNC Viewer or RealVNC. For RDP, open the Remote Desktop Connection application on Windows and log in with your credentials.
The image compares two remote GUI tools, VNC and RDP, showing their respective interfaces for connecting to remote computers.
Remote text-based sessions use OpenSSH, which runs the SSH daemon (sshd) to provide secure, encrypted remote login—making it a preferred alternative to older, unsecured methods like Telnet.
The image compares remote text-mode login methods, showing SSH as secure with a green lock and Telnet as insecure with a red lock.
Remember: SSH encrypts all login data, ensuring that your session and credentials remain safe.
If you’re following along using a virtual machine, first log in locally. Once logged in, open your terminal emulator and run the following command to view your current IP configuration:
In this output, locate your IP address (e.g., 192.168.0.17). This address is used to simulate connecting to a remote server that is running the SSH daemon. Most Linux distributions (and macOS) include an SSH client by default. For Windows 10 or 11 users, an SSH client is pre-installed. To connect to the remote system via SSH, run the command below—replace “aaron” with your username:
Once connected, your SSH session remains active, allowing you to execute commands and manage the remote system.
Join the upcoming demonstration lesson to see these login methods in action!
For more detailed information on secure shell protocols and remote system management, consider reviewing the Kubernetes Documentation or Docker Hub. Happy learning!

Watch Video