仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2673|回复: 19
打印 上一主题 下一主题

[其他Linux] Linux编程之SSH小技能仓酷云

[复制链接]
灵魂腐蚀 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:30:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基的。
参考:
SixThingsIwishMomtoldme(aboutssh)
UsingRsyncandSsh
用过linux的,对SSH应当就对照熟习了,但有些技能大概你一定晓得。
毗连乐成后运转命令

我们都晓得能够经由过程SSH猎取远程shell,然后运转命令。假如只想运转单个命令的话,间接把命令附加在SSH命令以后便可,如
  1. wdaher@rocksteady:~$sshbebopuname-aLinuxbebop2.6.32-24-generic#39-UbuntuSMPWedJul2805:14:15UTC2010x86_64GNU/Linux
复制代码
这个最好分离不必输出暗码的SSH登录。假如想猎取python版本,间接"sshhostnamepython-V"
但有些命令大概会报错,如"top"
  1. wdaher@rocksteady:~$sshbeboptopTERMenvironmentvariablenotset.
复制代码
这时候只需加上"-t"参数就好了。
这里我们实行ssh毗连时并没有指定详细的主机名(ip)和用户,而只是"bebop",这是怎样做到的呢?且看下文
利用别号

假设在一个主机上为分歧用户分离守旧了分歧的ssh账号,毗连时就得如许
  1. wdaher@rocksteady:~$ssh-p2222bob.example.comwdaher@rocksteady:~$ssh-p8183waseem@alice.example.comwdaher@rocksteady:~$ssh-p31337-lwaseemiowsd.example.com
复制代码
很贫苦,并且端口大概其他参数有变化的话,纷歧定记得住。实在只需设置一下.ssh/config文件就能够了。
  1. HostbobHostNamebob.example.comPort2222UserwdaherHostaliceHostNamealice.example.comPort8183UserwaseemHostselfHostNamewsd.example.comPort31337Userwaseemio
复制代码
毗连时,就酿成如许了
  1. wdaher@rocksteady:~$sshbobwdaher@rocksteady:~$sshalicewdaher@rocksteady:~$sshself
复制代码
是否是很便利,假如SSH的参数改动的话,修正设置文件就好了,命令稳定。
端口转发

假定有这么个情形:你已上班回家,这时候想要检察公司内网(analytics)的某个web页,但只能SSH到本人在公司的电脑(desktop),desktop和analytics在一个局域网。
先来看一段命令
  1. sshdesktop-L8080:desktop:80
复制代码
这段命令暗示的是ssh连到desktop后,转发当地8080端口到desktop的80端口,这时候,假如会见"http://localhost:8080",就会转发到desktop的80端口。如许的话,把desktop:80换成analytics:80不就半途而废了吗
  1. sshdesktop-L8080:analytics:80
复制代码
如许会见当地的8080端口,就会转到analytics的80端口,经由过程desktop这个跳板。
加倍与日俱增的办法是利用-D参数,将desktop酿成一个socks5代办署理服务器(对这个-D命令,人人应当都很熟习了吧),然后在扫瞄器中设置代办署理为"localhost:8080"
  1. sshdesktop-D8080desktop
复制代码
如许一切的扫瞄器会见城市经由过程desktop举行转发,也就是说间接会见http://analytics就能够了。(analytics地点在hosts里设置,如192.168.1.110analytics)
利用"~"

“~”(不包含引号)是ssh保存字符,在新行输出"~“后,能够共同良多键,个中最经常使用的就是”~.“和”~^Z"(Ctrl+Z)
“~.”会停止ssh毗连,假如中止了毗连,又不想等sshsession过时,就能够利用这个快速键。
“~^Z”会把以后的ssh毗连放到背景,等完成了其他事情后,再把这个毗连掏出来。
  1. wdaher@rocksteady:~$sshbebopwdaher@bebop:~$sleep10000wdaher@bebop:~$~^Z[suspendssh][1]+Stoppedsshbebopwdaher@rocksteady:~$#Dosomethingelsewdaher@rocksteady:~$fg#andyoureback!
