-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathraspberry-pi-project.html
More file actions
150 lines (124 loc) · 5.57 KB
/
raspberry-pi-project.html
File metadata and controls
150 lines (124 loc) · 5.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE HTML>
<html>
<head>
<title>Raspberry Pi 5 Project - Elias Tovar</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="assets/css/main.css" />
</head>
<body class="is-preload">
<!-- Wrapper -->
<div id="wrapper">
<!-- Main -->
<div id="main">
<div class="inner">
<!-- Header -->
<header id="header">
<a href="index.html" class="logo"><strong>Back to Portfolio</strong></a>
<ul class="icons">
<li><a href="https://www.linkedin.com/in/eliastovar/" class="icon brands fa-linkedin"><span class="label">Twitter</span></a></li>
<li><a href="https://github.com/whyelias" class="icon brands fa-github"><span class="label">Facebook</span></a></li>
<li><a href="https://www.youtube.com/@gravpickle1921" class="icon brands fa-youtube"><span class="label">Snapchat</span></a></li>
<li><a href="https://www.instagram.com/why_eliast/" class="icon brands fa-instagram"><span class="label">Instagram</span></a></li>
</ul>
</header>
<!-- Content -->
<section>
<header class="main">
<h1>Raspberry Pi 5 DNS Adblocker & DHCP Server</h1>
</header>
<span class="image main"><img src="images/Pi.png" alt="" /></span>
<h2>Project Overview</h2>
<p>Configured a Raspberry Pi 5 to run as a DNS adblocker for my network, as well as a DHCP server to provide internet to a few devices. This project combines network administration, Linux system configuration, and security best practices.</p>
<hr class="major" />
<h2>Technologies Used</h2>
<ul>
<li>Raspberry Pi 5</li>
<li>Pi-hole (DNS Adblocker)</li>
<li>Pi-hole DHCP Server</li>
<li>Raspbian OS</li>
</ul>
<hr class="major" />
<h2>Implementation Details</h2>
<p>
This project focused on configuring a Raspberry Pi 5 to act as a centralized DNS adblocker and local DNS server
using Pi-hole. The goal was to improve network security, reduce unwanted traffic, and gain hands-on experience
with Linux-based network services.
</p>
<h3>Setup Process</h3>
<ul>
<li>Installed Raspberry Pi OS Lite to reduce system overhead and improve performance.</li>
<li>Updated system packages and verified stable network connectivity.</li>
<li>Assigned a static IP address to ensure consistent DNS availability.</li>
<li>Installed Pi-hole using the official installation script.</li>
<li>Enabled the Pi-hole web admin interface for centralized monitoring and management.</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>Configured Pi-hole as the primary DNS server at the router level.</li>
<li>Selected upstream DNS providers for external name resolution.</li>
<li>Applied default and custom blocklists to block ads, trackers, and malicious domains.</li>
<li>Created local DNS records to resolve internal hostnames.</li>
<li>Enabled logging and monitoring to analyze DNS queries and blocked requests.</li>
<li>Secured the admin interface with authentication and access restrictions.</li>
</ul>
<h3>Results</h3>
<ul>
<li>Successfully blocked ads and trackers across all connected devices at the DNS level.</li>
<li>Improved network performance by reducing unnecessary external requests.</li>
<li>Enhanced visibility into network traffic through DNS query logging.</li>
<li>Achieved stable, low-latency DNS resolution with continuous uptime.</li>
</ul>
<h2>Future Improvements</h2>
<ul>
<li>Modify the pi into becoming a full Wi-Fi router using a Wi-Fi adapter</li>
<li>Run a Virtual Private Network through the Wi-Fi it provides to further secure my home network</li>
<li>Configure to fully run a Minecraft server accessible through port 25565</li>
</ul>
<ul class="actions">
<li><a href="index.html" class="button big">Back to Portfolio</a></li>
</ul>
</section>
</div>
</div>
<!-- Sidebar -->
<div id="sidebar">
<div class="inner">
<!-- Menu -->
<nav id="menu">
<header class="major">
<h2>Menu</h2>
</header>
<ul>
<li><a href="index.html">Homepage</a></li>
<li><a href="raspberry-pi-project.html">Raspberry Pi Project</a></li>
<li><a href="active-directory-lab.html">Active Directory Lab</a></li>
<li><a href="ml-model-project.html">ML Model Project</a></li>
<li><a href="security-lab.html">Azure Security Lab</a></li>
</ul>
</nav>
<!-- Contact -->
<section>
<header class="major">
<h2>Get in touch</h2>
</header>
<ul class="contact">
<li class="icon solid fa-envelope"><a href="mailto::elias@tovarfamily.org">elias@tovarfamily.org</a></li>
<li class="icon solid fa-phone">512-517-1775</li>
</ul>
</section>
<!-- Footer -->
<footer id="footer">
<p class="copyright">© Elias Tovar. Design: <a href="https://html5up.net">HTML5 UP</a>.</p>
</footer>
</div>
</div>
</div>
<!-- Scripts -->
<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/browser.min.js"></script>
<script src="assets/js/breakpoints.min.js"></script>
<script src="assets/js/util.js"></script>
<script src="assets/js/main.js"></script>
</body>
</html>