本文来自网易云社区。

作者:沈高峰

ssh 经常需要使用的,每次使用都

 ssh  abc@XXX.def.com -p 12138 -i ~/.ssh/id_rsa

来一遍显然太麻烦了,下面分享一点使用ssh的小技巧

1、客户端配置

linux 下,ssh会去读 ~/.ssh/config 里的配置的,只需要配置文件里写入如下配

Host XXX1    # 配置的名称,选方便自己识别的就行HostName XXX1.def.com # 服务器地址ip 域名都可以User abc            # 登录的用户名Port 12138IdentityFile ~/.ssh/abc_rsa  # 私钥路径

然后每次登录的时候,只需要

ssh XXX1

按tab 还会自动补全Host 信息

如果私钥设置了Passphrase,就只需要输入Passphrase 就可以了,没有Passphrase的话,就会直接登录。

每次用scp的时候,也只需要scp XXX1:/home/abc/def . 就可以了

windows下,我一般用putty,主要设置wiki上都有 常用 SSH 客户端的设置和使用

加入一下下面这个设置,可以免去每次都需要输入用户名的麻烦。

windows下使用scp推荐一下 winscp这个软件,它会去读putty的配置,一般putty设置好了,就不需要在配置了。

它直接可以通过窗口进行scp操作。


2、多个服务器同时部署相同程序

这种情况适合同一个脚本/程序需要部署到一组机器上。

一般需要一个台台scp过去,再修改权限,拷贝到指定目录

可以写个简单的脚本

脚本大概是这样的

servers=(XXX1 XXX2 XXX3)  # XXX1 XXX2 XXX3 代表1中配置好了的HostName,下同for i in ${servers[@]};do 
    scp a.sh $i:
    ssh $i sudo -iu pub_count cp /home/abc/a.sh /home/pub_count/done

也可以使用parallel-ssh ,debian下直接apt-get 安装就可以了

上面的小脚本就可以变成下面2条命令了

parallel-scp -H "XXX1 XXX2 XXX3" a.sh  /home/abc
parallel-ssh -H "XXX1 XXX2 XXX3" "sudo -iu pub_count cp /home/abc/a.sh /home/pub_count/"

3、ssh代理

调试的时候比较有用,比如openid开发的时候,跳转回127.0.0.1不需要申请权限。

如果程序部署到远程服务器上了,就需要去申请权限了。

通过ssh-tunnel开个代理,再在浏览器上设置好代理,就可以认为浏览器当成在远程使用了

ssh -qTfnN  XXX1 -D 127.0.0.1:7070 # 使用本地端口7070设代理,流量通过ssh走远程服务器

一般默认情况下网络设置里会在不使用代理这里有localhost,127.0.0.1,要像上面那样调试,就需要删掉这个设置

这样设置好之后,使用浏览器访问 127.0.0.1:8080 实际是访问远程服务器XXX1上的127.0.0.1:8080

网易云免费体验馆,0成本体验20+款云产品!

更多网易研发、产品、运营经验分享请访问网易云社区

相关文章:
【推荐】 大中型 UGC 平台的反垃圾(anti-spam)工作
【推荐】 一行代码搞定Dubbo接口调用
【推荐】 四两拨千斤式的攻击!如何应对Memcache服务器漏洞所带来的DDoS攻击?

