2X ThinClientServer PXES: Complete Setup and Installation Guide

2X ThinClientServer PXES: Complete Setup and Installation Guide

Overview

2X ThinClientServer PXES is a thin client operating system distribution (based on Linux) designed to boot thin clients and connect them to centralized Windows or Linux servers using remote desktop protocols (RDP, ICA, VNC). It provides a lightweight, network-bootable environment for diskless clients with configuration options for thin-client management, local peripherals, and secure connections to terminal servers.

Prerequisites

  • A working server (Windows Server or Linux) providing terminal services (RDP/Remote Desktop Services, Citrix/ICA, or VNC).
  • DHCP server (for PXE network boot) and TFTP server.
  • HTTP/FTP/SMB server (optional for serving PXES images).
  • PXE-capable thin client hardware or PCs with network boot support.
  • PXES image files (kernel, initrd, filesystem image) for your PXES version.
  • Basic Linux administration skills to configure TFTP/DHCP and modify boot configuration.
  • Network access: appropriate VLANs, firewall rules to allow TFTP, DHCP, HTTP, and remote desktop ports.

High-level steps

  1. Prepare PXE boot infrastructure (DHCP + TFTP).
  2. Obtain and extract PXES image files to your TFTP/HTTP server.
  3. Configure PXE boot menu to load PXES kernel and initrd.
  4. Configure PXES settings (session type, server addresses, keyboard/layout, display).
  5. Boot thin clients via PXE and test connection to remote servers.
  6. Configure persistent settings and optional management tools.

Detailed setup

1. Configure DHCP for PXE
  • Ensure DHCP options allow PXE boot (option 66 — TFTP server address; option 67 — boot filename, e.g., pxelinux.0 or pxelinux).
  • If using iPXE, provide chainloading configuration as needed.
  • Example (ISC DHCP) snippet:

    Code

    next-server 192.168.1.10; filename “pxelinux.0”;
2. Install and configure TFTP server
  • Install a TFTP daemon (tftpd-hpa, atftpd) on the server.
  • Place PXES bootloader (pxelinux.0 or syslinux) and configuration under TFTP root (/var/lib/tftpboot).
  • Ensure permissions allow the TFTP daemon to read files.
3. Place PXES image files
  • Copy kernel (vmlinuz), initrd (initrd.img), and PXES filesystem image or squashfs to TFTP/HTTP. Large filesystem images are often served over HTTP; configure PXE to fetch via HTTP if supported.
  • If PXES provides a syslinux menu configuration, adapt it for your environment.
4. Create PXE menu entries (syslinux/example)
  • Sample syslinux menu entry:

    Code

    LABEL pxes KERNEL vmlinuz

    APPEND initrd=initrd.img boot=pxes root=/dev/ram0 ip=dhcp pxes_config=http://192.168.1.10/pxes.cfg 

  • Use pxesconfig to point to a configuration file that contains session parameters.
5. Configure PXES session settings
  • Create a configuration file (pxes.cfg or similar) specifying:
    • Session type: RDP, ICA (Citrix), VNC.
    • Server address and port.
    • Username/password behavior (prompt vs. auto).
    • Display resolution, color depth, and sound settings.
    • Keyboard layout and locale.
  • Example snippet (format varies by PXES version):

    Code

    SESSION=RDP SERVER=192.168.1.50 RESOLUTION=1024x768 COLOR=16
6. Boot client and test
  • Boot thin client and watch PXE process obtain DHCP, download bootloader, and load PXES kernel/initrd.
  • Confirm PXES boots to its UI and attempts connection to the configured server.
  • Troubleshoot network issues (DHCP/TFTP logs), missing files, or firewall blocks.
7. Optional: Serve filesystem via HTTP/NFS and configure persistence
  • Host large PXES squashfs or filesystem images on an HTTP or NFS server and reference them in the boot parameters.
  • For local settings persistence, configure writable overlay using local storage (if available) or remote profile storage.
8. Management and maintenance
  • Keep PXES images up to date with security patches.
  • Automate PXE menu/config deployment via configuration management.
  • Monitor thin-client connections and server load; scale terminal servers as needed.

Troubleshooting common issues

  • PXE not booting: check DHCP options, network boot order, and TFTP reachability.
  • Kernel/initrd not found: verify file paths and TFTP permissions.
  • PXES not connecting to server: check firewall (RDP/ICA ports), server availability, and correct server IP/hostname.
  • Keyboard/layout wrong: verify PXES keyboard settings and locale files.
  • Slow boot or lag: serve large images over HTTP/NFS instead of TFTP; use smaller images or enable caching.

Security considerations

  • Use secure network segments and firewalls to limit access to management services.
  • If supported, enable TLS for RDP/ICA and encrypt the transport where possible.
  • Limit administrative interfaces to trusted networks and use strong credentials.

Example minimal pxes.cfg (adapt to version)

Code

SESSION=RDP SERVER=192.168.1.50 USERNAME=prompt PASSWORD=prompt RESOLUTION=1280x1024 COLOR=24

Final notes

Follow vendor documentation for the specific PXES version you’re deploying, as filenames and configuration parameter names can vary. Adjust networking and server settings to match your environment and scale deployment accordingly.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *