有时候使用带有空密码的ssh密钥是非常可取的(备份,…)。 众所周知的问题是,这样的钥匙是安全的,只能保持不受信任的手。 但是,如果这些密钥被泄露,那么可以通过在服务器authorized_keys文件中添加一些选项来进一步保护这些密钥免受太多的伤害,例如: command="/usr/bin/foo",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-rsa AAA….. 理论上,这个键只能用来在服务器上运行命令/usr/bin/foo 。 出现一个新的问题,因为每个命令都需要一个特殊的专用密钥。 由于这个原因,可以在因特网上find更详细的变体(例如,在这个同一个站点: sshd_config与authorized_keys命令参数 ),其中包括安装一个通用键,该通用键限制在本地制作的脚本中,该脚本将使用SSH_ORIGINAL_COMMAND环境variables由ssh设置。 authorized_keys的(限制)键blurb将如下所示: command="/usr/local/bin/myssh",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-rsa AAA….. 和myssh脚本看起来像: #!/bin/sh msg="Command not allowed with this key" case "$SSH_ORIGINAL_COMMAND" in *\&*) echo $msg ;; *\(*) echo $msg ;; *\{*) echo $msg ;; *\;*) echo $msg ;; *\<*) echo $msg ;; *\`*) echo $msg ;; *\|*) echo $msg ;; […]
我正在与我们的pipe理团队合作,在创build一些系统映像之前确定开发团队的所有要求。 我们最终需要的是一个轻量级的GUI设置。 知道开销不应该真正存在于服务器上,我们会closuresX服务器。 误解; 根据评论X服务器应该只运行客户端,我们可以自由地安装我们的graphics工具,而不运行。 我将能够打包在图像首次运行时执行的bash脚本 GUIpipe理任务在我们的设置中很less见,但在一些客户端上很常见,所以我们将包含一个脚本,可以从ssh运行脚本来启用WM和x-forwarding。 没有其他用途的GUI将在本地或远程进行。 虽然不常见,但当人们需要使用GUI时,有时候会有许多人立即login。 有些开发人员在Windows上使用X Ming,有些开发人员则自带Linux 服务器是CentOS,FreeBSD和Debian; 目前稳定的版本+ | – 几个月。 我甚至没有尝试过绝大多数窗口pipe理器,因为有太多的窗口pipe理器,但是我曾经想过如果使用openbox,ice或者更多的资源,如果它能够更好地处理多个会话的话。 我们的一般共识如下图所示。 使用哪个特定的经理不在这个问题的范围之内; 然而这总结了我们的目标。 鉴于这些要求,我试图找出: 什么是一个相当标准和便携式的设置或堆栈来通过SSH实时窗口化 ? 我认为其他人也遇到类似的情况。 至less,我根本不知道在WM便携性中要寻找什么。 除此之外,也许所有select一个WM和编写启动脚本,但如果有任何技术,包,项目或特定的WM的目的是这个用例,这将是很好的了解。
我试图找出在尝试SSH到生产主机时使用的SSH机制。 我看到SSH客户端可以select可用的模式。 但是我不确定select哪种模式以及如何。 SSHServer侧sshd_configconfiguration为: UsePAM yes PasswordAuthentication yes GSSAPIAuthentication yes KerberosAuthentication no KerberosOrLocalPassword no 我想知道如果身份validation使用kerberos或ssh_key的基础。
这使得我连接到的任何服务器都会发生变化。 我input: ssh user@server 我login,一切都可以运行几分钟。 但一段时间后,当我尝试在terminal中input任何内容时,可能会切换到其他程序(浏览器,ftp客户端等),光标在input时停止闪烁,但实际上没有任何input。 我不能执行任何命令,只能closuresterminal窗口,重新打开并重新连接。 如果它是重要的,我在本地机器上运行Ubuntu 12.04。
是否可以configurationOpenSSH来调用AuthorizedKeysCommand而不在主机上本地注册匹配的用户?
在/ etc / ssh / sshd_config中,有一个名为AcceptEnv的选项,允许ssh客户端发送环境variables。 我需要能够发送大量的环境variables,我该怎么做?
根据我的ssh_config文件… configuration数据parsing如下: 命令行选项 用户特定的文件 系统范围的文件 这样说,(是的,我知道,我可以冲刷man ssh_config和man ssh ,并(希望)logging的默认值)..我怎么能打印出活动configuration,所有当前的设置。 例如,像… ssh -o Tunnel=ethernet servername -p 2210 –print-config SSH-2.0-OpenSSH_7.0 Command Line Options Port 2210 Host servername Command Line Configurations Tunnel Ethernet Config File … SSH Defaults … AddressFamily any (???) BatchMode no … 这会让你明确地知道设置了什么,为什么。 我特意给出了AddressFamily ,因为它是没有logging默认值的configuration选项的完美例子。 从man ssh_config … 指定连接时要使用的地址族。 有效参数是any , inet (仅使用IPv4)或inet6 (仅使用IPv6)。 啊! […]
远程用户第一次尝试连接到我的SFTP / SSH服务器,使用Mac OS X下的“Transmit”客户端,发现主机密钥指纹与期望值不符。 我有一个显示指纹的屏幕截图,并将其与ssh-keygen -lf /etc/ssh/ssh_host_dsa_key和ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub ,并且它与这些。 我也没有成功地比较指纹和cut -d ' ' -f 2 < /etc/ssh/ssh_host_dsa_key.pub | base64 -d | sha1sum的输出cut -d ' ' -f 2 < /etc/ssh/ssh_host_dsa_key.pub | base64 -d | sha1sum cut -d ' ' -f 2 < /etc/ssh/ssh_host_dsa_key.pub | base64 -d | sha1sum cut -d ' ' -f 2 […]
我使用sshfs将远程文件夹从另一台服务器安装到本地服务器。 安装远程文件夹可以毫无问题地使用以下命令: sshfs -o allow_other someServerFromSSHConfig:/home/data/somefolder/ /some/local/folder 问题是我不能使用chown更改文件的所有者(不piperoot权限)我总是得到: chown: changing ownership of '/somefolder/file.img': Permission denied 访问该文件夹的用户是保险丝组的成员。 即使我在sshfs中添加额外的挂载选项来将所有者设置为userx:groupx我无法使用userx更改权限,并使用chown -R userx:groupx […] 我希望能够设置安装文件夹中的文件的用户权限,但事实并非如此。
在我的服务器上,我有一个名为“cards2”的KVM虚拟机。 它是通过执行(以root身份)创build的: # virt-install –connect qemu:///system –virt-type kvm –name cards2 –ram 2048 –disk /var/kvm/cards2.qcow,size=3 –vcpus=8 –cdrom /var/kvm/debian-8.5.0-amd64-netinst.iso –vnc –os-type linux –network network=default 该图片拥有权限: # ls -l /var/kvm/cards2.qcow -rwxr-xr-x 1 libvirt-qemu libvirt-qemu 3221225472 Aug 17 18:49 /var/kvm/cards2.qcow 但是我注意到, 任何使用SSH访问的用户都可以通过执行以下命令来访问虚拟机: virt-viewer –connect qemu+ssh://[email protected]/system vmname (注意,这个命令是远程执行的,而不是在服务器上执行的,它通过SSH隧道连接到连接URI为qemu+ssh://[email protected]的pipe理程序) 用户username只是username组的一个成员。 使用username帐户进行SSH连接时,虚拟机列表显示为空: $ virsh list –all Id Name State —————————————————- 在通过SSH执行以下操作时,我也无法使用套接字进行连接: $ […]