login到我的Linux服务器上的用户应该能够使用默认帐户ssh到特定的远程机器。 远程机器上的validation使用公钥,因此在服务器上相应的私钥是可用的。 我不希望服务器用户真正能够读取私钥。 基本上,他们有权访问服务器的事实允许他们正确的SSH,并从服务器中删除他们也应该禁止连接到远程机器。 我怎样才能允许用户打开一个SSH连接,而不给他们读取访问私钥? 我到目前为止的想法:显然,ssh可执行文件必须能够读取私钥,所以它必须在具有这些权限的服务器上的另一个用户下运行。 一旦build立了ssh连接,我就可以“转发”给用户,这样他就可以input命令并与远程机器交互了。 这是一个好方法吗? 我应该如何执行前进? 用户如何启动连接(即用户对密钥具有读权限的情况下执行ssh)? 有没有安全漏洞? – 如果用户可以作为另一个用户执行ssh,那么他们可以做其他用户可以做的所有事情(包括读取私钥)吗?
我以前用screen -dr control重新连接到一个长时间的屏幕会话。 但是,有时这个命令不会重新连接到屏幕上,而是永远挂起(10分钟以后我中止了)。 这只发生在SSH连接意外丢失时,而不是在用Ctrl-A d正确分离屏幕时发生。 其他开关,例如screen -x或screen -D -RR也不起作用。 这个postbuild议杀死持有屏幕会话,这将导致屏幕完成其断开连接的PTY。 但是,它只是杀死了screen -dr control被调用的shell。 例如: $ ps -ef | grep control | grep -v grep nomad 7387 7109 0 13:05 pts/50 00:00:00 screen -dr control nomad 15299 1 0 Nov27 ? 00:13:47 SCREEN -S control $ ps -ef | grep bash | grep 'pts/50' nomad […]
为什么考虑在服务器上设置FTP服务,当文件传输通过SSH方式正常工作(在Lunux上的午夜指挥官和在Windows客户端上的FileZilla)? 两者的优点和缺点是什么? 除了FTP之外,不同的客户端更广泛地支持FTP。
当我从家里进入我们的一台办公室服务器(运行Fedora 10)时,会话经过相当短的时间(5分钟左右)就超时了。 我已经尝试在客户端使用TcpKeepAlive ,没有任何效果。 我不明白的是,如果我在公司局域网的办公室里,我可以整天闲置一段时间,而不会超时,所以这种行为似乎取决于我的位置。 任何想法为什么发生这种情况,以及如何防止当我不在局域网上超时? 如果有帮助,我在Mac OSX上使用terminal客户端。 更新 – 戴夫德雷格的build议使用ServerAliveInterval设置为非零与TcpKeepAlive=no为我工作。 关于其他一些答案,Mac OSX SSH客户端不接受ClientAlive …设置。
我使用svn + ssh,我看到了一些: Killed by signal 15. 在svn up 。 任何想法的方式?
基本上我问的是,有没有人遇到了一种方法,在rsh内包装rsync。 使用OpenSSH v4.9 + sftp有一些很好的选项,可以让你连接到连接等,这是一个解决scheme,但是我一直用RHEL,而RHEL4或者RHEL5都不是那个版本的SSH。 我目前的解决scheme是使用客户端用户的密钥添加类似这样的服务器端… server%cat〜/ .ssh / authorized_keys command =“cd / srv / rsync / etl && tar –exclude'./lost+found'-pcf – ./”ssh-rsa … …所以客户将被限制在一件事情,一件事情… 客户端%ssh -T -i $ {HOME} /。ssh / id_rsa [email protected]> sensative.tar 这保证了连接以及服务器(来自客户端)的安全,但是效率低下,因为所有的文件都会一遍又一遍地被检索。 我在使用rsync做类似的(或更好的)之后。
我创build了一个新的实例(来自Amazon的64位AMI linux)创build了一个名为“mir”的新密钥对。 我下载了mir.pem并把它放在我的~/.ssh文件夹中。 我甚至做了ssh-add mir.pem 。 然后我试图ssh ubuntu@public_DNS_from_amazon 为什么它不工作!?
是否有可能在openssh上设置Ubuntu的用户,使SSH不使用密码authentication,但SFTP呢? 我假设,如果我改变/etc/ssh/ssh_config有PasswordAuthentication yes这使得用户可以使用密码login与ssh和sftp。 编辑:我的目的是让一些用户sftp密码,而不是密钥文件。 但我不希望SSH用户能够使用密码login,我希望他们必须使用密钥文件。 如果有帮助,我不需要sftp用户能够login,他们只需要做sftp。
我有一台运行Ubuntu服务器的服务器,有四个IP地址在一个网卡上。 eth0 192.168.1.100 eth0:0 192.168.1.101 eth0:1 192.168.1.102 eth0:2 192.168.1.103 (举例来说,使用192.168.xx,假设这些是NAT-ed到一系列公有IP地址) 我们的一个客户通过FTP发布他们的库存,所以我们每天login从服务器下载一个大文件。 他们的防火墙期望我们的(被动)FTP连接从192.168.1.100。 鉴于我的服务器逻辑上在一个适配器上有四个IP地址,操作系统如何确定哪个IP地址用作出站TCP / IP连接的源? 比方说,我在192.168.1.101 SSH我的服务器并交互运行FTP。 出站TCP / IP连接使用192.168.1.101,因为操作系统知道我的shell连接的接口? 如果FTP任务是通过没有shell的cron作业非交互式运行的呢? 你可能会说,这让我很困惑,所以我希望我的问题至less有意义。 编辑 为了澄清为什么我问 – 我没有做任何改变的路由表,它实际上列出了“eth0”作为0.0.0.0路由IFace。 但是,所有的迹象表明,它实际上使用eth0:0作为源。 Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 eth0 我可以摆弄路由表,或让我们的客户端改变他们的防火墙规则,以获得我所需要的行为,但是我想了解一下这是如何工作的,以了解在操作系统中是否存在错误,或只是我幼稚的理解所有的东西如何融合在一起 谢谢
我需要运行脚本,这需要很长时间来执行,或者我只是希望它永远运行。 我不能只是SSH到我的机器,因为当我断开它停止运行。 有什么办法可以运行不依赖于启动它的shell的脚本吗? 我正在使用Ubuntu 9.04。