centos7修改22端口,新增管理员账号,禁止root远程连接

本文介绍如何在CentOS 7上配置SSH服务,包括修改默认的SSH端口以增加安全性,创建新的管理员账户并授予sudo权限,以及禁止root用户远程登录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

centos7修改22端口,新增管理员账号,禁止root远程连接

新增管理员账号

  1. 新建用户,这里新建一个temp_test的用户

    adduser temp_test
    

  2. 设置新用户密码

    passwd temp_test 
    

  3. 将sudoers文件的权限修改成可编辑

    chmod -v u+w /etc/sudoers
    

  4. 使用vim编辑sudoers文件

    vim /etc/sudoers
    

  5. 在sudoes文件中添加如下的内容

    找到root       ALL=(ALL)           ALL
    
    然后添加temp_user     ALL=(ALL)       ALL
    
    如需新用户使用sudo时不用输密码,把最后一个ALL改为NOPASSWD:ALL即可。
    
    

  6. 将sudoers文件的权限修改成不可编辑

    chmod -v u-w /etc/sudoers
    

修改22端口

  1. 修改配置文件

    vim /etc/ssh/sshd_config
    找到 # port
    

  2. 另起一行。如定义SSH端口号为57122,则输入Port 57122自定义端口选择建议在万位的端口(如:10000-65535之间)

    #Port 22
    Port 8467
    

  3. 按下esc键后,输入:wq进行保存

  4. 重启ssh服务

    service sshd restart 
    
    如果显示: Redirecting to /bin/systemctl restart sshd.service
    就通过 systemctl 操作
    
    1、查看 sshd 服务是否启动:
    	systemctl status sshd.service
    2、如果没有启动,则需要启动该服务:
    	systemctl start sshd.service
    3、重启 sshd 服务:
    	systemctl restart sshd.service
    4、设置服务开启自启:
    	systemctl enable sshd.service
    

禁止root远程连接

  1. 首先,我们要以root身份登录远程主机

  2. vim指令编辑ssh配置文件,如

    vim /etc/ssh/sshd_config
    

  3. 查找PermitRootLogin,把yes改为no

    UseDNS no
    AddressFamily inet
    SyslogFacility AUTHPRIV
    PermitRootLogin yes # 把这个改成no
    PasswordAuthentication yes
    

  4. 修改完配置需要重启ssh服务

    service sshd restart
    
    如果显示: Redirecting to /bin/systemctl restart sshd.service
    就通过 systemctl 操作
    
    1、查看 sshd 服务是否启动:
    	systemctl status sshd.service
    2、如果没有启动,则需要启动该服务:
    	systemctl start sshd.service
    3、重启 sshd 服务:
    	systemctl restart sshd.service
    4、设置服务开启自启:
    	systemctl enable sshd.service
    

### 如何在 Linux 系统中安装 MySQL 并设置允许远程访问 #### 安装 MySQL 对于 CentOS 7 或类似的系统,如果需要安装 MySQL 8,则可以通过以下方法完成: 首先,由于 CentOS 默认仓库可能不包含最新版本的 MySQL,因此需要手动添加官方源。执行以下命令来下载并安装 MySQL 的 Yum 源文件: ```bash wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm sudo rpm -Uvh mysql80-community-release-el7-6.noarch.rpm ``` 接着更新系统的软件包列表,并安装 MySQL 数据库服务: ```bash sudo yum update sudo yum install mysql-server ``` 这一步会自动安装 MySQL 及其依赖项[^4]。 启动 MySQL 服务并将它设为开机自启: ```bash sudo systemctl start mysqld sudo systemctl enable mysqld ``` 此时,MySQL 已经成功安装到您的系统上。 #### 设置初始密码与登录 首次安装完成后,MySQL 自动生成了一个临时 root 密码。为了安全起见,建议立即更改此密码。运行 `mysql_secure_installation` 脚本来增强安全性,其中包括修改 root 用户的密码和其他一些推荐的安全措施: ```bash sudo mysql_secure_installation ``` 按照提示输入当前的临时密码(可以在日志 `/var/log/mysqld.log` 中找到),然后设定新的强密码[^3]。 之后可以直接通过如下方式登录 MySQL 控制台: ```bash mysql -u root -p ``` 当被询问时提供刚才设置的新密码即可进入数据库管理界面[^2]。 #### 创建新用户并授权远程访问 一旦进入了 MySQL 命令行环境后,就可以继续创建一个新的数据库账户用于外部客户端连接,并赋予相应的权限范围。 假设要建立名为 'newuser' 的账号及其密码 'password' ,并且该用户可以从任意 IP 地址 ('%') 访问所有数据库中的数据表对象的话,可依次执行下面两条 SQL 语句: ```sql CREATE USER 'newuser'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; ``` 上述操作定义了一位具有完全控制权的新用户,适用于任何主机尝试发起链接的情况。当然也可以更精确地指定哪些机器能够连入或者仅给予部分功能许可,只需调整 `'%'` 部分成具体的地址形式比如 `'192.168.%'` 表示局域网内的设备[^1]。 #### 修改防火墙规则和绑定地址 最后还需要确认服务器端口开放状态以及监听网络接口参数正确无误。编辑配置文件通常位于路径 `/etc/my.cnf` 或者 `/etc/mysql/my.cnf` 找到 `[mysqld]` 小节下的 bind-address 字段将其值改为 `0.0.0.0` 来表示接受来自各个方向的数据请求而不是仅仅局限于本地回环适配器 localhost (即 127.0.0.1): ```ini bind-address=0.0.0.0 ``` 保存变更后再重启服务生效: ```bash sudo systemctl restart mysqld ``` 另外还需核查是否有启用 iptables/ufw 类型防护机制阻挡了必要的通信流量,在这种情形下记得新增例外策略放行目标端口号,默认情况下 MySQL 使用的是 TCP 协议上的 3306 端口: ```bash sudo ufw allow 3306/tcp ``` 至此整个流程结束,现在应该已经能够在其他计算机上面利用刚刚设立好的用户名字跟对应凭据实现跨平台操控本机部署的服务实例啦!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值