SSH使用技巧
SSH使用技巧
SSH免输入密码
SSH始终保持连接
原理是依赖ControlMaster的能力,保持socket文件存在。
首先创建配置文件,可使用 ~/.ssh/config 或者/etc/ssh/ssh_config
这里我使用~/.ssh/config 内容如下:
Host 61.74.58.123 61.74.58.122
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p
简单解释下,我要针对的是上述2个IP的主机,其他不需要。然后用到ControlMaster auto,否则默认是no的状态。%r 代替用户名,%h代替主机,%p代表端口。这个是表示生成的socket文件
然后命令:
ssh -M -N -f 61.74.58.123
-M 表示使用ControlMaster 模式,这里似乎可有可无,都会去用的
-N 表示不执行远程的命令
-f 后台执行命令
-N与-f配合,表示告诉ssh 我不需要执行命令,给我直接在后台工作。这样就使一条连接保持着了。
最后,直接再使用ssh 61.74.58.123连接,而且速度很快,不需要再输入密码。不过目前还有个问题,有些服务器,会在一段时间不操作后自动断开连接,这样那个socket就没用了。可能可以用后台定期执行一些命令等解决。同样用-f参数。具体尚未试验。
如果要关闭服务器,只需要输入
ssh -O exit 61.74.58.123
通过SSH Forward 建立安全连接
表示连接到server上并将server的80和本地的12345建立条tunnel,然后访问本地的12345端口即可,此操作会连接至远端主机,不是后台操作
ssh serverip -L 12345:localhost:80
links http://localhost:12345/
后台操作
ssh serverip -f -L 12345:localhost:80 sleep 10
或
ssh serverip -Nf -L 12345:localhost:80
-L 表示本地端口重定向到远端端口,12345表示绑定的本地端口,localhost表示远端主机上的ip地址,即远端主机上的loopback,80表示远端要被定向到的端口
-f 后台
-N 不执行命令(不加就必须执行条远端命令)
通过SSH 跨内网
方法是使用与-L对应的-R参数,表示将远端的端口映射到本地
ssh serverip -R 12345:localhost:80
表示当访问serverip的12345端口时,等于访问本机的80
12345指远端要绑定的端口,localhost表示本地主机的ip地址,80表示要重定向到的本地主机的端口
实际应用:
假设A内网机器,B公网机器,有公网IP,B要访问A的ftp
A:ssh B -R 12345:localhost:21
B:ftp localhost 12345
如果存在C,也要访问A的ftp,那么B要做的是修改sshd_config:
GatewayPorts yes
因为默认端口重定向,监听的ip是loopback的
SSH代理
使用ssh serverip -D 1080
putty配置方法:
在connection->ssh->tunnels,输入source port(这个是你本地监听的端口),然后destination下选择dynamic。然后连接到proxy 服务器,输入用户名密码登录,就不用管他了。
之后设置本地的socks代理即可,端口为1080,注,监听在loopback,默认。浏览器的话就在代理设置里加上127.0.0.1 1080的代理。
SSH使用技巧的更多相关文章
- Linux SSH安全技巧
SSH服务器配置文件是/etc/ssh/sshd_conf.在你对它进行每一次改动后都需要重新启动SSH服务,以便让改动生效. 1.修改SSH监听端口默认情况下,SSH监听连接端口22,攻击者使用端口 ...
- ssh 使用技巧
参考:https://deepzz.com/post/how-to-setup-ssh-config.html SSH Config 那些你所知道和不知道的事 预览目录 配置项说明 相关技巧 管理多组 ...
- ubuntu 上 SSH scp 技巧
参考:https://deepzz.com/post/how-to-setup-ssh-config.html SSH(Secure Shell)是什么?是一项创建在应用层和传输层基础上的安全协议,为 ...
- 一些 ssh 小技巧
本文来自网易云社区. 作者:沈高峰 ssh 经常需要使用的,每次使用都 ssh abc@XXX.def.com -p 12138 -i ~/.ssh/id_rsa 来一遍显然太麻烦了,下面分享一点 ...
- ssh 常用技巧
连接中转 有时候你可能需要从一个服务器连接另外一个服务器,比如在两个服务器之间直接传输数据,而不用通过本地电脑中转: www1 $ scp -pr templates www2:$PWD (顺便说一下 ...
- 何为SSH协议?
该文来自百度百科,自我收藏. SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层基础上的安全协议.SSH ...
- 【转】25个必须记住的SSH命令
1.复制SSH密钥到目标主机,开启无密码SSH登录 ssh-copy-id user@host 如果还没有密钥,请使用ssh-keygen命令生成. 2.从某主机的80端口开启到本地主机2001端口的 ...
- ubuntu16.04服务器配置ssh免密登录
原版资料英文,链接在此 https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 在客户端操作 ssh-k ...
- SSH 25 tips
port ssh -Nf -L 9800:192.168.1.132:22 -l root 10.100.125.76 -v ssh -l root 127.0.0.1 -p 9800 scp -P ...
随机推荐
- iOS_中国汉字到拼音_pinyin4objc
最后效果图: ViewController.h // // ViewController.h // PinYin4Objc汉字转拼音演示demo // // Created by beyond on ...
- 在打包程序中自动安装SQL Server数据库 .
原文:在打包程序中自动安装SQL Server数据库 . 1.创建安装项目“Setup1”安装项目 在“文件”菜单上指向“添加项目”,然后选择“新建项目”. 在“添加新项目”对话框中,选择“项目类型” ...
- XAMPP on Mac 组态 Virual Host
首先,在hosts文件中添加virtual host域名.方向127.0.0.1 我一般使用的命名约定dev-domainname.com sudo nano /private/etc/hosts # ...
- navicat连接oracle数据库报ORA-28547: connection to server failed, probable Oracle Net admin error错误的解决方法
原文:navicat连接oracle数据库报ORA-28547: connection to server failed, probable Oracle Net admin error错误的解决方法 ...
- IE6常见bug
1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定mar ...
- 与6lowpan最相关的RFC文档列表
有关于6lowpan最原始的文档,请参考下面的链接与截图: http://datatracker.ietf.org/wg/6lowpan/
- [tarjan] hdu 3836 Equivalent Sets
主题链接: http://acm.hdu.edu.cn/showproblem.php? pid=3836 Equivalent Sets Time Limit: 12000/4000 MS (Jav ...
- WPF随手小记之二 ——改变DataGrid样式
大部分时候我们并不需要手动改变DataGrid的样式,因为用默认的其实也看得过去,而且在DataGrid中的数据也远比外观重要. 但总有时候,我们需要做点必要的UI修改来使DataGrid更美观. 一 ...
- 2014年3I工作室成员的正式名单
后3I认真审议和审查工作室的老师及相关人员,今天,新成员首次正式发布,如以下:博才文(11软件).黄彩云(11软件).朱小丹(11软件).海(11软件).欧剑灵(11此计).黄思源(12软件).黄龙营 ...
- 安装64位的oracle连接客户端
VS自带的WebServer只有32位的,你只能以32位运行,即使你的VS里面编译目标是64位的, 注意:发布到iis,可以以64位运行,你需要安装64位的oracle连接客户端.如果没有,你的程序必 ...