Ubtuntu下安装配置SSH详解
在Ubuntu下安装SSH并配置远程连接,你可以遵循以下步骤:
安装OpenSSH Serve
-
sudo apt update
-
安装OpenSSH Server: 使用以下命令安装OpenSSH服务器软件包:
sudo apt install openssh-server
安装过程可能会要求你确认操作,按
Y
然后回车继续。
配置SSH
安装完成后,默认配置通常足够用于基本的远程连接,但如果需要修改配置,可以编辑SSH服务器的配置文件 /etc/ssh/sshd_config
:
sudo nano /etc/ssh/sshd_config
配置完成后需要重启ssh服务
sudo systemctl restart ssh
这里是一些常见的配置项:
- 允许或禁止root登录:找到
PermitRootLogin
,你可以将其设置为yes
允许root登录(不推荐,出于安全考虑),或设置为no
禁止root登录。更安全的做法是使用普通用户登录后再用sudo
或su
切换到root。 - 监听端口:默认SSH监听端口是22,你可以通过修改
Port
项来更改。 - 公钥认证:为了增强安全性,可以启用公钥认证。取消
PasswordAuthentication no
行前的注释(默认是启用密码认证),并确保PubkeyAuthentication yes
已启用。
开放防火墙端口
如果你的系统启用了防火墙(如UFW),需要开放SSH端口(默认是22)以允许远程连接:
sudo ufw allow 22
测试SSH服务状态
确认SSH服务是否正在运行:
sudo systemctl status ssh
如果SSH服务未启动,可以使用以下命令启动它:
sudo systemctl start ssh
为了确保SSH服务在系统重启后自动启动,可以执行:
sudo systemctl enable ssh
配置客户端连接
- 在另一台计算机上,你可以使用SSH客户端(如PuTTY或终端自带的ssh命令)来连接到你的Ubuntu机器。格式通常是:
ssh 用户名@你的Ubuntu服务器IP地址
- 如果你设置了非默认端口或使用了公钥认证,连接时需要相应地添加
-p 端口号
或-i 私钥文件路径
参数。
完成以上步骤后,你应该能够成功地从远程计算机通过SSH连接到你的Ubuntu服务器了。
允许root登录
在打开的配置文件/etc/ssh/sshd_config
,找到以下行并确保它被设置为 yes
:
PermitRootLogin yes
PermitRootLogin 有以下配置项:
- prohibit-password: 禁止使用密码认证,但允许其他认证方法(例如基于密钥的认证)。
- yes: 允许 root 用户通过任何认证方式登录(包括密码和密钥)。
- no: 完全禁止 root 用户通过 SSH 登录。
- without-password: 类似于 prohibit-password,不允许使用密码认证,但允许其他认证方式。
- forced-commands-only: 只允许执行由管理员在公钥中指定的命令(通常用于自动化任务)。
- other settings: 还有一些其他的设置选项,具体可以参考 sshd_config 的文档。
- 修改配置文件后,需要重启SSH服务以使更改生效。
sudo systemctl restart sshd