Questions tagged «ssh»

SSH(安全外壳)是用于在远程计算机上安全运行命令的协议。使用此标记可解决有关配置,使用SSH客户端和服务器软件以及对其进行故障排除的问题。

6
为什么我不能通过远程SSH会话运行Gnome应用程序?
使用登录到远程主机后ssh -X me@host,我成功运行了gnome-terminal -e "tail -F /var/log/file" &。当我注销然后第二天尝试相同的操作时,我得到了: 无法获取会话总线:无法连接到套接字/ tmp / dbus-K99gT9yDjS:连接被拒绝回到非出厂模式。无法召唤GConf恶魔;退出。联系配置服务器失败;一些可能的原因是您需要为ORBit启用TCP / IP网络,或者由于系统崩溃而拥有过时的NFS锁定。有关信息,请参见http://projects.gnome.org/gconf/。(详细信息-1:无法连接到会话:无法连接到套接字/ tmp / dbus-K99gT9yDjS:连接被拒绝) 在这种情况下如何运行gnome-terminal?
9 ssh  gnome  d-bus 

1
命令:必须从终端运行
我有一个共享的托管帐户,我使用ssh登录。例如,当我输入时,su我得到以下输出: su: must be run from a terminal 此错误是否与我没有足够的权限或其他原因有关?
9 linux  debian  ssh  su 

5
无法使用iptables阻止蛮力SSH
我试图阻止(减慢)我的sshd服务器上的暴力攻击。我正在遵循本指南http://www.rackaid.com/resources/how-to-block-ssh-brute-force-attacks/,该指南基本上说我只需要输入以下2条命令即可。 sudo iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set sudo iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP 我的sshd端口是6622,因此我将条目从“ 22”更改为“ 6622”,并放入了这些命令。然后,我尝试简单地测试新的iptables。我去了另一台电脑,故意多次输入了错误的登录密码。不幸的是,新规则似乎并没有阻止我尽力而为。下面列出了我当前的规则。我究竟做错了什么? # iptables --list Chain INPUT (policy …
9 ssh  iptables  sshd 

1
如何强制ssh使用具有更高度量标准的第二个接口?
我有一个带有两个接口的Crunchbang VM,eth0和eth1,每个接口都连接到OpenWRT VM(eth0being 10.232.64.20和 eth1being 10.232.65.20)。我正在使用网络管理器和DHCP。我的总体目标是建立多个ssh连接,并与绑定ifenslave。 默认情况下,eth1(出于某种原因)是默认网关: user@crunchbang:~$ ip ro default via 10.232.65.1 dev eth1 proto static 10.232.64.0/24 dev eth0 proto kernel scope link src 10.232.64.20 10.232.65.0/24 dev eth1 proto kernel scope link src 10.232.65.20 我为增加了一条路线eth0: user@crunchbang:~$ sudo ip route add default via 10.232.64.1 dev eth0 proto static metric 1 …

2
通过中间人服务器的SSH隧道-如何一步连接(使用密钥对)?
我的问题基本上是如何将现有的两个步骤变成一个步骤。 我使用这样的中间人服务器在两台计算机之间建立了可工作的SSH隧道: Kubuntu_laptop--->nat_fw--->Debian_Server<--nat_fw<--Kubuntu_desktop 我目前要做的是从Kubuntu_laptop到Debian_Server的SSH,然后从Debian_Server到Kubuntu_desktop的SSH。我想用bash在我的Kubuntu_laptop上发出一个SSH命令,以使我连接到Kubuntu_desktop(shell / bash)。 我现在使用的命令如下。步骤1: me@kubuntu_laptop:~$ ssh -i ~/.ssh/id_rsa admin@debian_server 第2步: admin@debian_server:$ ssh -p 1234 -i /home/admin/.ssh/id_rsa admin@localhost 然后,我通过SSH(来自kubuntu_laptop)连接到kubuntu_desktop。 所有SSH连接都需要RSA密钥。一直禁用密码登录。并请注意,两台计算机上的计算机用户帐户不同。 关于这条腿的连接: Debian_Server<--nat_fw<--Kubuntu_desktop 建立方法如下: autossh -M 5234 -N -f -R 1234:localhost:22 user@mydebian.com -p 22 注意Kubuntu_desktop以user@mydebian.com(不是admin @ debian_server)连接到中间人。但是当我连接到Kubuntu_desktop时,我以管理员用户身份连接。 我无法更改现有的监视端口(5234)或远程(-R)端口号(在此示例中为1234)。我无法更改SSH安全性以允许密码登录。我无法打开任何新的防火墙端口。我无法更改用户帐户(笔记本电脑除外)。

4
SSH突然不再起作用:“写入失败:管道损坏”
我在家中使用Macbook Pro,并定期在实验室中使用ssh进入计算机。但是,在过去的3-4天中,每当我通过SSH进入实验室中的计算机时,几乎都不会在ssh-ing的2分钟之内收到Write Failed:Broken Pipe错误。 几天前一切运行正常,这一事实令我感到困惑,为使事情重新恢复正常运转所提供的任何帮助将不胜感激。
9 networking  ssh  ip 

