目录
一、如何连接阿里云服务器?
1. 如果你已经有了私钥, 那么一条命令搞定:
2.如果还没有生成过密钥,那么这么做:
二、将项目部署到云服务器
附SCP命令的参数详解:
本文仅供传统的手动部署参考,如果是自动化部署,请忽略。
一、如何连接阿里云服务器?
1. 如果你已经有了私钥, 那么一条命令搞定:
ssh -i ~/.ssh/CreateChain/create-chain.root root@192.168.43.1
解析: 其中ssh是连接命令,其参数 -i 表示的是: identity_file
~/.ssh/CreateChain/create-chain.root则表示我本机存放密钥的路径;
root@192.168.43.1,root表示登录的用户,应该跟密钥对应, 总不能拿developer的密钥登录root账号吧,
192.168.43.1则表示你服务器的IP。
如果界面显示如下,则登录成功:
如果你需要用到端口号,请使用这条命令:
ssh -p 端口号 用户名@ip地址
2.如果还没有生成过密钥,那么这么做:
(1)创建公钥/私钥对ssh-keygen
$ssh-keygen
Generating public/private rsa key pair.
...
$ ls
id_rsa id_rsa.pub known_hosts
(2)将id_rsa.pub上传到要远程登录到的机器上
$scp id_rsa.pub root@142.93.198.56:/tmp
root@192.168.43.1's password:
id_rsa.pub
(3)将公钥添加到authorized_keys中
首先,远程登录到目标机器,在远程进行操作。
$ ssh root@192.168.43.1
...
root@ubuntu-s-1vcpu-1gb-nyc1-01:~# cd /tmp/
root@ubuntu-s-1vcpu-1gb-nyc1-01:/tmp# cat id_rsa.pub >> ~/.ssh/authorized_keys
(4) 更改文件权限
root@ubuntu-s-1vcpu-1gb-nyc1-01:/tmp# chmod 600 ~/.ssh/authorized_keys
(5)查看配置
查看和更改配置文件:/etc/ssh/sshd_config
root@ubuntu-s-1vcpu-1gb-sfo2-01:~# vim /etc/ssh/sshd_config
PasswordAuthentication yes # 口令登录
RSAAuthentication yes # RSA认证
PubkeyAuthentication yes # 公钥登录
然后重启sshd服务。如果不想使用口令登录,可以修改PasswordAuthentication 为no。不过还是建议保留这项配置,如果一不下心执行了一下ssh-keygen命令,那这台远程服务器就真的离你有点远了。
(6) 使用ssh公钥登录
ssh -i ~/.ssh/CreateChain/create-chain.root root@192.168.43.1
简易方法:
搭建了Hadoop环境的话, 可以在操作完上述步骤一之后,再使用ssh-copy-id命令。
ssh-copy-id root@192.168.43.1
然后可以直接使用公钥登录,无需再输入密码。
ssh root@192.168.43.1
二、将项目部署到云服务器
语法:scp [参数] [原路径] [目标路径]
scp -i ~/.ssh/CreateChain/create-chain.root -r * root@192.168.43.1:/usr/local/www/customizYTH/
命令解析:
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令。可以跨服务器,scp传输是加密的,当你服务器硬盘变为只读read only system时,用scp可以帮你把文件移出来。
-i
~/.ssh/CreateChain/create-chain.root
-r
* 则表示当前目录下的任意文件
root@192.168.43.1:/usr/local/www/customizYTH/
以上所有文件路径,仅供参考。
附SCP命令的参数详解: