SSH(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络上安全地进行远程登录和数据传输
对于大多数Linux发行版,OpenSSH服务器已经预装。如果没有,可以使用包管理器进行安装。例如,在Debian和Ubuntu系统上,可以使用以下命令安装:
sudo apt update
sudo apt install openssh-server
在CentOS和RHEL系统上,可以使用以下命令安装:
sudo yum install openssh-server
编辑OpenSSH服务器的配置文件(通常位于/etc/ssh/sshd_config
),确保以下设置正确:
Port 22 # SSH监听的端口号
PermitRootLogin yes # 允许root用户通过SSH登录
PasswordAuthentication yes # 允许使用密码进行身份验证
根据实际需求进行其他配置,例如更改默认的SSH端口、禁用某些认证方法等。修改配置后,保存文件并重启SSH服务以应用更改:
sudo systemctl restart ssh
为了提高安全性,建议为服务器和客户端创建SSH密钥对。在服务器上执行以下命令生成密钥对:
ssh-keygen -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key
这将在/etc/ssh
目录下生成ssh_host_rsa_key
(私钥)和ssh_host_rsa_key.pub
(公钥)两个文件。确保将公钥添加到客户端的~/.ssh/authorized_keys
文件中,以便进行无密码登录。
如果服务器上启用了防火墙,需要允许SSH连接。例如,在Debian和Ubuntu系统上,可以使用以下命令允许SSH连接:
sudo ufw allow 22/tcp
在CentOS和RHEL系统上,可以使用以下命令允许SSH连接:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
至此,SSH服务器已经安装并配置完成。现在,客户端可以使用ssh
命令连接到服务器,例如:
ssh user@server_ip_address
如果启用了密钥认证,客户端将无需输入密码即可登录。