centos7配置 SSH 服务,使用端口 2201,当“LeEDU”用户访问时免秘钥登录并拥有 root权限
时间: 2024-10-10 21:07:53 浏览: 29
Centos7.x部署SFTP服务+和ssh不同端口访问
在 CentOS 7 中设置 SSH 服务以使用非标准端口 2201,同时允许 "LeEDU" 用户免密钥登录并具有 root 权限,可以按照以下步骤操作:
1. **修改 SSH 配置文件**:
打开 SSH 的配置文件 `/etc/ssh/sshd_config`,使用文本编辑器如 `vi` 或 `nano`:
```shell
sudo vi /etc/ssh/sshd_config
```
然后找到 `Port` 行,在其后添加 `2201`,使得它看起来像这样:
```
Port 2201
```
2. **启用非标准端口**:
将 `ListenAddress` 设置为所有 IP 地址,以便从任何地方连接:
```
ListenAddress 0.0.0.0
```
3. **设置密码认证策略**:
如果你想继续保留密码认证,可以暂时保留默认配置。但为了允许无密码登录,通常会禁用密码认证,只启用公钥认证。将下面两行注释掉:
```
#PasswordAuthentication yes
#ChallengeResponseAuthentication no
```
4. **设置免密钥登录**:
生成一个新的 RSA 公钥对,并将其添加到 `LeEDU` 用户的 `.ssh/authorized_keys` 文件。如果该文件不存在,首先需要创建:
```shell
ssh-keygen -t rsa -f ~/.ssh/leedu_rsa -b 4096 -C "LeEDU"
cat ~/.ssh/id_rsa.pub >> ~/.ssh/leedu_rsa.pub
```
5. **更改 LeEDU 用户权限**:
使用 `visudo` 命令编辑 sudoers 文件,允许 "LeEDU" 用户以 root 权限运行命令(假设你信任这个用户):
```shell
sudo visudo
# 添加这一行,替换 `<username>` 为 "LeEDU"
LeEDU ALL=(ALL) NOPASSWD:ALL
```
6. **重启 SSH 服务**:
完成上述配置后,重启 SSH 服务让新设置生效:
```shell
systemctl restart sshd
```
7. **验证连接**:
从其他机器尝试连接到新的端口,使用 `-p` 参数指定端口:
```shell
ssh -p 2201 LeEDU@服务器IP地址
```
阅读全文