In this tutorial, you’ll learn how to get started with the Raspberry Pi by installing the operating system, setting up Wi-Fi, and enabling and connecting with SSH. You can configure everything without the need for an extra monitor, keyboard, or mouse—the Raspberry Pi will be running headless.

Updated 14 December 2021
Table of Contents
In this article, we’ll cover the following:
- MicroSD Card
- Installing Raspberry Pi OS
- Connecting the Raspberry Pi to the Internet
- Enabling SSH
- Connecting via SSH to the Raspberry Pi
1) MicroSD Card for Raspberry Pi
The Raspberry Pi is a computer and like any other computer, it needs an Operating System (OS) installed.
The Pi doesn’t have built-in memory, so you’ll need a microSD card to install your OS. We’ll install the operating system on the microSD card. I recommend using a microSD card class 10 with at least 16GB of memory.

2) Installing Raspberry Pi OS
We’ll install the Raspberry Pi OS (previously called Raspbian), which is the official Raspberry Pi operating system.
1) Start by connecting the microSD card to your computer.
2) Go to the Raspberry Pi Software page.
3) Select and download the Raspberry Pi Imager (a tool to flash the OS on the microSD card) for your computer’s operating system.

4) Click on the downloaded file to install the Raspberry Pi Imager.

5) When the installation is complete, the Raspberry Pi Imager will open.

6) Click on Choose OS to select the Operating System. Select the Raspberry Pi OS.

7) Choose storage. You must choose the microSD card where you want to install the OS.

8) The Raspberry Pi Imager allows you to access advanced settings to configure hostname, SSH, Wi-Fi, among others. You can also set up SSH and Wi-Fi later with the instructions provided, or you can set up everything right now. With the Raspberry Pi Imager opened, press Ctrl–Shift–X. This will open a window with advanced settings.
9) You can set hostname (the default will be raspberrypi), enable SSH, and set a password for SSH connection (default is raspberry).
10) Additionally, set up Wi-Fi with your local network credentials, set up your country and time zone. Finally, click Save.
11) After selecting the operating system, storage and advanced settings, click on write to start installing the operating system on the microSD card.

12) Wait a few seconds while it installs the Operating System.

13) When the installation is complete click on Continue. It will eject the microSD card safely.

3) Connecting the Raspberry Pi to the Internet
If you’ve already set up the network credentials in the previous instructions, you can skip this section.
In this section, we’ll set up the Raspberry Pi to connect to the internet (your local network) when it first starts, without the need to connect a monitor, keyboard, or mouse (this is called headless).
Remove the microSD card from your computer and insert it again so that your computer can recognize the microSD card again.
1) Create a new file called wpa_supplicant.conf and paste the following.
country=PT # Your 2-digit country code
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
ssid="YOUR_NETWORK_NAME"
psk="YOUR_PASSWORD"
key_mgmt=WPA-PSK
}
Insert your 2-digit country code and the network credentials (SSID and password) of the network that you want the Raspberry Pi to connect to.

2) Open the microSD card folder and move the wpa_supplicant.conf file there.

4) Enabling SSH
If you’ve already enabled SSH in the previous instructions, you can skip this section.
To access your Raspberry Pi remotely (via a computer on your local network) so you don’t need to connect a monitor, keyboard, or mouse to the Raspberry Pi, you need to enable SSH. SSH allows you to connect to your Raspberry Pi remotely from another machine and access the command line.
To enable SSH, you need to create a file called ssh (without any extensions) on the boot folder of the microSD card.
1) You can click here to download the ssh file.
2) Move that file to the boot folder of the microSD card.

When the Raspberry Pi starts up, the OS will find the ssh file and will automatically activate SSH.
Now, safely eject the microSD card from your computer and insert it on the Raspberry Pi. Then, power up the Pi using a 5V DC power source.
5) Connecting via SSH to the Raspberry Pi
SSH (which stands for secure shell) is a method of establishing a communication with another computer securely. All data sent via SSH is encrypted.
SSH is based on a Unix shell, so it allows you to access your Raspberry Pi files from a remote machine by using terminal commands. It has grown to be one of the most popular methods for communication between different devices.
This part is divided into two sections:
A) Windows
To communicate with the Raspberry Pi via SSH, you need a software to handle SSH communication. We’ll use PuTTY. You need to install it on your computer if you haven’t already.
Downloading PuTTY
If you use Windows, you need to download and install a free application called PuTTY. Here’s how to install it:
1) Open your web browser and go to www.putty.org
2) Download PuTTY.

3) Run the putty.exe file to execute the software.

Connecting to the Raspberry Pi via SSH
With PuTTY installed, power up your Raspberry Pi and follow these steps:
1) Open PuTTY.
2) Select/enter the following options:
- Host Name: raspberrypi
- Port: 22
- Connection type: SSH

3) Click Open.
4) When you connect to your Raspberry Pi for the first time, you’re prompted by a message warning you that you’re attempting to establish a connection with an unknown host. Simply click No to proceed.

5) Now, you can login. Login as pi.
6) The password is raspberry.

Default credentials Raspberry Pi OS:
- user: pi
- password: raspberry
Now you have an SSH communication established with your Raspberry Pi. This will be useful to install software on your Pi, run your programs, create folders or files, etc…