复制代码
经由过程authorized_keys指定登录后要实行的命令

这个跟后面提到的"毗连乐成后运转命令"纷歧样,这个命令是界说在authorized_keys里的,ssh连上后,只能实行该命令,而且实行完后当即加入。
先看看一般的authorized_keys
  1. ssh-dssAAAAB3NzaC1kc3MAAAEBAKYJenaYvMG3nHwWxKwlWLjHb77CT2hXwmC8Ap+fG8wjlaY/9t4uA+2qx9JNorgdrWKhHSKHokFFlWRj+qk3q+lGHS+hsXuvta44W0yD0y0sW62wrEVegz+JVmntxeYc0nDz5tVGfZe6ydlgomzj1bhfdpYe+BAwop8L+EMqKLS4iSacNjoPlHsmqHMnbibn3tBqJEq2QJjEPaiYj1iP5IaCuYBhuTKQGa+oyH3mXEif5CKdsIKBj46B0tCy0/GC7oWcUN92QdLrUyTeRJZsTWsxKpRbMliD2pBh4oyX/aXEf8+HZBrO5vQjDBCfTFQA+35Xrd3eTVEjkGkncI0SAeUAAAAVAMZSASmQ9Pi38mdm6oiVXD55Kk2rAAABAE/bA402VuCsOLg9YS0NKxugT+o4UuIjyl6b2/cMmBVWO39lWAjcsKK/zEdJbrOdt/sKsxIK1/ZIvtl92DLlMhci5c4tBjCODey4yjLhApjWgvX9D5OPp89qhah4zu509uNX7uH58Zw/m6ZOLHN28mV5KLUl7FTL2KZ583KrcWkUA0Id4ptUa9CAkcqn/gWkHMptgVwaZKlqZQtEa0V2IwUDWS097p3SlLvozw46+ucWxwTJttCHLzUmNN7w1cIv0w/OHh5IGh+wWjV9pbO0VT3/r2jxkzqksKOYAb5CYzSNRyEwp+NIKrY+aJz7myu4Unn9de4cYsuXoAB6FQ5I8AAAEBAJSmDndXJCm7G66qdu3ElsLT0Jlz/es9F27r+xrg5pZ5GjfBCRvHNo2DF4YW9MKdUQiv+ILMY8OISduTeu32nyA7dwx7z5M8b+DtasRAa1U03EfpvRQps6ovu79mbt1OE8LS9ql8trx8qyIpYmJxmzIdBQ+kzkY+9ZlaXsaU0Ssuda7xPrX4405CbnKcpvM6q6okMP86Ejjn75Cfzhv65hJkCjbiF7FZxosCRIuYbhEEKu2Z9Dgh+ZbsZ+9FETZVzKBs4fySA6dIw6zmGINd+KY6umMWyJNej2Sia70fu3XLHj2yBgN5cy8arlZ80q1Mcy763RjYGkR/FkLJ611HWIA=thisuser@thishost
复制代码
修正以后,就是如许
  1. wdaher@rocksteady:~$sshbeboptopTERMenvironmentvariablenotset.0
复制代码
实在就是在最后面加了from和command,from标明从哪一个ip连过去的,假如是用adsl拨号上彀,ip会常常变化,能够把这个参数往失落。command标明毗连乐成后要实行的命令,能够在command里限定该用户能够实行的命令(别忘了加上可实行权限),假定限定该用户只能实行rsync命令:
  1. wdaher@rocksteady:~$sshbeboptopTERMenvironmentvariablenotset.1
复制代码
$SSH_ORIGINAL_COMMAND暗示的是用户实践实行的命令
其他技能

克制Root用户登录

同意root用户登录太伤害了(固然很便利),由于能够删除任何文件,能够在’/etc/ssh/sshd_config’里设置一下。
  1. wdaher@rocksteady:~$sshbeboptopTERMenvironmentvariablenotset.2
