服务器是带有 sshd 的 ubuntu 服务器 11.04。
SSH 对于控制台程序来说工作得很好。
但数据传输速度很慢,这在传输大文件时非常烦人。
我尝试了两个不同的客户端程序并更改了端口,但速度始终相同。我知道服务器可以通过 SSL 更快地传输数据,据我所知,SSL 使用 AES。我也将 SSH 客户端配置为使用 AES,但没有效果。
为什么使用 SSH 比 SSL 慢数倍?有没有办法提高 SSH 的传输速度?
我当前的网络设置包括一个用 DD-Wrt (v24 PreSp2 Build21061) 闪存的 D-link dir-615D1。这是通过以太网电缆直接连接到 Windows 7 PC(没有互联网访问)。
我一直无法使用 SSH 访问我的路由器(尽管我仍然可以访问 Telnet)。
我将路由器重置为默认值,我更改的唯一设置是: 192.168.1.1/Services.asp
设置后,我重新启动了路由器并尝试通过 Putty 和 WinSCP 访问 SSH。
尝试打开连接后不久,我刚收到来自 PUTTY 和 WINSCP 的错误:“服务器意外关闭网络连接”。
有人可以为我提供一些帮助吗(我有点新手,但我确定它会起作用)。
也许固件没有正确闪烁?或者我需要做这个?
我还尝试了 30/30/30 重置,但似乎也没有解决。
有没有办法使用 Telnet 调试问题?
更多信息:
这是我尝试使用 SSH 和 telnet 使用 plink.exe 登录的屏幕截图。

更新:我降级到 DD-WRT v24-sp2 修订版 15778,SSH 现在可以工作了。

