mac,windows使用终端连接Linux服务器

0. 开启服务器远程密码登录

# 在服务器root用户下
vim /etc/ssh/sshd_config

修改这两项并保存:
PermitRootLogin yes
PasswordAuthentication yes

重启ssh服务:
service sshd restart  
# 或者
/etc/initd.d/sshd restart

1. 使用命令

ssh root@10.152.66.168

提示输入秘密,输入服务器连接密码,连接成功!

如果忘记密码,可以在:云服务器ECS?实例?更多?密码/密钥里修改密码。

2. 使用快捷命令

# 进入.ssh目录
cd .ssh

# 创建config配置文件
vim config

# 配置信息
Host fxx
    HostName 10.152.66.168
    User root

现在就可以使用ssh fxx快捷命令登录了。
提示输入秘密,输入服务器连接密码,连接成功!

3. 使用密钥连接服务器(推荐)

通过使用证书登录可以不用输入密码,方便快捷。

  1. 生成密钥文件

    ssh-keygen -t rsa -b 2048 -v -f dataAutoProcess
    

    注: 其连接方式与Git的连接方式基本一致,如果你之前Git生成过用于认证的公钥、密钥,切使用默认路径~/.ssh/id_rsa,注意切换切换路径、名字,以免覆盖。
    -f 指定文件名,未指定路径的情况下默认是当前路径生成。如上为在.ssh目录下生成密钥名为dataAutoProcess,公钥名为dataAutoProcess.pub。
    剩下的一路回车就OK。

  2. 进入到你生成公钥的目录,将公钥推送到远程服务器

    ssh-copy-id -i dataAutoProcess.pub root@10.152.66.168
    

    将dataAutoProcess.pub换成你的公钥名字,root@10.152.66.168分别换成你的服务器用户名和地址,然后输入密码即可。

  3. 测试

    # 将你的密钥修改名字,当然不改也行
    mv dataAutoProcess fxx.pem 
    
    # 使用证书免密登录
    ssh -i fxx.pem root@10.152.66.168
    

    或者:
    配置config,使用快捷命令登录?推荐使用

    # 修改之前配置的.ssh/config文件,添加生成的证书,如下:
    Host fxx
        HostName 10.152.66.168
        User root
        IdentityFile /Users/fxx/.ssh/fxx.pem
    
     #使用快捷命令一键登录
     ssh fxx
     连接成功!
    
  4. 取消密码登录

    当你测试你的密钥可以登录后,一定要确定可以连接,可以取消密码登录方式。

    vim /etc/ssh/sshd_config
    

    进入vim编辑器后按/进入查找模式,然后粘贴PasswordAuthentication,回车后定位到此处,按i进入insert 模式,放开注释,并修改为no。

    # 修改前:
    # PasswordAuthentication yes
    # 修改后:
    PasswordAuthentication no
    
    # 重启ssh:
    sudo service ssh restart
    

4. 保持连接,防止长时间未操作而断开

通过发送“心跳”信号来维持持续连接,有如下4种方式,任意一种都行

  1. 服务端修改配置
    在/etc/ssh/sshd_config文件最后增加两个参数后重启ssh

    # Server 每隔 60 秒发送一次请求给 Client,然后 Client响应,从而保持连接
    ClientAliveInterval 60
    # Server发出请求后,客户端没有响应得次数达到10,就自动断开连接
    ClientAliveCountMax 10
    

    SSH Server 每 60 秒就会自动发送一个信号给 Client,而等待 Client 回应,如果客户端没有回应,会记录下来直到记录数超过 ClientAliveCountMax 的值时,才会断开连接。

  2. 客户端修改配置
    在/etc/ssh/ssh_config文件最后增加下面的参数

    TCPKeepAlive yes
    # Client每隔 60 秒发送一次请求给 Server,然后 Server响应,从而保持连接
    ServerAliveInterval 60
    # Client发出请求后,服务器端没有响应得次数达到3,就自动断开连接
    ServerAliveCountMax 3
    
  3. 客户端单独修改某一台连接
    在~/ssh/config的配置中增加参数

    Host fxx
        HostName <your server ip>
        User root
        IdentityFile /Users/fxx/.ssh/id_rsa
        # 以下是需添加的配置
        ServerAliveInterval 60
        ServerAliveCountMax 3
    
  4. 直接用命令

    ssh -o TCPKeepAlive=yes -o ServerAliveInterval=300 -o ServerAliveCountMax=3 fxx
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值