12

I'm looking for a live distribution (live CD or the likes) which comes - per default - with sshd running at startup.

I want to check the components of my laptop whose graphics has died (card-replacement did not do the trick).

The system seems to boot into Knoppix 6 just right (and in typing commands without a screen I can get it to shut down regularly) but what I need is a live distribution (CD/DVD/USB) which I can fire up and log into (via ssh) over the network to check whether the CPU & memory is OK and if the new graphics card is ok too.

What options exist?

Jeff Schaller
  • 66,199
  • 35
  • 114
  • 250
Nox
  • 240
  • 1
  • 4
  • 10
  • 2
    But then you most probably could type not only 'shutdown' but also 'sshd' (and start the ssh daemon). – elv Jul 13 '12 at 20:42
  • 1
    You know - now that you mention it that's obvious... but I'd like to have an extra distro nevertheless - one with sshd and VNC if possible. – Nox Jul 13 '12 at 21:22
  • I'am sure Knoppix6 livecd contains x11vnc. Besides you could also forward x11 over ssh. – elv Jul 14 '12 at 01:15
  • 1
    Take a USB stick that's sufficiently large, install a regular system on it, set it up the way you like, and boot it where you need it. Linux is flexible - it doesn't have to be a "Live" system at all. – frostschutz Apr 10 '13 at 18:36

5 Answers5

7

I came across the same problem. I decided build my own live linux (USB based).
You can configure networking via syslinux.cfg on the usb stick.
It starts openSSH by default. It comes with nearly no functionality, appart from mounting a drive and chrooting the target system.

You can download it here if you still need it http://heyn-it.de/index.php/ssh-rescue-linux.html

jkoop
  • 5
  • 2
Sebastian Heyn
  • 403
  • 5
  • 7
  • Welcome to Unix & Linux! Generally we like answers on the site to be able to stand on their own - Links are great, but if that link ever breaks the answer should have enough information to still be helpful. Please consider editing your answer to include more detail. See the [FAQ](http://unix.stackexchange.com/faq) for more info. – slm Apr 22 '13 at 19:19
4

I just tried Plop linux to boot a usb drive in an old desktop pc and when the ploplinux distro booted I noticed the sshd service.

After that I run the ifconfig to check the local ip and did a ssh connection from a remote laptop:

command:  ssh root@ipaddress 
password: ploplinux 
Rui F Ribeiro
  • 55,929
  • 26
  • 146
  • 227
JP Guevara
  • 41
  • 3
  • So you can just boot it and it works right away? The documentation says "The ssh password is the same as the login password. The default root password is ploplinux." for SSH, but also "To enable the connection as root set a password with 'passwd'", for SSHFS. – Paul Aug 17 '22 at 18:33
0

Debian installer (d-i) was faced with a similar problem and their solution might be found useful. Firstly a note on the architecture of d-i: d-i is modular so by adding components in the form of udebs you can add functionality. the udebs can be added during image generation or runtime the module you are interested in is network console. if you want to install modules automatically at runtime a preseed file will do that.

Now here is how the network console module works:

  1. it gets the password to use from the local console twice (preseeding can set this beforehand or use a already hashed password.

  2. it generates a entry int he password file

  3. it generates a host key

  4. it starts sshd.

  5. it sets a hook to copy the generated host key to the installed system.

the known drawbacks to this approach are:

  1. preseeding the password is not very secure.

  2. rerunning the installer will generate a different host key.

the password problem can be mitigated by installing an authorized keys list instead of a password (and using a invalid password hash.

The relevant parts of my preseed file are:

d-i anna/choose_modules string network-console,openssh-client-udeb
#d-i anna/choose_modules seen false
d-i network-console/password password r00tme
d-i network-console/password-again password r00tme
d-i preseed/early_command string mkdir .ssh; cd .ssh; wget http://192.168.0.1/debian/authorized_keys
hildred
  • 5,759
  • 3
  • 30
  • 43
0

As a rule, live distributions don't come with sshd enabled, because if you can log in over sshd, so can anyone else. Your machine may be on a private network where you are the only user, but that's a rather special case. In general, to be useful, the live distribution needs to have a custom password or other authentication mechanism for every user.

You can start sshd blind, but typically that won't be enough: you'll also have to configure authentication for some account.

You should take a live distribution and customize it by making it start sshd automatically, and additionally creating a password-protected account or adding an entry to ~/.ssh/authorized_keys. Either make sure that PermitRootLogin is set to yes in /etc/sshd_config, or add a password for the root account, or make the account you can log in to a sudoer account (and give it a password).

For Knoppix, the easiest way to do this customization is to install it to a USB disk and activate its persistent memory feature (illustrated howto). Then edit the configuration files you want in /etc.

Gilles 'SO- stop being evil'
  • 807,993
  • 194
  • 1,674
  • 2,175
  • 3
    This answer is correct but have a look at a blog post of mine http://blog.grml.org/archives/367-Create-a-Grml-ISO-image-with-your-own-ssh-keys-for-password-less-login.html (i was affiliated with Grml) to create a live cd which starts ssh automatically – Ulrich Dangel Jul 15 '12 at 00:36
0

Although being a little late, Google brought me first to this question and then to a solution using Fully Automatic Installation:

The general idea is similar to other answers here, generating a custom debian-ISO that has SSH already configured and enabled at startup.

The nice difference is, the project offers a build-service https://fai-project.org/FAIme/, that asks some basic questions, like the root-password, and then generates the ISO accordingly. These are the steps that worked for me:

  1. Choose a "Cloud"-image
  2. File-Format: raw.xz
  3. provide a root-Password and a user-name + password
  4. choose other settings according to your preferences (e.g. packages, window-manager, etc...)
  5. Make sure, the "OpenSSH server" option is toggled on.
  6. "Create image" -- wait until the download-link is provided
  7. Copy the image onto a USB-drive (e.g. using Etcher, it can copy the raw.xz directly)
  8. Boot up the server from the stick
  9. Watch your DHCP-server for the new server's IP-address
  10. From a client: ssh username@ip-address