Raspberry Pi Guide
A guide to stuff you might want to do when you get your Raspberry Pi, stuff that you otherwise might forget to do, or stuff that is a pain to do when you find out you should have done them earlier.
Disclaimer: I'm not a Raspberry Pi guru, or even someone who knows a lot about Linux in general, but when I got my Pi I had to figure out many things about both that would be a waste for any other non-guru to also figure out for themselves. So here they are, jotted down for your and my future reference.
I'm assuming a freshly installed Raspbian image, although other Debian-based versions shouldn't be much different.
Table of Content
0. Preparation
1. First boot
Keep your monitor and keyboard attached to the Pi until you've done this part.
- Before anything else: making sure the entire SD card is used, update everything.
- WiFi: configure WiFi, set a static IP address, troubleshoot missing networks on the Pi 3.
- Basic security: disable root over SSH, change default password.
2. Network security
Set up a firewall using iptables and automate blocking of suspicious activity using fail2ban.
- Firewall (iptables)
- Auto-block login attempts (fail2ban)
- Two-factor authentication
- Other network security tools (netstat, iftop)
3. Common uses
Some common things to do with a Raspberry Pi.
- Remote desktop
- External storage: attach external NTFS drive to usb port, includes troubleshooting.
- Periodic backups: backup the entire SD card to external storage, and use cron.
- HDMI output: keep HDMI always on, disable screensaver, fix HDMI audio, boot to website in kiosk mode.
- Analog video output: Turn off HDMI, and use the analog video output instead.
- Some useful commands
4. Specific apps and devices
Instructions on installing/building/configuring some specific apps.
- Resilio Sync (formerly BitTorrent Sync): self-hosted cloud storage
- Webcam + Motion: security camera
- Git
- Bluetooth keyboard
- Privoxy, OpenVPN: proxy and vpn
- gPhoto2: control a usb-connected digital camera
5. Controlling the RPi
Information on controlling the Raspberry Pi's hardware features.