I recommend reading my Raspberry Pi Cheat Sheet with Basic Linux Commands.
Shutting Down
To shut down your Raspberry Pi, simply type this command on the command line:
[email protected]:~ $ sudo poweroff
The SSH connection will be shut down right after.

B) Mac OS X/Linux
SSH (which stands for secure shell) is a method of establishing a communication with another computer securely. All data sent via SSH is encrypted.
SSH is based on a Unix shell, so it allows you to access your Raspberry Pi files from a remote machine by using terminal commands. It has grown to be one of the most popular methods for communication between different devices.
Establishing an SSH Communication
In Mac OS X and Linux, you can use the default Terminal window to establish an SSH communication, because SSH comes in all Unix-based OSes. Follow these steps:
1) Boot up your Raspberry Pi.
2) Open a new Terminal window.
3) Type the following command:
$ sudo ssh [email protected]
or:
$ sudo ssh [email protected]
4) When you’re asked to type a password for your Raspberry Pi type raspberry, press Enter/Return.
Default credentials Raspberry Pi OS:
- user: pi
- password: raspberry
Your Terminal window should look like the Figure below:

When you connect your computer to your Raspberry Pi for the first time, you’re prompted by a message warning you that you’re attempting to establish a connection with an unknown host. Simply click OK to proceed.
Now you have an SSH communication established with your Raspberry Pi. This will be useful to install software on your Pi, run your programs, create folders or files, etc…
I recommend reading my Raspberry Pi Cheat Sheet with Basic Linux Commands.
Shutting Down
To shut down your Raspberry Pi, simply type this command on the command line:
[email protected]:~ $ sudo poweroff
Wrapping up
In this tutorial, you’ve set up your Raspberry Pi to run headless. You’ve installed the Raspberry Pi OS, set up Wi-Fi, and enabled SSH so that you can access the Raspberry Pi command line from another machine on the same network. Finally, you established an SSH connection with the Raspberry Pi.
I hope this guide was useful. You’re now able to easily connect via SSH to your Raspberry Pi and send Linux commands (read Learning Basic Linux Commands – Raspberry Pi Cheat Sheet).
Like home automation? Learn more about Node-RED, Raspberry Pi, ESP8266, and Arduino with my course: Build a Home Automation System for $100.
Looking for Raspberry Pi electronics projects? Check out our book: 20 Easy Raspberry Pi Projects Book
Thank you very much, it was very useful
You’re welcome Ruben! Thanks for reading!
When entering user = pi and password = rasberry does not allow me access and I already try a thousand times that may be happening.
Hi Alexis.
The passowrd is raspberry and not rasberry.
Have you modified any settings in your operating system?
Those are the correct credentials.
Regards,
Sara
Hi, does this instruction work on Nano pi M4 as well?
If not any idea?
Thanks,
NEVER use sudo to connect via ssh. That should absolutely not be necessary.
I guess it’s an update; very useful especially for Wifi setup connection instead of using “sudo raspi-config” instruction, thanks a lot.
Hi.
Yes, this is an update.
Previous instructions were for Raspbian. Now, there’s Raspberry Pi OS.
Additionally, we now include the instructions to set up Wi-Fi on boot without the need to connect a monitor or to connect via ethernet first.
Regards,
Sara
I think there is a mistake in the instructions. Attempting to connect to connect to the raspberry Pi via ssh using: $ sudo ssh [email protected]
gave the error: Could not resolve hostname raspberrypi: nodename nor servname provided, or not known
Instead, I used: ssh [email protected]
sudo was not necessary
Hi. Thanks for your comment.
I’ll try it again on a mac OS computer.
Regards,
Sara
A neat trick I learned recently:
CTRL-SHIFT-X in rpi-imager opens a dialog where a lot of stuff can be set, even before burning an image. Like hostname, password, wifi settings, ssh enable and localization. Don´t know why they forgot the button for this.
Hi.
I didn’t know about that.
I’ll try it and update the tutorial.
Thanks.
Hi,
Great content, as always! There is also the possibility to do some of the instructions in the RPI IMAGER directly, by accessing to the advanced settings by pressing Ctrl-Shift-X. There we can configure hostname, ssh, Wi-Fi, among others…
Great work!
Hi.
I didn’t know about that.
I’ll try it and update the tutorial.
Thanks.
It turns out there’s a good reason for using sudo with ssh initially. I redid the installation since I’m still having trouble getting MQQT to run in any mode other than local. When I tried to use ssh [email protected] the logging balked because the fingerprint didn’t match. I could: A. try adding the key to /users//.ssh/known_hosts or B: just use sudo ssh and let the system take care of the problem. After failing at A I tried B and it worked just fine.
I think you folks do an amazing job at making this inherently complicated stuff work at the easiest level for all users. Now if I can just get MQTT dumbed back down to the pre-2.0 version less secure level that works so well for my simple needs.
Dobrý, chcel by som sa opýtať v čom môže byť problém ak pri snahe pripojiť sa na raspberry pi cez putty vypíše že nebolo možné sa pripojiť k raspbery, hosť neexistuje
Ďakujem za odpoveď