一些 ssh 小技巧的更多相关文章

  1. SSH框架构建微信公众帐号服务器小技巧

    SSH框架构建微信公众帐号服务器小技巧 熟悉struts2和servlet的同学应该清楚,struts2的方法多样性弥补了servlet单一的doGet 和doPost方法.如果自己的公众账号服务器是 ...

  2. linux系统维护时的一些小技巧,包括系统挂载新磁盘的方法!可收藏!

    这里发布一些平时所用到的小技巧,不多,不过会持续更新.... 1.需要将history创建硬链接ln 全盘需要备份硬链接 ln /etc/xxx /home/xxx 2.root用户不可以远程 /et ...

  3. Git 小技巧

    分享git的几个小技巧,后面会根据使用补充.目前包括git撤销本地修改.git回退到前n个版本.git多用户提交冲突解决.git 命令简化.欢迎大家补充^_* 1.git撤销本地修改 git rese ...

  4. iOS工作小技巧及填坑记录

    以下是本人在iOS开发工作中使用的一些小技巧,记录一下. 1.使用XXX.pch文件便捷开发+加速Build 在IOS开发的项目中有一个XX_Prefix.pch XX_Prefix.pch:扩展名. ...

  5. Linux的95个小技巧

    Linux的95个小技巧 by WEB全栈工程师 on 2012 年 03 月 27 日 这里总结了Linux使用中的一些小技巧 1.实现RedHat非正常关机的自动磁盘修复 先登录到服务器,然后在/ ...

  6. shell 中的小技巧

    去掉最后一个字符 sed 's/.$//' awk '{sub(/.$/,"")}1' awk '{printf $0"\b \n"}' [root@ ~]# ...

  7. 杂谈---小故事小道理,面试中的小技巧(NO.2)

    本篇是接着上一篇面试随笔的,上一次有猿友反应写的有些“扯淡”,LZ思来想去最大的原因可能是由于上一章写的全是一些大忌,既然是大忌,那么在现实当中发生的概率还是相对较小的,大部分人还是很少在面试中犯如此 ...

  8. git的几个小技巧

    git的几个小技巧 分享git的几个小技巧,后面会根据使用补充.目前包括git撤销本地修改.git回退到前n个版本.git多用户提交冲突解决.git 命令简化.欢迎大家补充^_* 1.git撤销本地修 ...

  9. 学会这些 pycharm 编程小技巧,编程效率提升 10 倍

    PyCharm 是一款非常强大的编写 python 代码的工具.掌握一些小技巧能成倍的提升写代码的效率,本篇介绍几个经常使用的小技巧. 一.分屏展示 当你想同时看到多个文件的时候: 1.右击标签页: ...

随机推荐

  1. zendstudio 汉化

    http://archive.eclipse.org/technology/babel/index.php http://www.eclipse.org/babel/downloads.php 注册码 ...

  2. UESTC 757 棋盘

    虽然是水题,但是还是很interesting的.(大概就是我最晚出这个题了... 博弈感觉就是靠yy能力啊.这题是对称性. 最后的必败态是白色格子对称的,一旦对称形成,对手怎么选,跟随就好,对手无法摆 ...

  3. Robin-Karp algorithm 字符串的匹配

    有关字符串的匹配问题,有很好的算法,即KMP算法,但是还有一种其实经常使用到的算法是Rabin-Karp算法,它是使用hash的原理来进行字符串匹配的.具体的做法如下. Rabin-Karp算法是由R ...

  4. OpenGL进阶演示样例1——动态画线(虚线、实线、颜色、速度等)

            用OpenGL动态绘制线段.事实上非常easy,但到如今为止.网上可參考资料并不多. 于是亲自己主动手写一个函数,方便动态绘制线段.代码例如以下: #include<GL/glu ...

  5. MAC os x 系统java开发环境搭建教程

    https://jingyan.baidu.com/article/3d69c55147a3baf0cf02d7ca.html

  6. RabbitMQ安装---rpm安装

    首先介绍一下个人的安装环境是Linux-centos7: 一.安装和配置rabbitmq的准备工作: 下载erlang:    wget http://www.rabbitmq.com/release ...

  7. Ansible工作架构和原理

    特性 模块块化调用持定的模块,完成持定任务 有Paramiko,PyYAML,Jinja2(模板语言)三个关键模块 支持自定义模块 基于Python语法头现 部署简单,基于python和SSH(默认已 ...

  8. kafka单机环境搭建及其基本使用

    最近在搞kettle整合kafka producer插件,于是自己搭建了一套单机的kafka环境,以便用于测试.现整理如下的笔记,发上来和大家分享.后续还会有kafka的研究笔记,依然会与大家分享! ...

  9. LNMP+HAProxy+Keepalived负载均衡 - 基础服务准备

    日志服务 修改日志服务配置并重启日志服务: ``` vim /etc/rsyslog.conf ``` 编辑系统日志配置,指定包含的配置文件路径和规则: ``` $IncludeConfig /etc ...

  10. IDEA 工具项目的配置及如何打war包

    1. Project Structure 1.1 首先点击File-ProjectStructure,进入项目配置: 2.Project Settings配置 2.1 Project  2.1.1 f ...