CSC3329
IoT and Big
Data Streaming
Lab Report 1
Hiba Ammissa, Hiba Ammissa, Nada Tribak, Aya Hanzaz,
Abdellahi Beddi, Kamil Chaouni, Nouamane Zanboui
09/10/2024
CSC3329 Lab Report
Introduction:
This lab focuses on setting up a Raspberry Pi by installing an operating system (OS), which is
essential software that manages hardware resources and provides a platform for running
applications. We will also verify user credentials to ensure that the system is configured
correctly, and that the user has the appropriate access rights.
In addition, we will gather important network information, such as the Internet Protocol (IP)
address, a unique identifier for the Raspberry Pi within a network, and the subnet mask, which
defines the range of IP addresses available in the local network.
Furthermore, we will configure Secure Shell (SSH) for remote access, a network protocol that
enables secure communication between devices over an unsecured network. This allows us to
manage the Raspberry Pi remotely, controlling it from another computer without the need for
direct connections to peripherals like a monitor, keyboard, or mouse. This capability is
particularly useful for headless setups, where the Raspberry Pi operates without direct user
interface devices.
CSC3329 Lab Report
Step 1: Preparing the Raspberry Pi and Installing
the Operating System
We started by ensuring we had all the required components, including:
• A Raspberry Pi
• A microSD card
• A microSD card reader
• A power supply for the Raspberry Pi
• An internet connection
1. Downloaded the Operating System:
• We visited the official Raspberry Pi website to download the recommended operating
system image. We made sure to choose the correct version for our needs.
2. Prepared the MicroSD Card:
• We used Raspberry Pi Imager to write the downloaded OS image to the microSD
card.
• After inserting the microSD card into our computers using the card reader, we selected
the OS image, chose the correct drive for the microSD card, and started the flashing
process, which erased any existing data on the card.
CSC3329 Lab Report
• While enabling SSH for remote access, we used public key authentication instead of
password access, as it was easier to set up and more secure. We also changed the
default username to "Hiba" for customization purposes.
• Additionally, we connected the Raspberry Pi to the "auiguest" Wi-Fi network, which
we chose as our common network for easy access.
CSC3329 Lab Report
Below are the screenshots of the setup process:
CSC3329 Lab Report
CSC3329 Lab Report
Inserted the MicroSD Card into the Raspberry Pi:
CSC3329 Lab Report
• Once the flashing process was complete, we safely ejected the microSD card from our
computers and inserted it into the microSD card slot on the Raspberry Pi.
Powered Up the Raspberry Pi:
• Finally, we connected the power supply to the Raspberry Pi to boot it up, and the OS
installation began automatically.
PWR and ACT Lights:
• After powering up the Raspberry Pi, we observed the PWR and ACT indicator lights.
The PWR light signifies that the Raspberry Pi is receiving power, and it should
remain solid. The ACT light, on the other hand, blinks to indicate that the system is
actively reading or writing to the microSD card.
• Once the ACT light showed consistent activity, signaling that the operating system
had successfully booted, we knew the Raspberry Pi was ready for use.
Below are images of the Raspberry Pi during and after the booting process:
CSC3329 Lab Report
PWR and ACT lights are on: Booting PWR light on: Ready for use
CSC3329 Lab Report
Step 2: Accessing the Raspberry Pi via Command
Line (Headless, remote access)
1. Connecting via SSH:
o With SSH enabled and the Raspberry Pi connected to the "auiguest" Wi-Fi
network, we opened a terminal on our computer and used the ssh command to
remotely access the Raspberry Pi.
o We used the username "Hiba" and the IP address assigned to the Raspberry Pi
to establish the connection. Public key authentication was used instead of a
password to ensure security and ease of access.
2. Verifying User Credentials:
o After successfully connecting to the Raspberry Pi, we needed to verify the
current logged-in user. We ran the whoami command, which displayed "Hiba"
as the username, confirming that we were logged in correctly.
CSC3329 Lab Report
3. Gathering Network Information:
o To retrieve the IP address and subnet mask of the Raspberry Pi, we ran the
ifconfig command in the terminal. This output the network configuration,
showing details in the Wlan0 section such as:
▪ IP Address: The unique address of the Raspberry Pi on the network.
▪ Subnet Mask: The mask used to divide the IP address into network and
host portions.
4. Testing Remote Access:
o With the command line connected and credentials verified, we tested our
ability to manage the Raspberry Pi remotely. Using SSH, we could execute
commands, install packages, and perform administrative tasks as if we were
directly connected to the Raspberry Pi.
CSC3329 Lab Report
Conclusion:
In this lab, we successfully set up a Raspberry Pi by installing an operating system and
configuring it for remote access via SSH. By utilizing public key authentication, we enhanced
security and ease of access, while changing the username and connecting to a common Wi-Fi
network ensured a customized setup. We verified our connection by gathering network
information such as the IP address and subnet mask, and we demonstrated the ability to
manage the Raspberry Pi entirely through the command line without any direct peripherals.
This lab provided a hands-on experience in system setup, network configuration, and remote
system management, building a solid foundation for future projects involving Raspberry Pi
and networked devices.