# Server Setup The server component of `usb-remote` runs on a machine with USB devices connected, and shares them over the network. NOTE: There is no security in usb-remote server by design. It will share its USB devices with any client that asks for it. usb-remote is intended to be run in a trusted network environment only. Preferably isolated from the internet and any other devices. An instrumentation network at DLS is ideal. ## Recommended Hardware Any linux machine with a supported USB controller can run the `usb-remote` server. For good results and a pre-created image file with all the software installed, we recommend a Raspberry Pi 5, see [Recommended Server Hardware](../reference/recommended_hardware.md). If you go with the recommended hardware, you can skip these instructions and instead go to the [Raspberry Pi Commissioning Guide](../tutorials/commissioning_raspi.md). ## Installing Prerequisites 1. Install the usbip CLI: ```bash sudo apt update sudo apt install usbip ``` 2. Load the usbip kernel modules and ensure they load at boot: ```bash sudo modprobe usbip-core sudo modprobe usbip-host echo -e "usbip-core\nusbip-host" | sudo tee /etc/modules-load.d/usbip.conf ``` 3. Create a service to run the usbipd daemon at boot: ```bash sudo tee /etc/systemd/system/usbipd.service > /dev/null <