linux(ubuntu)跳板机连接和文件传输

来源:互联网 发布:2017网络统考报名时间 编辑:程序博客网 时间:2024/06/05 11:37

今天工作环境从windows换成了ubuntu,开发的时候需要连上线上主机,但是需要通过跳板机连接。如果只是连接的话可以还是容易搞定的,但是遇到了一个文件传输的问题,由于有了跳板机,需要搞两次,有点烦,于是网上搜资料,最后终于搞定了。(我公司环境是通过密钥连接的,密码连接应该也类似)

在~/.ssh下新建一个文件config,输入以下内容:

Host gateway  HostName 192.168.0.1  Port 8888  User root  ProxyCommand none  IdentityFile ~/.ssh/id_rsa  PasswordAuthentication noHost product  HostName 192.168.0.2  Port 8888  User root  ProxyCommand ssh -q -W %h:%p gateway  IdentityFile ~/.ssh/id_rsa_gateway  PasswordAuthentication no

其中各行意义如下:

  • Host 自己为服务器取的别名
  • HostName 服务器ip
  • Port 连接端口
  • User 用户
  • ProxyCommand 代理命令
  • IdentityFile 密钥文件,默认为~/.ssh/id_rsa
  • PasswordAuthentication 用户密码

各个参数大家在使用的时候改成自己环境的真实参数就好了。

主要是要注意product下IdentityFile的密钥文件是跳板机用来连上线上主机的文件,跟本地主机的密钥文件是不一样的,我就是一直困在这个地方搞不定,运行ssh product后,一直叫我输入线上主机密码,后面才想明白,所以记录下来希望大家遇到这个问题能及时解决。文件传输的时候只需要把原来的主机名换成config文件里的Host就可以了。

如果想配置全局设置,可以修改/etc/ssh/ssh_config文件,比如关闭每次连接时检查主机公钥,可以在/etc/ssh/ssh_config文件中加入这一行:StrictHostKeyChecking no

原创粉丝点击