Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PiKVM is the software that is installed on the Raspberry Pi.

PiKVM comes with the following default passwords:

  • Linux admin (SSH, console, etc.): user root, password root.

  • PiKVM Web Interface (API, VNC...): user admin, password admin, no 2FA code.

These are two separate entities with independent accounts.

To change passwords, you will need to use the console access via SSH or the Web Terminal. If you are using the Web Terminal, enter the su - command to get the root access (enter the root user password).

Code Block
[root@pikvm ~]# rw
[root@pikvm ~]# passwd root
[root@pikvm ~]# kvmd-htpasswd set admin
[root@pikvm ~]# ro

If you require additional user for the Web UI access, use the following:

Code Block
[root@pikvm ~]# kvmd-htpasswd set <user> # Set a new user with password or change of an existing one
[root@pikvm ~]# kvmd-htpasswd del <user> # Remove/delete a user

Optionally you can enable the two-factor authentication for more security.

Changing the VNCAuth passkey and IPMI password at the first start of PiKVM is not required, since these services are disabled by default. But it is here just so that you remember their existence.

PiSugar

The PiSugar 3 provides uninterrupted power (UPS) to the Netrabrick lid components. This way, even if the Netrabrick server loses power, or needs to be rebooted, the Netrabrick lid will remain online long enough to provide a power-outage notification.

...

  1. 3D print the Netrabrick lid cover.

  2. Screw on Attach the lid components

  3. Connect the headers cables to the PiSugar and Raspberry Pi.

  4. Flash the PiKVM image onto a the Raspberry Pi Zero W 2.

  5. Install the SD card in the Raspberry Pi

  6. Attach the lid, and connect the HDMI - CS1 adapter cable

...

Connecting the header cables to the PiSugar and RaspberryPi

Flashing the PiKVM image

  1. Download the latest DIY PiKVM image for the HDMI-CSI bridge for the RaspberryPi Zero 2W and sha hash.

  2. Validate the download image:

    Code Block
    PiKVM % shasum v2-hdmi-zero2w-latest.img.xz  
    cdb1bb899a72351a2da924ceb0675130d01e46ed  v2-hdmi-zero2w-latest.img.xz
    PiKVM % cat v2-hdmi-zero2w-latest.img.xz.sha1 
    cdb1bb899a72351a2da924ceb0675130d01e46ed%               
  3. Download the latest version of the DappNode ISO for Debian, attended, and note the sha1 hash.

  4. Download and install the Raspberry Pi imager.

    1. Run RPi Imager:

      Image Added
    2. Press NO FILTERING then CHOOSE OS and select Use custom image at bottom of the list:

      Image AddedImage Added
    3. After clicking on this item, select the image file for PiKVM that you downloaded earlier then click CHOOSE STORAGE:

      Image Added
    4. Insert the memory card into the card reader. Choose the card reader from this list. Be careful and choose the right device:

      Image Added
    5. After choosing the memory card, press the WRITE button. Confirm the operation when you are asked about it:

      Image AddedImage Added
  5. Mount the PiKVM memory card, and edit the filepikvm.txt. If you haven't enabled PiKVM yet, this file will contain a single line FIRST_BOOT=1.

Code Block
WIFI_ESSID='mynet'
WIFI_PASSWD='p@s$$w0rd'
WIFI_ADDR=192.168.0.86/24
WIFI_DNS=8.8.8.8
WIFI_GW=192.168.0.1
SSH_PORT=2001

Note that backslash in the password should be escaped: \ should be written as \\.

If there was a string FIRST_BOOT=1 in the file, do not remove it. This is the trigger needed to initialize the OS at the first boot. On the contrary, if the file pikvm.txt does not exist, you should not add this line.

  1. Unmount partition and insert the memory card on the Raspberry Pi Zero 2W. Power on the Netrabrick.

  2. Connect via ssh

    Code Block
    ssh -p 2001 root@192.168.0.86
    
    root@192.168.0.86's password: 
             _____ _  _  ____      ____  __
            |  __ (_)| |/ /\ \    / /  \/  |
            | |__) | | ' /  \ \  / /| \  / |
            |  ___/ ||  <    \ \/ / | |\/| |
            | |   | || . \    \  /  | |  | |
            |_|   |_||_|\_\    \/   |_|  |_|
    
        Welcome to PiKVM - The Open Source KVM over IP on Raspberry Pi
        ____________________________________________________________________________
    
        The root filesystem of PiKVM is mounted in the read-only mode by default.
        Use command "rw" to remount it in the RW-mode and "ro" to switch it back.
        If the filesystem is busy and doesn't switch to the RO-mode, use "reboot"
        to reboot the device, don't leave it in the RW-mode.
    
        Useful commands:
          * Preventing kernel messages in the console:  dmesg -n 1
          * Changing the Web UI password:  kvmd-htpasswd set admin
          * Changing the root password:    passwd
    
        Links:
          * Official website:  https://pikvm.org
          * Documentation:     https://docs.pikvm.org
          * Auth & 2FA:        https://docs.pikvm.org/auth
          * Networking:        https://wiki.archlinux.org/title/systemd-networkd

  3. Change the root password and web admin password

    Code Block
    [root@pikvm ~]# rw
    + mount -o remount,rw /
    + mount -o remount,rw /boot
    + set +x
    === PiKVM is in Read-Write mode ===
    [root@pikvm ~]# passwd root
    New password: 
    Retype new password: 
    passwd: password updated successfully
    [root@pikvm ~]# kvmd-htpasswd set admin
    Password: 
    Repeat: 
    
    # Note: Users logged in with this username will stay logged in.
    # To invalidate their cookies you need to restart kvmd & kvmd-nginx:
    #    systemctl restart kvmd kvmd-nginx
    # Be careful, this will break your connection to the PiKVM
    # and may affect the GPIO relays state. Also don't forget to edit
    # the files /etc/kvmd/{vncpasswd,ipmipasswd} and restart
    # the corresponding services kvmd-vnc & kvmd-ipmi if necessary.
  4. Connect via browser to the PiKVM address: 192.168.0.86. (Accept the unsecured connection, as we have not yet added a SSL certificate) using password

Attaching the lid and connecting external cables

...