请建议使用默认启用 sshd 服务器的 Linux live-CD。我想将它用作无头服务器的救援和设置。
如果局域网中没有 dhcp 服务器,它应该通过 dhcp 获取 ip 或回退到合理的默认 ip。
解决了!archlinux 安装光盘默认开启了 ssh!寻找这个:archlinux-2015.01-1-archboot-network.iso
自 DSM 6.2.2 起,我们在通过 ssh 以非管理员用户身份连接到 Synology NAS 时遇到问题。在此之前,只需将登录 shell 从 from 更改/etc/passwd为/sbin/nologin即可/bin/sh。这似乎不再起作用了。
我还尝试/etc/ssh/sshd_conf明确编辑AllowUsers但无济于事。客户端似乎成功进行了身份验证,但随后某些 PAM 模块(?)再次关闭了连接。
有没有人在最新版本的 DSM 下以非管理员身份 ssh 工作?
这是日志输出:
2019-05-23T21:55:36+02:00 hostname sshd[13551]: pam_unix(sshd:session): session opened for user test by (uid=0)
2019-05-23T21:55:36+02:00 hostname sshd[13551]: pam_unix(sshd:session): session closed for user test
Run Code Online (Sandbox Code Playgroud) 我已经安装了 Windows OpenSSH 服务器并且工作正常。我可以将 ssh 的默认 shell 更改为使用HKLM:\SOFTWARE\OpenSSH并添加属性,如此处DefaultShell所述。
因此,让我们使用默认示例,因为它在几乎所有具有“正常”C:\Windows路径的 Windows 安装上都按原样工作:
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force
现在假设我想向它添加一个参数,也许是“-NoLogo”。这只是一个例子。最终,我希望能够启动带有选项的 WSL 发行版。但现在,让我们简单一点:
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo" -PropertyType String -Force
这不仅不起作用,而且还会以奇怪的方式破坏登录。使用第一种方法(无参数),我在 ssh-agent 中的公钥被提供并接受。当我添加 时-NoLogo,我最终出现密码提示,但使用我的 Windows 密码失败。
跑步sshd.exe -ddd节目:
User not allowed because shell c:\\windows\\system32\\windowspowershell\\v1.0\\powershell.exe -nologo does not exist
Run Code Online (Sandbox Code Playgroud)
好的,所以这是行不通的,因为 OpenSSH 会检查以确保确切的DefaultShell字符串是可执行文件。
我看到还有其他两个注册表设置,但似乎都不是我正在寻找的。人们可能会从它的名字中想到这里会有一些用处,但它只是传入命令DefaultShellCommandOption时 shell 所需的选项,例如:
ssh hostname ls …Run Code Online (Sandbox Code Playgroud) 我需要让一组用户通过 ssh 通过服务器('bastion')跳转到另一台机器('dest')以提交代码。
好像我的选择是:
告诉用户ProxyCommand在他们的 .ssh/config 文件中使用,例如:
Host dest
ProxyCommand ssh -q bastion nc -q0 dest 22
使用ForceCommand在sshd的配置文件,如
Match Group hopUsers
ForceCommand ssh dest $SSH_ORIGINAL_COMMAND
使用用户文件中的command选项.ssh/authorized_keys,例如
command="ssh dest"
第一个解决方案很棒,它适用于 mercual 提交等。 -- 问题是我不想在bastion机器上给我的用户一个有效的 shell 。我可以将他们的登录 shell 设置为 /bin/false,但这会导致一系列问题无人看管(请参阅此处)——除非可能与sshd配置文件中的一组专用选项(如 noX11Forwarding)相结合,在一个Match节中。
第二个和第三个解决方案的问题是公钥认证“丢失”,即除非客户端-A在启动 ssh 时使用该选项,否则服务器将响应:
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering public key: .ssh/XXXXXX
debug1: Server accepts key: …Run Code Online (Sandbox Code Playgroud) 有没有一种简单的方法来阻止对我的 sshd 运行暴力登录攻击的 IP?也许只是增加登录提示出现的时间。
我知道fail2ban,但当我尝试它时,它确实挂起了。它还需要 semdmail,我不想在桌面上安装它。当有事情发生时,我不想通过互联网发送电子邮件。如果fail2ban 可以使用桌面通知(D-Bus),那就太好了。但我想知道为什么我必须为这样的事情单独安装一些东西?为什么 sshd 不能这样做?(同一IP多次登录失败时,会增加等待时间。)
有了以下sshd_conf文件,如何启用服务器活动日志记录?sshd 日志的默认位置是什么?
# $OpenBSD: sshd_config,v 1.98 2016/02/17 05:29:04 djm Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
# …Run Code Online (Sandbox Code Playgroud) 我正在尝试设置从 Linux Mint 19.1 主机到 Windows 10 主机的无密码、无密码 ssh。Windows 10 主机上有 OpenSSH_for_Windows_7.7p1。这是微软的 OpenSSH 端口。
我可以为管理员帐户进行此设置,但非特权帐户不适用于我。管理员帐户的操作方式有所不同。
我尝试了很多不同的方法,但这是我认为应该有效的方法,以及它的问题所在:
我使用 mkdir 和 echo > 创建一个 /Users/Alden Stromberg/.ssh/authorized_keys 文件(或 mkdir 和 cygwin vi - 相同的结果)。
然后我使用 OpenSSHUtils尝试设置正确的权限:
PS C:\Users\Alden Stromberg\.ssh> Import-Module 'C:\Program Files\WindowsPowerShell\Modules\OpenSSHUtils\0.0.2.0\OpenSSHUtils.psd1'
PS C:\Users\Alden Stromberg\.ssh> Repair-AuthorizedKeyPermission .\authorized_keys
[*] .\authorized_keys
'NT AUTHORITY\SYSTEM' has the following access to '.\authorized_keys': 'Deny'-'ExecuteFile'.
Shall I make it Allow FullControl?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default …Run Code Online (Sandbox Code Playgroud) 我正准备将我的服务器暴露在互联网上,并希望尽可能保证安全。我通过隐秘措施(例如更改默认端口 22)采取了安全措施,我确保 root 登录已禁用,并且我正在查看谁可以登录。最后一部分让我有点担心:
我了解任何指向 /bin/false 或 /usr/sbin/nologin 的登录都将被拒绝或立即退出。所以我知道不用担心这些。但是,运行命令时:
cat /etc/passwd | grep -v /bin/false | grep -v /usr/sbin/nologin
我得到以下输出:
root:x:0:0:root:/root:/bin/bash
sync:x:4:65534:sync:/bin:/bin/sync
will:x:1000:1000:will,,,:/home/will:/bin/bash
Run Code Online (Sandbox Code Playgroud)
我一直在尝试查找同步的用途或它的工作原理,但无济于事。我认为可能没有从远程登录到用户“同步”的入口点,但是......这是什么?我是否需要采取任何措施来确保它不存在安全风险以及它的用途是什么?
sshd ×10
ssh ×6
linux ×3
windows ×2
dd-wrt ×1
iso-image ×1
livecd ×1
openssh ×1
permissions ×1
powershell ×1
remote-login ×1
router ×1
security ×1
shell ×1
ubuntu ×1