我在 OS X 上尝试通过 ssh 连接到 ubuntu 12.04 服务器。我能够通过 SSH 进入 - 直到突然停止工作。我已经在线阅读以使用-v来调试它。输出如下所示。如果我 ssh 进入另一个盒子,然后从那个盒子 ssh 到服务器,我就可以登录。我不知道如何调试这个问题,但想学习。
$ ssh -v me@server
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 53: Applying options for *
debug1: Connecting to server [IP] port 22.
debug1: Connection established.
debug1: identity file /Users/me/.ssh/id_rsa type 1
debug1: identity file /Users/me/.ssh/id_rsa-cert type -1
debug1: identity file /Users/me/.ssh/id_dsa type -1
debug1: identity …Run Code Online (Sandbox Code Playgroud) 有没有办法以编程方式获取 SSH 服务器密钥指纹而不对其进行身份验证?
我正在尝试ssh -v user@host false 2>&1 | grep "Server host key",但如果未设置基于密钥的身份验证,则会挂起等待密码。
我需要在我的机器上使用 SSH 来访问我的网站及其数据库(设置符号链接 - 但我离题了)。
我输入命令:
ssh-keygen -t dsa
Run Code Online (Sandbox Code Playgroud)
生成公共/私有 dsa 密钥对。我将其保存在默认值 ( /home/user/.ssh/id_dsa) 中并输入两次 Enter 密码。
然后我得到这个:
WARNING: UNPROTECTED PRIVATE KEY FILE!
Permissions 0755 for '/home/etc.ssh/id_rsa' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: [then the FILE PATH in VAR/LIB/SOMEWHERE]
Run Code Online (Sandbox Code Playgroud)
现在解决这个问题,然后我尝试
sudo chmod 600 ~/.ssh/id_rsa sudo chmod 600 ~/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
但是在我的电脑死机后不久,重新登录时出现了一个could not find .ICEauthority error.
我解决了这个问题并删除了 SSH 文件,但希望能够使用正确的权限来避免将来出现这些问题。 …
我没有使用hosts.allowor hosts.deny,而且 SSH 可以在我的 Windows 机器(相同的笔记本电脑,不同的硬盘驱动器)上运行,但不能在我的 Linux 机器上运行。
ssh -vvv root@host -p port 给出:
OpenSSH_6.6, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to host [host] port <port>.
debug1: Connection established.
debug1: identity file /home/torxed/.ssh/id_dsa type -1
debug1: identity file /home/torxed/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6
ssh_exchange_identification: read: Connection reset …Run Code Online (Sandbox Code Playgroud) 我需要登录到我在运行 Ubuntu 的远程主机上创建的用户。我无法使用ssh密钥,因为 ssh 登录将通过在我无法访问的服务器中运行的 bash 脚本进行(想想像 Bamboo 这样的持续集成服务器)。
我知道这不是一个理想的做法,但我想要么将远程主机设置为不要求输入密码,要么能够使用类似的方式登录ssh --passsword foobar user@host,就像 MySQL 允许您进行登录那样。
我没有找到这个man ssh,我对解决这个问题的任何替代方法持开放态度。
我有一台在非标准端口上运行 SSH 的服务器。它在 8129 上运行,而不是 22。要登录,我使用:
ssh -p 8129 hostname
Run Code Online (Sandbox Code Playgroud)
现在,每当我需要为无密码登录设置密钥时,我必须复制公钥并将其手动添加到authorized_keys。我发现该命令ssh-copy-id可用于简化此过程,但它似乎没有指定 ssh 服务器端口的选项。
有什么方法可以告诉ssh-copy-id使用端口 8129,还是应该忘记这个命令并像以前一样手动复制/粘贴?
我正在尝试从一台服务器同步到另一台服务器。服务器具有相同的目录结构,但是当远程服务器中有空格时,我无法让远程服务器正确识别远程服务器上的路径名。
这是详细信息
本地目录是
mnt/xlses/split/v2/name with space
Run Code Online (Sandbox Code Playgroud)
远程目录是
mnt/xlses/split/v2/name with space
Run Code Online (Sandbox Code Playgroud)
我已经尝试了所有我能找到的最新尝试是
rsync --size-only -avzPe ssh /mnt/xlses/split/v2/name\ with\ space/ root@myserver.com:/mnt/xlses/split/v2/"name with space"
Run Code Online (Sandbox Code Playgroud)
当它运行时,它报告的第一件事是它正在创建一个新目录
我打断它,看到有一个新目录
mnt/xlses/split/v2/name
Run Code Online (Sandbox Code Playgroud)
我的所有文件都在该目录中
我期待他们在
mnt/xlses/split/v2/name with space
Run Code Online (Sandbox Code Playgroud) 我在通过 sftp 上传目录(包含其他几级深的目录)时遇到了一些麻烦。我意识到我可以通过 gzip 来解决这个问题,但我不明白为什么这是必要的。
反正我试试
sftp> put bin/
Uploading bin/ to /home/earlz/blah/bin
bin/ is not a regular file
sftp> put -r bin/
Uploading bin/ to /home/earlz/blah/bin
Couldn't canonicalise: No such file or directory
Unable to canonicalise path "/home/earlz/blah/bin"
Run Code Online (Sandbox Code Playgroud)
我认为最后一条错误消息完全是愚蠢的。所以目录不存在?为什么不创建目录?
无论如何,sftp 是否可以解决这个问题,还是我应该只使用 scp?
如何在本地计算机上使用 SSH 创建远程磁盘的备份并将其保存到本地磁盘?
我尝试了以下方法:
ssh hostname@my.ip.address "sudo dd if=/dev/sdX " | \
dd of=/home/username/Documents/filename.image`
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误:
不存在 tty 且未指定 askpass 程序
互联网上的每个人都建议禁用通过SSH进行 root 登录,因为这是一种不好的做法,而且是系统中的一个安全漏洞,但没有人解释为什么会这样。
启用 root 登录(尤其是禁用密码登录)有什么危险?
如果允许密码验证,从安全角度来看,X 符号用户名和 Y 符号密码或 root 用户名和 X+Y 符号密码有什么区别?