ssh 使用和配置
1 Ubuntu 安装 ssh 命令
|
|
2 ssh 使用和配置
2.1 ssh 配置
- 生成 ssh 密钥和公钥
|
|
其中在 ~/.ssh
文件夹下,id_rsa
是私钥,id_rsa.pub
是公钥。
- 将公钥放在服务器上
- 测试 ssh 连接
|
|
连接成功会出现 Welcome to Gerrit Code Review 字样!
2.2 ssh 和 sshd
/etc/ssh/ssh_config
和 /etc/ssh/sshd_config
都是 ssh
的配置文件,区别在于 ssh_config
是客户端的配置文件,sshd_config
是服务端的配置文件。
/etc/ssh/sshd_config
部分文件内容
|
|
2.3 ssh 服务端控制命令
|
|
2.4 ssh config 配置文件
修改 ~/.ssh/config
文件设置别名
|
|
直接输入 ssh Alias
命令就可以直接连接了!十分方便!
2.5 ssh 免密登录
将 ssh
生成的公钥拷贝到目标机的 ~/.ssh/authorized_keys
中,就可以实现免密登录了。ssh
连接连密码都省了,偷懒小能手!
|
|
3 传输文件
3.1 scp 传输文件
scp
是基于 ssh
登陆进行安全的远程文件拷贝命令,所以可以通过网络传输文件。
|
|
4 跳板机
4.1 ssh 通过跳板机直连原本访问不到的机器
~/.ssh/config
中配置如下:
|
|
通过命令直接登录,无需先到跳板机 gateway
。
|
|
5 ssh 图形化连接
5.1 X11 是什么
Linux 本身是没有图形化界面的,所谓的图形化界面系统只不过中 Linux 下的应用程序。这一点和 Windows 不一样。Windows 从 Windows 95 开始,图形界面就直接在系统内核中实现了,是操作系统不可或缺的一部分。Linux 的图形化界面,底层都是基于 X 协议。
X11 是 X 协议的某个版本,,应用程序通过 X 协议告诉服务器端需要显示什么图形,然后服务器端通过 X server 来显示。
但是在远程连接时,服务器是本地的机器,客户端是远程服务器上的程序。因为我们是想要在本地显示远程服务器上的应用结果。
5.2 Mac 下的 X11
通过安装 XQuartz,Mac 就可以做一个 X11 server,这样在 Mac 上就能显示远程服务器的应用程序。当 XQuartz 在运行时,会显示图标。
通过 xclock
命令测试,如果一切顺利,应该在 Mac 上会弹出界面。
|
|
5.3 VSCode 下的 Remote X11
能够做到远程执行命令显示图形界面并调试,还是很诱人的。
这个插件就可以在 vscode 终端中使用 X11 forwarding 了。
5.4 Windows 下的 X11
Windows 下有一个终端 MobaXterm
,自带 X server。