Headless Raspberry Pi 3 B+ SSH & WiFi Setup

Nico Renaldo
5 min readMar 4, 2021

This article covers setting up the Raspberry Pi 3 Model B+ for headless SSH access over WiFi using Windows 10.

Step 1. Download and Installing Raspbian

One of the key thing to start your raspberry pi project is the OS, there are several choices you can take such as Windows or Linux Ubuntu, one of the most general choice for raspberry pi is the Raspberry Pi OS (previously called Raspbian).

Once you have your microSD Card (atleast 8GB) and raspberry pi ready, use the following steps to set up your Raspberry Pi using a Windows, Mac or Linux-based PC (I tried this on Windows, but it should be the same on all three).

  1. Insert a microSD card / reader into your computer.
  2. Download and install the official Raspberry Pi Imager through the official website.
  3. Click Choose OS and select Raspbian from the OS menu (there are other choices, we are going to use the latest Raspbian OS). The process could take a while since you need to download the OS image too (around 1 hour for me).
Initial Main Menu of the Imager
Choose the Latest Raspbian Version

4. Choose the microSD Card and pick the one you are using

5. Click Write. The app will now take a few minutes to download the OS and write to your card.

Step 2. Setting Up Wireless Network

If you want to use Raspberry Pi headless, you need to give the initial WiFi settings manually through the microSD Card. If you have successfully installed the Raspberry Pi OS, by inserting it to your Laptop or PC, you should see the boot folder available. We are going to add some new configuration on that boot folder.

  1. Open up a new blank notepad, we are going to write a code that pass the WiFi SSID and password to the boot program.
  2. A common wpa_supplicant.conf file would look like this. Copy the following code and change the SSID and password to your current WiFi.
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
ssid="YOUR SSID"

3. Save the file with the name “wpa_supplicant.conf” , make sure you save the file with type “All Files (*.*)” and not .txt file.

4. Lastly, put the saved file to the boot folder on the microSD, the file will be read and deleted after the raspberry pi next boot up.

Step 3. Setting Up SSH

For security reason, SSH are usually not enabled on new Raspberry Pi. To change the setting, you can easily enable it by creating a blank file named “ssh” and put it on the boot folder again. You can create the file with notepad by following this instructions :

  1. Open up a blank new notepad.
  2. Save the file using the save as command (you can keep the file empty), give the file name “ssh”.
  3. Make sure you are saving the file without the .txt extention.
  4. Put the “ssh” file on the boot folder.

If you have finished step 1 through 3, you can start booting up your Raspberry Pi by inserting the microSD Card to Raspberry Pi and plug in the 5V adapter.

Step 4. Establishing a Connection

To start a SSH connection, you had to know it’s local IP address first, you can get it easily by using a third-party IP scanner application. There is Fing for smartphone, and there’s Angry IP Scanner for Windows, Mac, and also Linux.

After installing the IP scanner, use your preferred scanner and find the Raspberry Pi local IP address (make sure you are using the same network as the Raspi). You can identify it from the hostname listed, usually you will find name such as “Raspberry Pi” or something similar.

After you found the Raspi IP address, you can start making a SSH connection by using external application. I use PuTTY as one of the most popular app for Raspberry Pi Prototyping. To start the connection, you only had to fill the IP address field and left everything to default, and click Open to start the connection.

Example of PuTTY Interface

A new terminal will pop up, asking for credential and password. The default username and password can be seen below. If your terminal looked like the image below, that means the connection is successfully established and you can start making your project.

username : pi
password : raspberry

(Optional) Step 5. Connecting VNC Viewer for Desktop Display

VNC is already installed on the full Raspberry Pi OS image, and can be installed via Recommended Software from the Preferences menu on other versions. You can enable VNC Server from the command line using raspi-config.

sudo raspi-config

Now, enable VNC Server by doing the following:

  • Navigate to Interfacing Options.
  • Scroll down and select VNC > Yes.

There you go, your brand new Raspberry Pi is ready to go and you can start making your awesome project. I hope this guide will be helpful to everyone. Keep on tinkering!!!