如果你已经在IT圈内混久了, 应该对 SSH 这个了不起的工具及其安全特性有所耳闻吧. 本教程可以让你在短时间内掌握通过 SSH 安全便利地连接到远程计算机的技术.
如果你对 SSH 还没什么概念, 可以先访问 维基百科 进行了解.
提高Ubuntu的SSH登陆认证速度的办法
开启SSH服务让Android手机远程访问 Ubuntu 14.04
如何为Linux系统中的SSH添加双重认证
在 Linux 中为非 SSH 用户配置 SFTP 环境
基本用法最简单的 SSH 命令只需要指定用户名和主机名参数即可. 主机名可以是 IP 地址或者域名. 命令格式如下:
$ ssh user@hostname
比如要在我的局域网内登录一个树莓派系统, 只需要简单的在命令行输入如下命令:
$ ssh pi@10.42.0.47
命令中的 pi 和 10.42.0.47 分别是我的树莓派系统的用户名和局域网 IP 地址. 实际使用时主机名需要改成你的目标主机(局域网内或者远程)的 IP 地址.
如果你能够成功登陆, 那么下面的内容对你来说就轻而易举了.
使用其他端口SSH 默认连接到目标主机的 22 端口上,但是由于各种原因你可能需要连接到其他端口.
$ ssh -p 10022 user@hostname
如上命令就是通过添加参数 -p 指定端口号为 10022.
远程执行命令有时在远程主机执行一条命令并显示到本地, 然后继续本地工作是很方便的. SSH 就能满足这个需求:
$ ssh pi@10.42.0.47 ls -l
比如上面这个命令就会枚举远程主机的主目录内容并在本地显示. 是不是很酷? 你可以尝试下其他命令看看.
挂载远程文件系统另外一个很赞的基于 SSH 的工具叫 sshfs. sshfs 可以让你在本地直接挂载远程主机的文件系统.
$ sshfs -o idmap=user user@hostname:/home/user ~/Remote
比如下面这条命令:
$ sshfs -o idmap=user pi@10.42.0.47:/home/pi ~/Pi
该命令就将远程主机 pi 用户的主目录挂载到本地主目录下的 Pi 文件夹.
要详细了解可以参考 sshfs 教程.
X11 图形界面假如现在你想要在远程主机运行一个图形界面的程序, SSH 已经帮你想到了! 用前面提到的 SSH 基本命令加上参数 -X 连接到远程主机即可开启 X11 转发功能. 登录后你可能觉得没什么差别, 但是当你运行一个图形界面程序后就会发现其中的不同的.
$ ssh -X pi@10.42.0.47
$ pistore
如果你想在运行图形界面程序的同时做些别的事情, 只需要简单地在命令末尾加一个 & 符号.
$ pistore&