Linux下实现自动设置SSH代理
SSH的巨大价值体现在能够配置为代理服务器上。不像在Windows下每次还需要手动登录设置,Linux有很好的工具链能够实现自动设置SSH代理,就是expect和ssh的联合使用,再加上proxychains,任何程序都可以享用代理了,在此我简单介绍一下。
首先要安装expect和openssh,如果没有,Ubuntu下输入apt-get install expect openssh-client即可安装。接下来需要写一段脚本:
#!/usr/bin/expect
set timeout 60
spawn /usr/bin/ssh -D 本地端口 -g 用户名@服务器
expect {
"password:" {
send "密码\r"
}
}
interact {
timeout 60 { send " "}
}
把上面的中文替换成对应内容,保存为一个脚本文件,例如sshproxy.sh,然后给它执行权限,chmod +x sshproxy.sh。在终端下运行./sshproxy.sh,就会发现自动登录到了服务器上,而且在本地建立了一个socks5代理。而且使用这段脚本还不用担心会被踢,因为每60秒都要发送一个空格表示还在活动。如果把sshproxy.sh放到自动启动,那么以后每次启动都可以自动建立代理了。
这种方法建立的代理是socks5代理,在浏览器中很容易配置使用,但如果其他程序也想用它,而没有代理功能,该怎么办呢?在Windows下面的确不好办(需要各种付费的、不稳定的代理转换工具),而在Linux下一切很简单,只需要一个名叫proxychains的工具。Ubuntu安装方法为apt-get install proxychains。安装完以后要设置/etc/proxychains.conf文件,删除[ProxyList]后面的内容,然后添加
socks5 127.0.0.1 端口
把“端口”替换为SSH代理设置的端口。然后在想要运行的程序前加上proxychains ,即可使用代理。例如输入proxychains wget http://www.youtube.com -r,即可给wget设置SSH代理去下载。
正如其名,实际上proxychains是个代理链,我们可以设置多个代理,实现多级跳板连接。用在SSH代理上实在是大才小用了。
转载于:https://www.cnblogs.com/tham/p/6827392.html
Linux下实现自动设置SSH代理相关推荐
- linux怎么设置自动缩进,配置Linux下vim自动缩进等功能
从终端打开配置文件: vim ~/.vimrc 添加如下代码: set tabstop=4 set softtabstop=4 set shiftwidth=4 set autoindent set ...
- SSH远程管理,构建密钥对验证的SSH体系,设置SSH代理功能。
SSH服务及配置文件 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录,对通信双方的数据实行了加密处理,提供了更好的安全性.OpenSSH是实现SSH协议的开源软件 ...
- linux下使用 xset 设置屏保
linux下使用 xset 设置屏保 把从网上找到的资料整理到这里 Linux下的屏保设置 xset s 与 xset dpms http://bbs.chinaunix.net/archiver/? ...
- 转: linux下的自动对时
转自: http://www.cnblogs.com/vimmer/archive/2012/05/17/2505785.html 评注:date 命令格式为: date -s 2012-08-02 ...
- Linux 下Oracle11g 自动随系统启动
Linux 下Oracle11g 自动随系统启动 安装完毕 Oracle 11g 每次都得手动启动 | 停止数据库(dbstart | dbshut).监听器(lsnrctl).控制台(emtcl). ...
- linux中vim如何显示行数,vim 在linux下中如何设置显示行数
在.vimrc(或/etc/vimrc)文件中输入如下文本: set tabstop=4 set softtabstop=4 set shiftwidth=4 set noexpandtab set ...
- vim 在linux下中如何设置显示行数
在.vimrc(或/etc/vimrc)文件中输入如下文本: set tabstop=4 set softtabstop=4 set shiftwidth=4 set noexpandtab set ...
- Linux下环境变量设置
1.在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误. 2.那么什么是环境变 ...
- linux下桥接模式设置静态IP实现上网
桥接网络连接模式的虚拟机就当作主机所在以太网的一部分,虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑,可以像主机一样可以访问以太网中的所有共享资源和网络连接,可以直接共享主机网络的互联网 ...
最新文章
- 算法(16)-leetcode-explore-learn-数据结构-二叉树总结
- elasticsearch+kibana使用中踩的坑,持续更新中。
- 红橙Darren Android视频笔记 自定义view的三个构造方法以及一种实现换肤的方案 测量mode
- 高德车道级导航已上线8城 新增支持小米11 Pro
- java通过jdbc访问mysql,update数据返回值的思考
- oracle scn与数据恢复,Oracle数据恢复:数据文件头的SCN与时间校验
- 明确职责分工的重要性_发挥属地作用明确责任分工
- 自动化测试unittest测试框架实例
- [2018.08.09 T3] 几何题
- 微信小程序代码大全 - 小程序开发福利
- 计算机组成原理问题集合
- linux基础:快速搭建平台
- 前端,自定义印章效果
- php后台管理员登录密码错误,织梦后台登陆不上提示验证码不正确1.密码明明正确的,却无法登陆后台管理...
- PADS 去除走线折角处提示和过孔提示
- html完整语句,html语句
- 怎么申请微信小程序流程_小程序发布需要什么资质
- 【AI初识境】从头理解神经网络-内行与外行的分水岭
- 时间序列模型步骤教程(ARIMA)
- 质数乘积 -LintCode
热门文章
- python关闭exe程序_Win 10 中使用 Python 碰到的奇怪现象
- java启动应用_java 学习:在java中启动其他应用,由jenkins想到的
- linux支持异步io吗,Linux 异步IO
- lntellijidea怎么创建文件_DBC文件到底是个啥
- 【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器
- Python数模笔记-模拟退火算法(4)旅行商问题
- python基础课程1(看代码看注释)--基本操作和数据类型
- 华为系统10.0是鸿蒙吗,暂时忘记鸿蒙!华为EMUI 10.0发布时间确认:这才是主角...
- c语言简单选择对字符串数组排序,简单了解C语言中直接插入排序与直接选择排序实现...
- 用计算机对话的小品,爆笑小品剧本台词《作弊记》