复制代码
免暗码登录

先用ssh-keygen天生一对私钥和公钥,然后把公钥增加到远程主机的authorized_keys里就好了
  1. wdaher@rocksteady:~$sshbeboptopTERMenvironmentvariablenotset.3
复制代码
如许下次就能够间接登录了

--EOF--

看不懂man文档的人.在linux中,命令可分为系统基本命令和应用程序命令.系统基本命令是所有的unix类系统都支持的命令,走到哪都不变,只要是unix类系统上就肯定有.
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-21 08:49:41 | 只看该作者
如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。
小妖女 该用户已被删除
板凳
发表于 2015-1-25 10:36:44 | 只看该作者
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
老尸 该用户已被删除
地板
发表于 2015-1-28 09:34:55 | 只看该作者
随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。
变相怪杰 该用户已被删除
5#
发表于 2015-2-2 16:29:11 | 只看该作者
笔者五分钟后就给出了解决方法: “首先备份原文件到其他目录,然后删掉/usr/local/unispim/unispimsp.ksc,编辑 /usr/local/unispim/unispimsp.ini,最后重启动计算机
莫相离 该用户已被删除
6#
发表于 2015-2-8 01:03:43 | 只看该作者
最好先搜寻一下论坛是否有您需要的文章。这样可以获得事半功倍的效果。
飘灵儿 该用户已被删除
7#
发表于 2015-2-13 04:02:13 | 只看该作者
笔者五分钟后就给出了解决方法: “首先备份原文件到其他目录,然后删掉/usr/local/unispim/unispimsp.ksc,编辑 /usr/local/unispim/unispimsp.ini,最后重启动计算机
柔情似水 该用户已被删除
8#
发表于 2015-3-5 15:38:29 | 只看该作者
在学习linux的工程中,linux学习方法有很多种,这里是小编的学习心得,给大家拿出来分享一下。
深爱那片海 该用户已被删除
9#
发表于 2015-3-12 09:22:24 | 只看该作者
学习Linux半年了~个人认为不会的多在网上找资料网上有很多资料可以搜索到,LS那位说放手去搞。
谁可相欹 该用户已被删除
10#
发表于 2015-3-15 09:28:37 | 只看该作者
Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。
灵魂腐蚀 该用户已被删除
11#
 楼主| 发表于 2015-3-19 04:10:16 | 只看该作者
其实当你安装了一个完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现和使用它们的技巧。
12#
发表于 2015-3-23 18:15:45 | 只看该作者
任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
冷月葬花魂 该用户已被删除
13#
发表于 2015-3-27 10:06:21 | 只看该作者
其实当你安装了一个完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现和使用它们的技巧。
小魔女 该用户已被删除
14#
发表于 2015-3-31 04:24:23 | 只看该作者
再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。?
分手快乐 该用户已被删除
15#
发表于 2015-4-6 08:49:07 | 只看该作者
以前觉得Linux就跟dos一样,全是用命令窗口,相对于窗口界面来说多麻烦呀。
山那边是海 该用户已被删除
16#
发表于 2015-4-14 16:44:03 | 只看该作者
其实当你安装了一个完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现和使用它们的技巧。
飘飘悠悠 该用户已被删除
17#
发表于 2015-5-4 23:06:35 | 只看该作者
在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。
admin 该用户已被删除
18#
发表于 2015-5-6 09:40:44 | 只看该作者
下面看看一个让人无法回答的问题:“救命各位高手,向你们请教一些问题:如何在Linux下配制HTTP、FTP、Samba、DNS、DHCP、Sendmail服务器,谢谢”这样的问题。
若相依 该用户已被删除
19#
发表于 2015-5-6 10:09:40 | 只看该作者
Linux的成功就在于用最少的资源最短的时间实现了所有功能,这也是符合人类进化的,相信以后节能问题会日益突出。
因胸联盟 该用户已被删除
20#
发表于 2015-5-8 00:55:23 | 只看该作者
一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-4 19:04

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表