标签: ssh

在Mac OS上避免SSH超时?

每次使用ssh连接到服务器时,如果没有输入,连接将在几分钟后重置.但是,我想删除这些超时,以尽可能长时间保持连接.

通过查看不同的论坛,我看到可以修改/ etc/ssh_config文件中的ServerAliveInterval选项.但是,我的文件中似乎没有此选项.它可能在哪里?

我在Snow Leopard上运行OpenSSH_5.2p1.

谢谢!

macos ssh

85
推荐指数
1
解决办法
5万
查看次数

ssh在bash中突然出现while循环

我使用这个bash-code将文件上传到远程服务器,对于普通文件这很好用:

for i in `find devel/ -newer $UPLOAD_FILE`
do
    echo "Upload:" $i
    if [ -d $i ]
    then
        echo "Creating directory" $i
        ssh $USER@$SERVER "cd ${REMOTE_PATH}; mkdir -p $i"
        continue
    fi
    if scp -Cp $i $USER@$SERVER:$REMOTE_PATH/$i
    then
        echo "$i OK"
    else
        echo "$i NOK"
        rm ${UPLOAD_FILE}_tmp
    fi
done
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,对于名称中有空格的文件,for循环失败,所以我替换了第一行,如下所示:

find devel/ -newer $UPLOAD_FILE | while read i
do
    echo "Upload:" $i
    if [ -d $i ]
    then
        echo "Creating directory" $i
        ssh $USER@$SERVER "cd ${REMOTE_PATH}; mkdir -p $i"
        continue
    fi …
Run Code Online (Sandbox Code Playgroud)

ssh bash

85
推荐指数
2
解决办法
4万
查看次数

默认情况下,以root身份登录vagrant

问题:我输入框的第一个命令经常是su -.

问题:vagrant ssh默认情况下如何使用root用户?

版本:vagrant 1.6.5

ssh login root vagrant

85
推荐指数
7
解决办法
14万
查看次数

在远程ssh命令中传递变量

我希望能够使用ssh从我的机器运行命令并传递环境变量 $BUILD_NUMBER

这是我正在尝试的:

ssh pvt@192.168.1.133 '~/tools/myScript.pl $BUILD_NUMBER'
Run Code Online (Sandbox Code Playgroud)

$BUILD_NUMBER 在进行ssh调用的机器上设置,因为远程主机上不存在该变量,所以它不会被拾取.

我如何传递值$BUILD_NUMBER

linux ssh bash shell

84
推荐指数
3
解决办法
10万
查看次数

使用Fabric时连接到〜/ .ssh/config中列出的主机

Fabric无法识别我所拥有的主机~/.ssh/config.

我的fabfile.py情况如下:

from fabric.api import run, env

env.hosts = ['lulu']

def whoami():
    run('whoami')
Run Code Online (Sandbox Code Playgroud)

跑步$ fab whoami给出:

[lulu]跑:whoami

致命错误:lulu的名称查找失败

这个名字lulu在我的~/.ssh/config,就像这样:

Host lulu
     hostname 192.168.100.100
     port 2100
     IdentityFile ~/.ssh/lulu-key
Run Code Online (Sandbox Code Playgroud)

我首先想到的解决,这是添加类似lulu.lulu/etc/hosts(我在Mac),但后来我不得不在身份文件还传递给面料-我宁愿让我的认证(即~/.ssh/config)从我的部署分开(即fabfile.py).

顺便说一句,顺便说一句,如果你试图连接到hosts文件中的主机,fabric.contrib.projects.rsync_project似乎并没有确认"端口" hosts.env(即如果你使用hosts.env = [lulu:2100]呼叫rsync_project似乎尝试连接lulu:21).

Fabric有没有认识这个lulu名字的原因?

python ssh fabric

83
推荐指数
3
解决办法
3万
查看次数

在Raspberry Pi上拒绝ssh连接

我意识到这个问题已经以某种不同的方式被问到了,但是我似乎并没有找到任何解决这个问题的方法,所以这里有:

我正试图通过我的笔记本电脑上的ssh连接到我的覆盆子pi 3 raspbian设置,但是虽然我有正确的IP地址,但我一直收到错误:

ssh: connect to host xxx.xxx.xx.x port 22: connection refused.
Run Code Online (Sandbox Code Playgroud)

这是不寻常的,因为当我尝试ping该地址时,它工作正常.有什么我可以试着找出什么是错的吗?

