Questions tagged «openssh»

有关ssh协议的OpenSSH实现的问题。

1
谁在启动我的ssh-agent,为什么它不能正确终止?
这是我很长一段时间以来一直遇到的问题,但是每次我尝试弄清某些东西时,我都会迷路,所以我想最好在这里问一个也许更有经验的人可以帮助我。 背景 我的Raspberry Pi正在运行Raspbian Jessie,我经常使用SSH登录并远程执行命令。在我的第一个SSH会话中,我注意到每次登录时都会在RPi上ssh-agent生成一个进程,但是在注册时却没有杀死该进程exit:多次登录和注销会导致生成一堆ssh-agent进程,只是让它们挂在那儿什么也不做。最近,我在各处闲逛并阅读手册页和答案,我了解了的目的ssh-agent,并且我还了解到注销通常应该将其杀死,因此我开始自问为什么不这样做。此外,我注意到发行source ~/.bashrc会导致产生另一个实例ssh-agent。我在相关手册页上阅读之所以SSH_AGENT_PID应该定义环境变量,是因为应该在该ssh-agent程序中启动该程序eval以执行其输出并定义此类变量,然后这些变量将由其他与SSH相关的命令使用,包括ssh-agent -k(杀死相对于当前会话的代理),所以我跑了echo $SSH_AGENT_PID和echo $SSH_AUTH_SOCK,但他们都是空的。我突然意识到:可能该进程在注销时不会被终止,因为它ssh-agent -k试图从未设置的环境变量中读取其PID。 问题 由于ssh-agent未在注销时被杀死,并且这肯定是由于未设置所需的环境变量而发生的,因此只能表示一件事:调用ssh-agent登录的任何人都可能无法以正确的方式进行操作(应该如此eval "$(ssh-agent -s)")。所以我想:那是什么问题?我将发现执行了哪个配置文件,服务或登录脚本以启动代理并手动对其进行修复!到底在哪里? 我尝试过的 由于我注意到ssh-agent每次调用都会产生一个source ~/.bashrc,因此这是我检查的第一个文件,但是那里甚至没有远程引用与SSH相关的任何文件。我一直在以下所有文件中搜索使用vi的字符串ssh,但未发现任何内容: ~/.bashrc ~/.profile /etc/bash.bashrc /etc/profile /etc/profile.d/ (every file in this folder) /etc/environment 还有其他文件可以参与source ~/.bashrc吗?我真的不知道 然后,我搜索了相关systemd服务,但仅找到ssh.service,即WantedBy=multi-user.target,因此未在登录时运行(而且很明显,因为这是SSH服务器守护程序)。 我还尝试将文件/home/pi夹中的每个文件都移到一个临时文件夹,然后注销并再次登录,但ssh-agent仍然生成。 最终,我还打开了我在会议厅中拍摄的最后一张照片:我find / -name 'ssh-agent'以root身份运行,仅打印/usr/bin/ssh-agent了一个可执行文件,因此我创建了一个伪造的可执行文件,该可执行文件基本上只记录了父命令: #! /bin/bash ps -o args= $PPID > /home/pi/LOG cat /proc/$PPID/cmdline >> /home/pi/LOG 我重命名了真实的,/usr/bin/ssh-agent并用设置了正确权限/用户/组的伪造替换了它,source ~/.bashrc再次运行,然后打印了LOG文件: …

1
服务器更新后SSH停止工作了吗?发生了什么?
我使用基于PKI的SSH连接已有10多年了。突然,服务器更新后-一些连接停止工作。我使用的是多年来使用的相同PKI密钥(每个服务器都有它自己的密钥,我有一小部分个人密钥)。 工作-看起来像这样: C:\Users\michael>ssh2 -p 2222 root@192.168.129.64 date Authentication successful. Fri Nov 25 10:30:42 2016 不工作看起来像: C:\Users\michael>ssh2 root@192.168.129.64 date warning: Authentication failed. Disconnected; key exchange or algorithm negotiation failed (Algorithm negotiation failed.). 发生了什么变化?
9 openssh 

