linux秘钥登录+普通用户sudo权限

linux秘钥登录

文件准备

  1. 秘钥准备
[username@host ~]$ cd ~/.ssh
[username@host ~]$ ssh-keygen 
[username@host ~]$ cat id_rsa.pub >> authorized_keys
[username@host ~]$ chmod 600 authorized_keys
[username@host ~]$ chmod 700 ~/.ssh
  1. 下载私钥
[local@host ~]$ sudo scp -i USERNAME@HOST /usr/USERNAME/.ssh/id_rsa /LOCAL_PATH/id_rsa
  1. 尝试秘钥连接
sudo ssh USERNAME@HOST -i /LOCAL_PATH/id_rsa
  1. 同样的操作把root用户的秘钥也保留一份

系统配置

  1. 在root权限下执行
vim /etc/ssh/sshd_config
  1. 修改下面几个配置
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication no # 这个先不要禁止,等确认你的秘钥正常使用再禁止
PermitRootLogin no #禁止root登录
  1. 重启ssh使配置生效
service sshd restart

普通用户sudo权限

  1. sudo su 切换到超级用户
  2. 添加文件的写权限 chmod u+w /etc/sudoers
  3. vim /etc/sudoers 找到 root ALL=(ALL) ALL
  4. 在下一行添加 xxx ALL=(ALL) ALL xxx是你的用户名
  5. chmod u-w /etc/sudoers 撤销写权限

推荐阅读更多精彩内容