温馨提示×

centos如何设置ssh远程登录

小樊
60
2025-06-16 05:41:27
栏目: 智能运维

在CentOS系统中设置SSH远程登录,可以按照以下步骤进行:

1. 安装OpenSSH服务器

首先,确保你的CentOS系统上已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:

sudo yum install openssh-server

2. 启动并启用SSH服务

安装完成后,启动SSH服务并设置为开机自启:

sudo systemctl start sshd
sudo systemctl enable sshd

3. 配置防火墙

确保防火墙允许SSH连接。CentOS 7及以上版本使用firewalld,CentOS 6使用iptables

CentOS 7及以上版本

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

CentOS 6

sudo service iptables save
sudo service iptables restart

4. 配置SSH服务器

编辑SSH配置文件/etc/ssh/sshd_config,可以根据需要进行一些自定义设置。

sudo vi /etc/ssh/sshd_config

常见的配置项包括:

  • Port:更改SSH默认端口(例如改为2222)。
  • PermitRootLogin:是否允许root用户登录(建议设置为no)。
  • PasswordAuthentication:是否允许密码认证(建议设置为yes,也可以使用密钥认证)。
  • AllowUsers:指定允许登录的用户。

修改完成后,保存并退出编辑器。

5. 重启SSH服务

使配置生效:

sudo systemctl restart sshd

6. 配置SELinux(可选)

如果启用了SELinux,可能需要配置SELinux策略以允许SSH连接。

sudo setsebool -P ssh_sysadm_login on
sudo setsebool -P ssh_keysign on

7. 测试SSH连接

从另一台机器上测试SSH连接:

ssh username@your_server_ip

如果一切配置正确,你应该能够成功登录到CentOS服务器。

8. 配置密钥认证(可选)

为了提高安全性,可以使用SSH密钥认证代替密码认证。

生成密钥对

在本地机器上生成SSH密钥对:

ssh-keygen -t rsa -b 4096

按照提示操作,生成的密钥对默认存储在~/.ssh/id_rsa~/.ssh/id_rsa.pub

将公钥复制到服务器

将公钥复制到服务器的~/.ssh/authorized_keys文件中:

ssh-copy-id username@your_server_ip

输入密码后,公钥将被添加到服务器的授权密钥列表中。

测试密钥认证

再次尝试SSH连接,这次不需要输入密码:

ssh username@your_server_ip

通过以上步骤,你就可以在CentOS系统上设置SSH远程登录了。

0