6
在启动时进行自动反向SSH连接
我有一台位于NAT后面的PC,该PC与我的Digitalocean VPC建立了反向SSH连接。我在家中利用这种反向的SSH连接登录到我的办公室PC(我被授权这样做)并复制文件并做其他重要的事情。 尽管不是很经常,但我注意到我的办公室PC重新启动(由于电源故障等),并断开了与VPC建立的反向SSH连接。在这种情况下,我无法从家用PC连接到办公室PC。 我运行以下脚本来建立反向连接+动态代理,以匿名化在办公室PC上生成的流量(因为我不需要共享浏览信息)。 autossh -CD 8080 -i digitalOcean -R 8081:localhost:22 root@IPofDigitalOceanPC 重新启动后,由于我不在物理上,因此无法在办公室PC上再次运行该脚本。为了解决此问题,我安装了以下crontab。 注意:rev.sh文件包含以上行。证书“ digitalOcean”和rev.sh位于Ubuntu home。因此,当我./rev.sh在Ubuntu终端中执行时,我将获得一个动态代理,并且还可以访问ym DigitalOcean服务器。此方法有效100%。 但是,当我通过以下方法安装chrontab时,我的ubuntu PC永远不会创建动态代理。我可以看到这是因为,当我从Google Chrome浏览器检查此代理时,它表示代理正在拒绝连接。 这是我尝试过的cronejobs根cronejobs。我也以普通用户的身份尝试了这些,但仍然无法正常工作。 @reboot bash /home/user/rev.sh @reboot /home/user/rev.sh @reboot cd /home/user && ./rev.sh 然后,我在当前时间之前的几分钟安装了一个chrontab,并等待其执行。 24 12 8 * * * bash /home/user/rev.sh 24 12 8 * * * /home/user/rev.sh 这些也没有执行。 请足够友好地帮助我发现我的错误。关于我的问题,这个网站上有很多类似的问题。因此,我提到了许多答案,但是似乎没有一个有用的答案。

1
如何从SSH客户端禁用密码提示?
我有一个依赖于公用/专用密钥ssh身份验证的脚本。问题是某些系统配置错误,并且没有设置正确的ssh公共/专用密钥信任。发生这种情况时,ssh请问我一个阻止脚本执行的密码。我已经尝试过以下命令: sudo ssh -o "PasswordAuthentication=no" -o "ChallengeResponseAuthentication=no" root@last-call 但是我仍然提示输入root密码。
9 openssh 


1
为什么sshd会在pstree的一个分支上多次显示?
目前在我的操作系统课程中,并且正在连接到校园中的远程服务器。我使用该pstree命令在视觉树中列出了所有正在运行的进程,所附的屏幕快照就是我收到的。在sshd(安全的shell守护程序)之后,您会注意到有几个sshd(其他学生在课堂上连接),但是更重要的是,您会看到类似sshd --- sshd ---之类的东西。这就是我感到困惑的地方;为什么有多个sshd彼此链接,我猜是有一个到代理的sshd,然后代理对服务器做了一个sshd。


2
ssh命令为什么不遵循URI上的RFC?
RFC: 用于安全文件传输协议(SFTP)和安全外壳(SSH)的统一资源标识符(URI)方案 将SSH URI表示为: ssh://[<user>[;fingerprint=<host-key fingerprint>]@]<host>[:<port>] 是否有任何已知原因导致OpenSSH ssh命令不使用hostname选项遵循此标准?它不接受冒号后面的端口。 我期望工作的URI示例: $ ssh user@host:2222 ssh: Could not resolve hostname host:2222: Name or service not known
9 ssh  openssh 

1
检测ssh-agent身份的剩余寿命
该ssh-add命令允许您指定要添加到的身份的生存期ssh-agent。例如,如果我输入 ssh-add -t 1h 该标识将在1小时后失效。然后,我可以使用列出代理当前代表的身份ssh-add -l。 有没有一种方法(除了在运行ssh-add命令时记录信息)来确定身份的剩余寿命?如果不是,是否有一些与安全性相关的原因,为什么不应该有一种方法来获取此信息?

2
我应该备份SSH主机密钥吗?
在我的自动备份中,我不确定是否应该这样做。如果硬盘驱动器发生故障,或者如果我擦拭硬盘然后重新启动,从客户端开始使用新的SSH主机密钥会产生什么影响?除了从每个客户端的known_hosts文件中删除主机名之外,我是否还需要做其他特别的事情?在这种情况下最好的办法是什么?我正计划擦拭计算机,并在接下来的几天内从头开始。

4
SSH启动会话缓慢
对于我的一台服务器,通过SSH启动Interactive Shell的速度很慢。包括协商加密在内的所有操作都很快完成,但是随后挂起了45秒。之后,它结束了,我有了一个外壳。我如何确定它挂在哪里?我尝试清除环境并禁用所有转发,以防降低速度,但无济于事。这是我的测试命令: env -i ssh -x -a -vvv server 这是SSH的输出: debug1: channel 0: new [client-session] debug3: ssh_session2_open: channel_new: 0 debug2: channel 0: send open debug1: Requesting no-more-sessions@openssh.com debug1: Entering interactive session. *(hangs for 45 seconds here)* debug3: Wrote 128 bytes for a total of 3191 debug2: callback start debug2: client_session2_setup: …
8 linux  shell  ssh  openssh 
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.