非root用户ssh连接linux服务器

一、sshd相关配置

vim /etc/ssh/sshd_config

Port 22          #默认端口,可修改
PubkeyAuthentication yes    #开启ssh密钥连接
AuthorizedKeysFile  .ssh/authorized_keys   #公钥存放位置
PasswordAuthentication yes    #是否允许用户账号密码登录

配置完后重载sshd
service sshd reload

二、创建用户、配置密钥

#添加用户分组
groupadd test   

 #添加用户
useradd -g test test  

#添加密钥存放文件
cd /home/test
mkdir .ssh

#创建公钥文件
cd .ssh
touch authorized_keys

#生成密钥对
ssh-keygen -t rsa

Enter file in which to save the key (/root/.ssh/id_rsa): /home/test/.ssh/id_rsa   #密钥存放位置
Enter passphrase (empty for no passphrase):      #配置密码
Enter same passphrase again:    #重复密码

#写入
cat id_rsa.pub >authorized_keys

#修改权限
chmod 600 authorized_keys
chmod 700 /home/test/.ssh
chown -R test:test /home/test/.ssh

#下载用户私钥
sz id_rsa

用Xshell客户端访问
输入命令 ssh -p22 test@192.168.13.131
导入下载下来的私钥

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当Windows连接Linux服务器时,如果root用户遇到"access denied"(拒绝访问)的问题,有几种可能的原因和解决方法。 首先,服务器可能没有正确配置root用户的权限。在Linux服务器上,root是最高权限用户,其他用户的访问权限需要通过修改用户组和用户权限文件来设定。管理员可以检查服务器root用户的权限设置,确保其具有访问所需目录和文件的权限。 其次,可能是由于SELinux(安全增强型 Linux)或防火墙设置引起的。SELinux是一种访问控制机制,可以限制root用户的访问权限。管理员可以通过修改SELinux策略或临时禁用SELinux来解决此问题。另外,防火墙可能会阻止Windows客户端与Linux服务器之间的连接。管理员可以查看服务器上的防火墙设置,并相应地更改配置,以允许Windows客户端连接。 此外,可能是由于身份验证问题导致的拒绝访问。管理员可以检查Linux服务器上的用户凭证和密码,确保root用户的凭证正确。如果凭证被更改或失效,可以重新设置root用户的密码来解决此问题。 最后,Windows客户端可能没有正确的登录凭据。在尝试连接Linux服务器时,确保输入的用户名和密码正确,并选择正确的身份验证机制(如SSH密钥、用户名/密码等)。 总之,当Windows连接Linux服务器时,如果root用户遇到"access denied"问题,需要管理员检查和调整服务器上的root用户权限、SELinux和防火墙设置,并确保Windows客户端的正确登录凭据和身份验证方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值