Overview

HTTPS SSH

LIttle LinUx

This project aims to build, with the help of buildroot, a lightweight linux

  • Install to old thin clients (neoware, hp, ...)
  • Auto allow a SSH session through ethernet or wifi
  • Auto connect to a specific WIFI SSID if exists and ethernet died
  • Accept file transfer to a specific folder
  • Transfer file to Super Magic Drive with the help of the well known ucon64
  • Transfer file to Everdrive with the help of a custom tool
  • Relay USB serial data over the net (ser2net?)

Status

  • LiveCD
  • LiveUSB (CD mode)
  • Neoware CA21 support
  • VMWare support
  • SSH client
  • uCON64
  • built on BuildRoot 2018.02.x

TODO

  • Mount FlashDisk
  • Reduce Linux kernel to bare minimum (still some unneeded driver)
  • Use multi config to allow bare minimum per board
  • LiveUSB (Disk mode) to allow write

How to

  • Build LiLU

su apt-get install git apt-get install build-essential apt-get install libncurses5-dev apt-get install mtools exit git clone http://bitbucket.org/SpriteMind/lilu.git git submodule sync git submodule update --init --recursive make -f Makefile.toolchain make distclean make

  • Use LiLU

Burn the lilu-cd.iso to a CD or dd lilu-disk.img to an USB thumbdrive Insert the media on your remote Adjust BIOS boot setting Reboot LiLU will startup and launch itself on memory Pro : nothing is done to your remote disk Con : everything is dropped at shutdown/reboot

  • Connect to remote LiLU

    ssh <user>@<lilu_hostname_or_ip>

First time, it will ask you if you want to continue connecting : type 'yes' and remote LiLU will be added to the trusted SSH servers list

If it asks for genny password : type 'genny'

  • Execute command on LiLU remote ssh <user>@<lilu_hostname_or_ip> <command>

  • Transfert ROM to remote LiLU

    scp <file> genny@<lilu_hostname_or_ip>:<destination_folder>

First time, it will ask you if you want to continue connecting : type 'yes' and remote LiLU will be added to the trusted SSH servers list

If it asks for genny password : type 'genny'

  • Upload ROM to SuperMagicDrive on LiLU remote scp <file> genny@<lilu_hostname_or_ip>:<destination_folder> ssh <user>@<lilu_hostname_or_ip> ucon64 --gen --smd --pad --chk --xsmd <destination_folder>/<file>

  • Add your host SSH to LiLU to avoid typing password every time

This is needed on every host and every time you reboot

if not already done, generate your RSA key ssh-keygen

Copy your public key on LiLU remote ssh-copy-id genny@<lilu_hostname_or_ip>

It will ask you for genny password : type 'genny'

  • SSH reset

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Everytime you build LiLU, its SSH keys are generated. So, you'll need to reset them on you host PC : ssh-keygen -f "/home/<user>/.ssh/known_hosts" -R <lilu_hostname_or_ip>

  • use it from a Windows host / from SGDK

If you use a Windows host, using SGDK from example, you'll need to install PuTTY. PuTTY comes with a PSCP, to help transfert file to/from a SSH server. To use it, simple type PSCP -ssh -l genny -pw genny -batch <file> genny@<lilu_hostname_or_ip>:<destination_folder>

Note : see -i option and ssh key copy if you don't want to use password on command

  • update buildroot version

Change branch in submodule (through git or editing .gitmodules) git submodule sync git submodule update

Review options, be sure to validate Legacy option make menuconfig

Rebuild with last buildroot and options uptodate make distclean make make distclean make