另外请记住,我对linux中的bash相对缺乏经验,因此非常感谢包含任何特定命令及其所做的描述.

linux ssh sshd raspberry-pi3

83
推荐指数
1
解决办法
9万
查看次数

如何使用bash输入ssh密码?

每天我都通过ssh连接到服务器.我经历了这个例程:

IC001:Desktop user$ ssh user@my.server.com
user@my.server.com's password: 

Last login: Tue Jun  4 10:09:01 2013 from 0.0.0.0
$
Run Code Online (Sandbox Code Playgroud)

我想自动执行此过程并创建一个bash脚本来为我完成.我不关心安全性,可以在脚本中公开存储我的密码.我也可以在脚本执行时在屏幕上公开输入.所以我创造了这个:

#!/bin/bash          
ssh user@my.server.com
echo mypassword
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我也试过send而不是echo,但它也没有用.请告知是否可以.

ssh bash

82
推荐指数
2
解决办法
38万
查看次数

适用于OSX 10.8的SSHFS(Mountain Lion)

在过去,我使用SSHFS来安装驱动器,因此我可以使用我的机器上的软件轻松地在远程计算机上工作.但是,当我在MacFUSE项目页面时,我注意到SSHFS早已被弃用.

什么人使用Mountain Lion来安装驱动器?它是否内置于OSX,还是有一些其他项目完全取代了SSHFS带给我们的功能?

任何建议都非常感谢.

编辑:过去我使用"SSHFS GUI"来安装驱动器.它看起来非常类似于Finder >> Go >> Connect to server...界面.

+1 - > m01 - 我目前正在使用您的解决方案,但如果有人知道GUI,我很乐意听到它.

ssh sftp osx-mountain-lion

81
推荐指数
3
解决办法
9万
查看次数

如何在登录后将SSH用户限制为一组预定义的命令?

这是一个安全的想法.我们的员工可以访问Linux服务器上的一些命令,但不是全部.他们应该可以访问日志文件(less logfile)或启动不同的命令(shutdown.sh/ run.sh).

背景资料:

所有员工都使用相同的用户名访问服务器:我们的产品以"正常"用户权限运行,不需要"安装".只需在用户目录中解压缩并运行即可.我们管理了几个"安装"应用程序的服务器.在每台机器上都有一个用户johndoe.我们的员工有时需要在命令行上访问应用程序以访问和检查日志文件或手动重启应用程序.只有一些人才能拥有完整的命令行访问权限.

我们在服务器上使用ppk身份验证.

如果employee1只能访问日志文件而employee2也可以执行X等,这将是很好的...

解决方案: 作为解决方案,我将使用接受答案command中所述的选项.我将创建自己的小shell脚本,这将是可以为某些员工执行的唯一文件.该脚本将提供几个可以执行的命令,但没有其他命令.我将使用下列参数从为表示在这里:authorized_keys

command="/bin/myscript.sh",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty
ssh-dss AAAAB3....o9M9qz4xqGCqGXoJw= user@host
Run Code Online (Sandbox Code Playgroud)

这对我们来说足够安全.谢谢,社区!

linux ssh shell

80
推荐指数
5
解决办法
14万
查看次数

结帐Jenkins Pipeline Git SCM凭证?

我正在学习本教程:

node {
  git url: 'https://github.com/joe_user/simple-maven-project-with-tests.git'
  ...
}
Run Code Online (Sandbox Code Playgroud)

但是,它没有说明如何添加凭据.Jenkins确实有特定的"凭据"部分,您可以在其中定义用户user&pass,然后获取要在作业中使用的ID,但是如何在管道指令中使用它?

我尝试过:

git([url: 'git@bitbucket.org:company/repo.git', branch: 'master', credentialsId: '12345-1234-4696-af25-123455'])
Run Code Online (Sandbox Code Playgroud)

没运气:

stderr: Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)

有没有办法在管道中配置信用卡,还是我必须将SSH密钥放到Jenkin的Linux用户的.ssh/authorized_keys文件中?

在理想的世界中,我想拥有一个管道作业和repo-keys的存储库,然后启动Docker Jenkins,并在那里动态添加这些作业和密钥,而无需在Jenkins控制台中进行任何配置.

git ssh jenkins jenkins-pipeline

79
推荐指数
6
解决办法
17万
查看次数