目录
ssh
本文的环境是 windows terminal 下的ssh工具,有一些关于linux的操作基本没有试验过,只是摘抄其他人的文章。之前一直使用putty, 后来windows官方推出了 windows terminal 工具后果断转。
(1)常规登陆
ssh root@119.28.57.89
注意:腾讯云的ubuntu操作系统默认关闭root用户登录。需要在/etc/ssh/sshd_config
文件中设定(后文有步骤)
ssh ubuntu@119.28.57.89
(2) 免密码登陆
如果经常登录服务器,我们可以通过设置,只需要服务器主机名自动登录。
本地生成一对公钥密钥
ssh-keygen -t rsa
过程中会提示要输入生成的目录,提示信息括号里边有,直接回车就行,默认放到当前用户的~/.ssh目录下。会生成:id_rsa(密钥) id_rsa.pub(公钥)
如果有多台服务器最好生成各自的公钥密钥
把公钥放到服务器上
scp .ssh/id_rsa.pub ubuntu@119.28.57.89:~/.ssh/authorized_keys
如果scp提示
No such file or directory
,那么在服务器的当前用户下创建.ssh
文件夹即可或者:【该方法仅限Linux 操作系统】【windows terminal 默认没有安装 ssh-copy-id】
ssh-copy-id .ssh/id_rsa.pub ubuntu@119.28.57.89
ssh-copy-id这个命令会自动识别服务器~/.ssh/authorized_keys,将公钥复制进去。
在服务器设置一下自动检验的信息
打开/etc/ssh/sshd_config这个文件
sudo vi /etc/ssh/sshd_config
去掉下面几行前面“#”注释【如果没有就直接加上去即可】
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile /root/.ssh/authorized_keys
PermitRootLogin yes
重新加载ssh配置文件
service sshd reload
本地保存ssh登陆主机的相关信息
在windows用户根目录下的.ssh文件内创建 config 文件,保存ssh登陆主机的相关信息,这样就省得输入了。
创建后打开 config 文件后输入:
Host hk
HostName 119.28.57.89
User ubuntu
Port 22
IdentityFile .ssh/id_rsa
登录
ssh hk
(3) 从本地上传文件到服务器 从服务器下载文件到本地
scp 本地文件路径 服务器帐号名@服务器的ip地址:想要保存的路径 #从本地到服务器
scp 服务器帐号名@服务器的ip地址:文件路径 本地保存路径 #从服务器到本地
自动脚本
下面这个 python 自动脚本可以帮助你完成服务器上面的配置
wget https://raw.githubusercontent.com/jtxiaocom/pyscript/master/ssh-init.py
python3 ssh-init.py