1. ssh客户端简单使用
ssh [-p port] user@remote
- user : 远程机器上的用户名, 如果不指定的话默认为当前用户
- remote : 远程机器的地址, 可以是
IP/域名
- port : SSH Server监听的端口, 如果不指定, 就为默认值
22
提示:
- 使用
exit
退出当前用户的登录- 如果在
Windows
系统中, 可以安装PuTTY
或者XShell
客户端软件即可提示:
- 在工作共, SSH服务器的端口号很有可能
不是22
, 如果遇到这种情况就需要使用-p
选项, 指定正确的端口号, 否则无法正常连接到服务器
2. scp 远程拷贝命令使用
scp : secure copy
, 一个在Linux下用来进行远程拷贝文件
的命令
# 把本地当前目录下的文件 复制到远程 用户目录下的Desktop
# 注意: `:` 后面的路径如果不是绝对路径, 则以用户的home目录作为参照路径
scp -P port fileName user@remote:Desktop
# 把远程 home目录下的 Desktop/file 文件 复制到 本地当前目录下的 file
scp -P port user@remote:Desktop/file file
# 加上 -r 选项可以传送文件夹
# 把当前目录下的 demo文件夹 复制到 远程 home目录下的 Desktop
scp -r demo user@remote:Desktop
# 把远程 home目录下的Desktop 复制到当前目录下的 demo 文件夹
scp -r user@remote:Desktop demo
选项 | 含义 |
---|---|
-r | 若给出的源文件是目录文件, 则scp将递归复制该目录下的所有子目录和文件, 目标文件必须为一个目录名 |
-P | 若远程SSH服务器的端口不是22, 需要使用大写字母-P选项指定端口 |
example:
$ scp -P 8088 -r [email protected]:data demo
解释:
-P : 指定端口
8088 : 端口号
-r : 复制的为文件夹
clearlight : user
217.32.211.58:data : remote地址:当前用户目录下的data文件夹
demo : 复制到当前目录下的demo文件夹中
3. SSH高级教程
- 免密码登录
- 配置别名
提示: 有关SSH配置信息都保存在用户家目录下的
.ssh
目录下
3.1 免密码登录
步骤:
- 配置公钥
- 执行
ssh-keygen
即可生成SSH钥匙, 一路回车即可
- 执行
- 上传公钥到服务器
- 执行
ssh-copy-id -p port user@remote
, 可以让远程服务器记住我们的公钥
- 执行
3.2 配置别名
步骤:
-
在
.ssh
文件夹中新建config文件, 然后写入下面内容Host 别名
HostName ip地址/域名
User 用户名
Port 22
-
此时, 就可用
ssh 别名
实现远程登录,scp
同样可以使用.lixiaoyi@T470p:~$ cd .ssh lixiaoyi@T470p:~/.ssh$ ls id_rsa id_rsa.pub known_hosts lixiaoyi@T470p:~/.ssh$ touch config lixiaoyi@T470p:~/.ssh$ vim config lixiaoyi@T470p:~/.ssh$ cat config Host clearlight HostName www.clearlight.top User clearlight port 22 lixiaoyi@T470p:~/.ssh$ ssh clearlight Last login: Sun Jan 12 13:10:07 2020 from 106.8.66.188 Welcome to Alibaba Cloud Elastic Compute Service ! [clearlight@iz2ze7n4ftkcqan59957w2z ~]$