1
转发所有端口SSH
我有关于SSH /端口转发的问题。我在任何地方都找不到解决方案,也不知道是否有解决方案。 我家里的NAT盒后面有一个服务器。我已经将端口从我的NAT盒转发到服务器的端口22上的SSH,因此,my_nat_public_ip:22当我在旅途中时,我可以连接到它,并且它就像一种魅力。 现在,我知道我也可以访问服务器的任何端口,甚至无需为其配置NAT框。确实,我可以像这样进行动态端口转发: ssh -D 1080 user@my_nat_public_ip 然后通过设置浏览器连接到服务器的any_port端口,否则将localhost:1080用作SOCKS代理,并指向my_local_server_ip:any_port。 我想做的是像这样的命令 ssh -D --local_alias=local_alias user@my_nat_public_ip 如果我访问local_alias:any_port,它将转发到my_server:any_port 那有可能吗?是否有SSH选项可以执行此操作?它只是简单得多,因此可以在不同的服务器上进行多个动态端口转发。


2
为什么即使正确指定了$ PATH,Bash也无法找到命令?
我在文件/ etc / profile中指定命令的路径: export PATH=$PATH:/usr/app/cpn/bin 我的命令位于: $ which ydisplay /usr/app/cpn/bin/ydisplay 因此,当我执行“ echo $ PATH”输出时,如下所示: $ echo $PATH ...:/usr/app/cpn/bin 一切正常,但是当我尝试通过SSH启动命令时,出现错误: $ ssh 127.0.0.1 ydisplay $ bash: ydisplay: command not found 但是我的道路仍然存在: $ ssh 127.0.0.1 echo $PATH ...:/usr/app/cpn/bin 请向我解释为什么Bash在SSH会话期间无法找到ydisplay,以及如何正确配置SSH以避免此问题。 而且,如果我在当前用户的本地文件.bashrc中指定$ PATH,则它们都可以正常工作。但是我只想修改一个文件,而不是为每个用户指定很多文件。这就是为什么我要问。
9 linux  bash  shell  ssh  path 

2
退出时使用SSH LocalCommand
在通过SSH连接到远程计算机时,~/.ssh/config可以使用In LocalCommand命令执行本地命令。但是,退出 SSH连接后如何执行命令?似乎* .bashrc / .bash_profile *文件在连接结束或关闭时不是源文件。
9 bash  ssh  osx 

3
向用户授予所有文件和文件夹的权限
我希望有一个有权访问系统上所有文件和文件夹的用户。这是为了在本地计算机上使用RSYNC备份远程计算机。 目前,我们正在使用该用户backups,尽管我们已将该用户添加到组中sudo,但adminrsync仍返回如下消息: rsync:opendir“ /位置/到/文件夹”失败:权限被拒绝(13) rsync:send_files无法打开“ / location / to / file”:权限被拒绝(13) 任何想法我们都将授予用户backups访问所有内容的权限(除了将用户添加到所有组之外-我们尝试备份的远程服务器是专用的托管服务器,其中每个帐户在系统上都有自己的用户)。 谢谢你的帮助。

1
在本地计算机上通过ssh播放声音/通知
因此,我有finch一个在我ssh进入的远程计算机上运行的命令行聊天客户端(例如pidgin)。finch具有通知声音,并且可以在发生某些事件时运行命令,使您可以将声音文件作为传递%s。例如mplayer %s 从远程计算机发出通知时,我可以运行哪种命令来播放%s本地计算机上的内容?
9 ssh  bash  audio 

1
存在X Forward程序时,退出后SSH未终止
通过SSH运行X程序后,SSH在外壳退出后不会终止(必须使用例如CtrlC杀死它)。 我的猜测是,尽管X程序已经退出,但仍然存在一些“连接”(未释放)。我现在发现的例外是gtk-demo和acroread。 有人知道原因吗?ssh {,d}配置是否有问题?
9 ssh  x11  xforwarding 


1
如何检测外壳程序何时归远程SSH会话所有?
我的问题与此类似,但是我正在寻找稍微不同的东西。我有一台笔记本电脑,用于在两种不同情况下访问网络上的Linux机器: 我有直接的有线连接到网络。 我与网络有间接连接。网络上有一台暴露于Internet的网关计算机,我可以使用它来建立到网络主机的SSH隧道。这显然是一个慢得多的,更高延迟的连接。 我的主目录可从所有机器通过网络访问,因此它们共享我的副本.bashrc。我想添加功能以.bashrc检测我处于两种情况中的哪一种并采取相应的措施(从技术上讲,将有三种情况,其中第三种是我登录到本地计算机,但是应该易于处理) )。我想做类似的事情: alias ssh ssh -X 当我在本地网络上,但是我不想在Internet上使用X转发时。 export EDITOR=gvim当我在本地网络上但export EDITOR=vim在远程时。 等等。根据先前的答案,看来我应该能够通过检查SSH_CLIENT(如果存在)的内容并查看客户端IP地址是否与本地计算机上的网络适配器之一匹配来完成类似的操作。我想我会看看是否有一种更流畅或更强大的方法来完成此任务。
9 shell  ssh  bashrc 

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.