用Tabby服务器远程SSH登录

1. 生成本地密钥对

用Tabby打开PowerShell,运行ssh-keygen

# 建立密钥对,制定格式为rsa
ssh-keygen -t rsa
# Generating public/private rsa key pair.
# Enter file in which to save the key (/root/.ssh/id_rsa): <== 按 Enter
# Created directory '/root/.ssh'.
# Enter passphrase (empty for no passphrase): <== 输入密钥锁码,或直接按 Enter 留空
# Enter same passphrase again: <== 再输入一遍密钥锁码
# Your identification has been saved in /root/.ssh/id_rsa. <== 私钥
# Your public key has been saved in /root/.ssh/id_rsa.pub. <== 公钥
# The key fingerprint is:
# 0f:d3:e7:1a:1c:bd:5c:03:f1:19:f1:22:df:9b:cc:08 root@host

为本地的 私钥给定正确的权限,如果是ssh-keygen生成的,就可以不用管,如果是从别处拷贝来的,需要修改权限

# 进入用户目录的.ssh目录
cd ~/.ssh
# 对id_rsa设置600权限
chmod 600 id_rsa
对.ssh目录设置700权限
chmod 700 .

2. 远程服务器授权

2.1. 查看ssh服务的状态

# 进入root账户,其他操作相似不赘述
sudo -i 
service ssh status

反馈 Loaded: error (Reason: No such file or directory),说名没有安装ssh服务,按照第二步:安装ssh服务

反馈Active: inactive (dead)说明已经安装了ssh服务,但是没有开启。按照第三步:开启ssh服务。

反馈Active: active (running) since … 说明ssh服务已经正在运行。

2.2. 安装ssh服务

sudo apt-get install ssh

2.3. 开启ssh服务

sudo service sshd start

执行完命令后,用第一步:查看ssh服务状态的命令,确认ssh已经运行

3. 添加公钥到授权文件中

在远程服务器中添加客户机生成的公钥

sudo -i
cd ~/.ssh
vim authorized_keys

将客户机生成的id_rsa.pub文件内容拷贝到打开的authorized_keys中,并按esc, ZZ保存退出

3.1. 修改ssh配置文件

vim /etc/ssh/sshd_config

找到“PasswordAuthentication yes”和“PermitRootLogin yes”两行,取消注释,或者自行添加该配置也可以

PermitRootLogin yes
PasswordAuthentication yes
PubkeyAuthentication yes
RSAAuthentication yes
AuthorizedKeysFile /root/.ssh/authorized_keys

重启ssh服务,使配置生效

sudo service ssh restart

4. 本地远程登录

4.1. PowerShell登录

确保本地也开启ssh服务,然后输入以下命令即可远程登录

ssh root@XXXX.XX.XX.XXX
# 本文中的XXXX.XX.XX.XXX都应替换为远程服务器的公网IP

4.2. Docker Linux登录

docker pull ubuntu
docker images
docker run -itd --name ubuntu-user ubuntu
# ubuntu-user是为容器取得别名,可以自己取
docker ps
docker exec -ti ubuntu-user /bin/bash

进入docker镜像中,需要重复第1步的“生成本地密钥对”和“安装本地SSH服务”
之后就可以通过以下命令来登录了

docker exec -ti ubuntu-user /bin/bash -c "ssh root@XXXX.XX.XX.XXX"

4.3. PowerShell 设置命令别名

vim $PROFILE

在文件中输入:

function dockerlogin {docker exec -ti ubuntu-user /bin/bash -c "ssh root@XXXX.XX.XX.XXX"}        
function ssh-user {ssh root@XXXX.XX.XX.XXX}

按esc, ZZ保存退出
以管理员身份打开PowerShell执行命令:

Set-ExecutionPolicy RemoteSigned

重启PowerShell,就可以通过命令别名来远程SSH登录了

# PowerShell 登录
ssh-user
# docker 中的 Linux登录
dockerlogin 

4.4. Tabby登录

4.4.1. 下载安装Tabby作为客户端

下载Tabby的windows安装文件,可以到官网或者github上下载,无法下载的话也可以使用已经下载好的免安装版本:Tabby免安装程序

4.4.2. 配置Tabby的SSH登录

打开Tabby的配置和连接→新配置→SSH连接
指定名称(随意取,如Tencent_Cloud),主机地址(如XXXX.XX.XX.XXX),用户名(root),身份验证方法(秘钥),载入准备好的私钥文件(file://C:\Users\xxx.ssh\id_rsa)。
之后通过“配置和连接”选择“Tencent_Cloud"的SSH连接,就可以登录了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值