[转载]在CentOS 7中使用SSH登录

参考

本文参考于利用xshell密钥管理服务器远程登录+VIM dd命令操作之伤之再伤

什么是SSH

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。

在Xshell中启用SSH密钥登录

  1. 使用菜单栏-工具-新建用户密钥生成向导
    Xshell 6界面
  2. 密钥类型选择RSA密钥长度选择2048位,继续。
    新建用户密钥生产向导-01
  3. 生成公钥对界面后,为该密钥起一个自己理解的名称或保持默认。使用密码为此密钥加密,保证安全。
    新建用户密钥生产向导-02
  4. 保存生成的公钥,生成密钥完成。
    新建用户密钥生产向导-03
  5. 将上一步生成的公钥拷贝至用户home目录下的.ssh/authorized_keys。
    需要注意的是,权限需要设置为700。
    多次检查是否复制完整
    [wxd@localhost ~]mkdir .ssh
    [wxd@localhost ~]chmod 700 .ssh/
    [wxd@localhost ~]cd .ssh
    [wxd@localhost .ssh]$ vim authorized_keys
    粘贴上一步生成的密钥,保存并退出。
    [wxd@localhost .ssh]$ chmod 700 authorized_keys
    
  6. 修改文件 /etc/ssh/sshd_config,修改下列两行(将#号去掉)
     RSAAuthentication
     PubkeyAuthentication
    
  7. 使用下列命令重新启动sshd服务(需要管理员权限)
    systemctl restart sshd
    

使用SSH登录

  1. 在Xshell连接上右击,选择属性。点击左侧栏位中的用户身份验证项。方法选择Public Key,填写刚刚添加ssh密钥的用户,在用户密钥栏中选择刚刚创建的密钥。
    连接属性
  2. 点击确定,保存连接属性。
  3. 点击连接,使用SSH密钥登录系统。

在其他计算机的Xshell上登录(密钥的导出和导入)

导出

  1. 使用菜单栏-工具-用户密钥管理者
    用户密钥管理者入口
  2. 在需要导出的密钥上点击右侧的导出,保存导出的私钥文件。
    妥善保存该私钥文件。如果原公钥没有进行加密,则可能会导致任何用户可以登录

导入

  1. 使用菜单栏-工具-用户密钥管理者
    用户密钥管理者入口
  2. 在需要导出的密钥上点击右侧的导入,选择需要导入的私钥文件。

其他

再三确认公钥是否拷贝完全至authorized_keys文件中
确认authorized_keys文件权限为700

如果依旧无法正常登录,按照下列步骤关闭Linux防火墙(需要管理员权限)

  1. 永久关闭SElinux
    vi /etc/selinux/config              #修改SELinux的配置文件
    更改“SELINUX=enforcing”为 SELINUX=disabled  保存退出。
    
  2. 关闭Linux防火墙
    [root@localhost ~]# iptables -F                                #清空防火墙配置
    [root@localhost ~]# /etc/init.d/iptables save          #清空防火墙配置后,记得保存
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 7上创建一个脚本以便使用SSH登录用户是相对简单的。下面是一个简单的步骤: 1. 以root用户身份登录CentOS 7系统。 2. 打开一个文本编辑器,并创建一个名为`create_user_ssh_login.sh`的文件。 3. 在文件输入以下内容: ```bash #!/bin/bash # 设置用户用户名 USERNAME="newuser" # 创建用户 useradd $USERNAME # 设置用户的密码 PASSWORD="newpassword" echo $PASSWORD | passwd --stdin $USERNAME # 为用户创建.ssh目录并设置权限 mkdir /home/$USERNAME/.ssh chown $USERNAME:$USERNAME /home/$USERNAME/.ssh chmod 700 /home/$USERNAME/.ssh # 将公钥复制到用户的authorized_keys文件 cat /path/to/public_key.pub >> /home/$USERNAME/.ssh/authorized_keys chown $USERNAME:$USERNAME /home/$USERNAME/.ssh/authorized_keys chmod 600 /home/$USERNAME/.ssh/authorized_keys # 允许用户通过SSH登录 sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config systemctl restart sshd ``` 4. 保存并关闭文件。 5. 使用以下命令将脚本文件设置为可执行: ```bash chmod +x create_user_ssh_login.sh ``` 6. 运行脚本以创建用户和配置SSH登录: ```bash ./create_user_ssh_login.sh ``` 7. 根据需要替换`USERNAME`和`PASSWORD`变量的值,并将公钥的路径替换为你的公钥路径。 注意:脚本的默认用户名为`newuser`,默认密码为`newpassword`,请根据实际需要进行修改和替换。 这个脚本将创建一个用户,指定的用户名和密码,并为该用户创建.ssh目录,将公钥添加到authorized_keys文件,然后禁用密码身份验证,并重启动SSH服务器以使更改生效。这样,用户就可以使用SSH登录到系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值