My default setup of any archlinux ARM device (f.ex raspberry pi)
This tutorial is for GNU/Linux host machines.
Initially follow the guide on the Installation tab of your device (or search a guide to flash the SD-card for your device):
Plug the RPI to a network accesible from your host machine.
ssh alarm@IP-of-ALARMpacman-key --initpacman-key --populate archlinuxarm-
sudo vim /boot/config.txt- add row "hdmi_force_hotplug=1"
- This is to ensure that the device will boot normally even though no HDMI display is attached
-
su(switch to root) vim /etc/locale.gen- uncomment the row (remove the # character) with #en_US.UTF-8 (or whatever locale you prefer)
locale-gen- generates the locale files
pacman -Syu tmux bash-completion iwd vim htop rsync moreutils- Installs some basic programs
visudoand add row: "alarm ALL=(ALL) ALL"- allows the user alarm to run a program as root (f.ex.: sudo vim PATH)
- run
ifconfigand find your interface name (here mine is wlan0, replace with name of your desired interface) - create
/etc/systemd/network/wlan0.networkwith the following content:
[Match]
Name=wlan0
[Network]
DHCP=yes
- (If you want to use iwd and it's supported by your kernel) Disable wpa_supplicant an use iwd (you can also skip this if you don't want to use iwd)
systemctl disable wpa_supplicantsystemctl start iwdsystemctl enable iwd(enable autostart of this service)- create file
/var/lib/iwd/SSID.pskwith content:
[Security]
Passphrase=YOUR_WLAN_PASSPHRASE
[Settings]
AutoConnect=True
passwd(change root password)exitto switch back to the default userpasswd(change alarm password)
Firewall (if needed)
- install ufw
sudo pacman -S ufw
- allow ssh connections on port 22
sudo ufw allow ssh
- enable ufw firewall
sudo ufw enable
sudo systemctl enable ufw
zsh (if you want a fancy shell)
- install zsh
sudo pacman -S zsh
-
thoughts: wireguard, new user (useradd new_name), openssh hardening