FCPS Linux Wi-Fi Setup
Setup a Linux device on the FCPS network using Cloudpath





wpa_supplicant
NetworkManager (preferred)
GNOME Desktop Environment

Last updated
Was this helpful?
Setup a Linux device on the FCPS network using Cloudpath






Last updated
Was this helpful?
Was this helpful?
# disable bash history temporarily because of sensitive info
set +o history
# ensure initial wpa_supplicant directory
sudo mkdir -p /etc/wpa_supplicant/wifi_certs
# openssl must be installed beforehand! it's probably already installed.
# converts the p12 to a key and crt for wpa_supplicant compatibility
openssl pkcs12 -in <FCPS_ID>@student_byodfcpsedu.p12 -nocerts -out user.key
openssl pkcs12 -in <FCPS_ID>@student_byodfcpsedu.p12 -clcerts -nokeys -out user.crt
# move the certificates and set proper permissions (important!)
# change the wildcard if there are multiple
mv CA-*.cer FCPS.cer # for readability
sudo mv user.key user.crt FCPS.cer /etc/wpa_supplicant/wifi_certs/
sudo chmod 600 /etc/wpa_supplicant/wifi_certs/user.key
sudo chmod 644 /etc/wpa_supplicant/wifi_certs/user.crt /etc/wpa_supplicant/wifi_certs/FCPS.cer
# the following solution is semi-automated, but feel free to replace this with wpa_cli
# basically it just adds the FCPSbyod config to wpa_supplicant
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_sup.bak
sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf > /dev/null <<EOF
network={
ssid="FCPSbyod"
scan_ssid=1
key_mgmt=WPA-EAP
eap=TLS
identity="<FCPS_ID>@student_byod.fcps.edu" # this differs for guest connections
ca_cert="/etc/wpa_supplicant/wifi_certs/FCPS.cer"
client_cert="/etc/wpa_supplicant/wifi_certs/user.crt"
private_key="/etc/wpa_supplicant/wifi_certs/user.key"
private_key_passwd="<FCPS_PASSWORD>"
}
EOF
sudo chmod 600 /etc/wpa_supplicant/wpa_supplicant.conf # sensitive password!
# finish up by restarting wpa_supplicant
sudo systemctl restart wpa_supplicant
# renew dhcp ONLY if using dhclient. differs for dhcpd and other dhcp managers.
sudo dhclient -r
sudo dhclient
# reenable history
set -o history# disable bash history temporarily because of sensitive info
set +o history
# ensure initial ssl cert directories
sudo mkdir -p /etc/ssl/certs/
sudo mkdir -p /etc/ssl/private/
# openssl must be installed beforehand! it's probably already installed.
# converts the p12 to a key and crt for networkmanager compatibility
# enter your fcps password if asked
openssl pkcs12 -in <FCPS_ID>@student_byodfcpsedu.p12 -nocerts -out user.key
openssl pkcs12 -in <FCPS_ID>@student_byodfcpsedu.p12 -clcerts -nokeys -out user.crt
# move the certificates and set proper permissions (important!)
# change the wildcard if there are multiple
mv CA-*.cer FCPS.cer # for file identification and readability
sudo mv user.key user.crt /etc/ssl/private/
sudo mv FCPS.cer /etc/ssl/certs/
sudo chmod 600 /etc/ssl/private/user.key
sudo chmod 644 /etc/ssl/private/user.crt /etc/ssl/certs/FCPS.cer
# the following solution is semi-automated, but feel free to replace this with a
# different networkmanager solution (possibly a tui)
# add our FCPSbyod interface to nmcli (NetworkManager)
# note: replace wlan0 with your actual wireless interface name (check with 'ip link')
sudo nmcli connection add \
type wifi \
con-name "FCPSbyod" \
ifname wlan0 \
ssid "FCPSbyod" \
wifi-sec.key-mgmt wpa-eap \
802-1x.eap tls \
802-1x.identity "<FCPS_ID>@student_byod.fcps.edu" \
802-1x.ca-cert "/etc/ssl/certs/FCPS.cer" \
802-1x.client-cert "/etc/ssl/private/user.crt" \
802-1x.private-key "/etc/ssl/private/user.key" \
802-1x.private-key-password "<FCPS_PASSWORD>" \
802-1x.domain-suffix-match "nescloudpath-pv01.fcps.edu"
# connect to the new interface, which should handle dhcp
nmcli connection up FCPSbyod
# reenable history
set -o history