Tuesday, May 5, 2009

hello-cloud image and passwordless ssh

In order to log to the hello-cloud from the outside world I needed to do a few things.

1. I examined the /var/log/auth.log on my hello-cloud image. I have found the following problems:

May 5 14:16:12 h9761 sshd[1199]: error: openpty: No such file or directory
May 5 14:16:12 h9761 sshd[1203]: error: session_pty_req: session 0 alloc failed

2. Then I followed _some_ of the instructions from:
http://www.patoche.org/LTT/kernel/00000172.html
That is: on my hello-cloud image I did:

h9761:# mknod /dev/ptmx c 5 2
h9761:# chmod 666 /dev/ptmx
h9761:# mkdir /dev/pts
- Add to /etc/fstab:
none /dev/pts devpts gid=5,mode=600 0 0
h9761:# mount /dev/pts

3. I change the /etc/ssh/sshd_config on the hello-cloud image (I compared with my local /etc/ssh/sshd_config file.

--------------------------------------------------------
# Package generated configuration file
# See the sshd(8) manpage for defails

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# ...but breaks Pam auth via kbdint, so we have to turn it off
# Use PAM authentication via keyboard-interactive so PAM modules can
# properly interface with the user (off due to PrivSep)
#PAMAuthenticationViaKbdInt no
# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768
# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 600
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

# rhosts authentication should not be used
#RhostsAuthentication no
# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Uncomment to disable s/key passwords
ChallengeResponseAuthentication no

# To disable tunneled clear text passwords, change to no here!
#MS PasswordAuthentication no


# To change Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#AFSTokenPassing no
#KerberosTicketCleanup no

# Kerberos TGT Passing does only work with the AFS kaserver
#KerberosTgtPassing yes

# MS X11Forwarding no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net
#ReverseMappingCheck yes

Subsystem sftp /usr/lib/openssh/sftp-server


UsePAM yes

#UseDNS no
#PermitRootLogin without-password


#ChallengeResponseAuthentication no
------------------------------------

4. I restarted the sshd:

h9761:/etc/ssh# /etc/init.d/ssh restart

5. Then I did this ssh-passwordless configuration stuff with generating
private and public keys. And now I can log-in to the hello-cloud image from the outside world with or without a password (depending if this password-less stuff is performed earlier).

6. So it looks like the hello-cloud image lacks pty (pseudo terminal interfaces).

7. I hope I can repeat this and incorporate this into my modified hello-cloud image.

No comments:

Post a Comment