如果用户未登录物理服务器,则会出现奇怪的SSH行为


2

我的ssh服务器有一个奇怪的问题。如果我启动我的家庭服务器,然后使用我的帐户通过ubuntu登录(我只有一个帐户)一切正常,我可以使用我的其他计算机(OSX)访问在此服务器上启动的ssh服务器。 但是,如果我启动我的家庭服务器并且在开始时没有登录(服务器保持“login:”),我有以下麻烦:

  • 使用公钥/私钥的RSA身份验证不起作用,我必须手动输入密码
  • 如果我启动一个分离的processus(使用final&),当我结束ssh链接时,这个过程暂停。如果我再次连接,则该进程再次运行。

我的家庭服务器(Ubuntu)配置是:

SSH: OpenSSH_5.5p1 Debian-6, OpenSSL 0.9.8o 01 Jun 2010
OS : Linux XXXX 2.6.32-28-server #55-Ubuntu SMP Mon Jan 10 23:57:16 UTC 2011 x86_64 GNU/Linux

我使用我的工作站(OSX)访问它:

SSH: OpenSSH_5.2p1, OpenSSL 0.9.8r 8 Feb 2011
OS : Darwin MacBook-de-kheraud.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun  7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386

你知道它来自哪里吗? 有没有办法让SSH像往常一样工作,即使服务器上没有登录用户?


这确实很奇怪 - SSH和本地登录应该相互独立。
Piskvor

Answers:


3

您的Ubuntu服务器上的主驱动器是否已加密?

如果是,则在您登录本地帐户时会对其进行解密。当您在本地登录之前尝试ssh in然后ssh无法读取您的 ~username/.ssh/authorized_keys 文件,并将要求您的密码。

解决方案是更改ssh查找authorized_keys的位置。以root用户身份编辑 /etc/ssh/sshd_config 文件并更改 AuthorizedKeysFile 线。

例如,如果您将其更改为 -

AuthorizedKeysFile  /etc/ssh/authorized_keys.%u

然后复制你的 ~username/.ssh/authorized_keys/etc/ssh/authorized_keys.username。 ssh将能够在不在本地登录机器的情况下读取它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.