Linux开启SSH

本文提供了一步一步的指南,详细解释了如何在Arch Linux上安装和配置openssh服务,包括自动启动、允许特定IP访问、配置root账号登录权限等关键步骤。

#pacman -S openssh #安装openssh

安装完成后在/etc/rc.conf的最底部DAEMONS后添加sshd让系统启动时自动启动openssh

DAEMONS=(syslog-ng network netfs crond sshd)

也可手动启动openssl,执行

#/etc/inin.d/sshd start

默认情况下其它电脑是不能通过ssh来访问archlinux的,需要修改两个文件来实现:
/etc/hosts.deny   #默认拒绝所有连接
/etc/hosts.allow #默认没有任何允许连接,需要手动添加,例:

#vi /etc/hosts.allow
sshd:192.168.1.100:ALLOW #允许192.168.1.100的电脑使用ssh来访问这台电脑.

最后重启openssh
#/etc/inin.d/sshd restart

最后openssh默认也是不允许root帐户直接登录的,需要修改/etc/ssh/sshd_config文件
将PermitRootLogin yes前的#号去掉就可以了. //这个还没实现过。

<think>我们正在回答用户关于“Linux系统开启SSH的方法”的问题,需要参考用户提供的引用内容(引用[1]和引用[2])。同时,我们要注意用户之前的问题是关于SSH连接和查询root用户的,但当前问题明确要求开启SSH的方法。 根据引用[1]的内容,开启SSH的步骤包括: 1. 确保虚拟机与宿主机的连通性(获取虚拟机IP并测试连通性)。 2. 安装SSH服务端(使用命令:sudo apt install openssh-server)。 3. 使用SSH工具连接(如Xshell,设置主机IP、端口、协议及登录账号密码)。 引用[2]提到了修改SSH配置文件(通常为/etc/ssh/sshd_config)的一些配置项,例如修改默认端口、禁用密码认证并启用密钥认证等。 因此,我们可以将开启SSH服务的步骤总结如下: ### 步骤1:检查网络连通性 在开启SSH服务前,确保服务器(虚拟机或物理机)与客户端之间的网络是连通的。 - 在服务器上使用`ip addr`(或`ifconfig`)查看本机IP地址[^1]。 - 在客户端使用`ping <服务器IP>`测试连通性。 ### 步骤2:安装SSH服务端 根据Linux发行版选择安装命令: - **Ubuntu/Debian**: ```bash sudo apt update && sudo apt install openssh-server -y ``` - **CentOS/RHEL**: ```bash sudo yum install openssh-server -y ``` - **Fedora**: ```bash sudo dnf install openssh-server -y ``` ### 步骤3:启动SSH服务并设置开机自启 - 启动SSH服务: ```bash sudo systemctl start sshd # Ubuntu/Debian 服务名可能为sshsshd ``` 或 ```bash sudo systemctl start sshd # CentOS/RHEL/Fedora ``` - 设置开机自启: ```bash sudo systemctl enable sshd ``` ### 步骤4:检查SSH服务状态 ```bash sudo systemctl status sshd ``` 如果状态显示`active (running)`,则表示SSH服务已成功启动。 ### 步骤5:配置SSH(可选) 编辑SSH配置文件`/etc/ssh/sshd_config`,进行自定义设置: ```bash sudo vi /etc/ssh/sshd_config ``` 常用配置项: - 修改默认端口(例如2222):`Port 2222` - 允许root远程登录:`PermitRootLogin yes`(默认可能为`prohibit-password`,表示仅允许密钥登录) - 禁用密码认证(仅允许密钥登录):`PasswordAuthentication no` 修改配置后,重启SSH服务: ```bash sudo systemctl restart sshd ``` ### 步骤6:防火墙设置 如果系统启用了防火墙(如`ufw`或`firewalld`),需要开放SSH端口(默认22,若修改则为新端口): - **ufw(Ubuntu/Debian)**: ```bash sudo ufw allow 22 # 或自定义端口号 ``` - **firewalld(CentOS/RHEL/Fedora)**: ```bash sudo firewall-cmd --permanent --add-port=22/tcp # 或自定义端口号 sudo firewall-cmd --reload ``` ### 步骤7:使用SSH客户端连接 在另一台机器上使用SSH客户端连接服务器: ```bash ssh username@server_ip -p port_number ``` 例如: ```bash ssh user@192.168.1.100 -p 22 ``` ### 注意事项 - 安全性:建议使用密钥认证代替密码认证,并禁用root远程登录(除非必要)[^2]。 - 日志:SSH日志通常位于`/var/log/auth.log`(Debian/Ubuntu)或`/var/log/secure`(CentOS/RHEL),可用于排查问题。 通过以上步骤,即可在Linux系统上成功开启SSH服务并实现远程连接。 §§相关问题§§ 1. 如何生成SSH密钥对并配置免密登录? 2. SSH连接常见故障排查方法有哪些? 3. 如何配置SSH服务以提高安全性? </think>### Linux 系统开启 SSH 的方法 以下是开启 SSH 服务的完整步骤,适合主流通用 Linux 发行版(Ubuntu/Debian/CentOS 等): #### 📡 1. **检查网络连通性(必须步骤)** - 获取服务器 IP 地址: ```bash ip addr show | grep inet ``` 或使用 `ifconfig`(需安装 net-tools)[^1] - 从客户端测试连通性: ```bash ping 服务器IP地址 ``` #### ⚙️ 2. **安装 SSH 服务端** - **Ubuntu/Debian**: ```bash sudo apt update && sudo apt install openssh-server -y ``` - **CentOS/RHEL**: ```bash sudo yum install openssh-server -y ``` #### 🚀 3. **启动 SSH 服务** ```bash # Ubuntu/Debian sudo systemctl start ssh # CentOS/RHEL sudo systemctl start sshd # 设置开机自启 sudo systemctl enable sshd ``` #### ✅ 4. **验证 SSH 服务状态** ```bash sudo systemctl status sshd ``` 正常输出应包含:`Active: active (running)` #### 🔒 5. **配置 SSH(可选但推荐)** 编辑配置文件: ```bash sudo nano /etc/ssh/sshd_config ``` 关键配置项: ```ini PermitRootLogin yes # 允许 root 登录(生产环境建议设为 no) Port 2222 # 修改默认端口(增强安全性) PasswordAuthentication yes # 允许密码登录(密钥登录更安全) ``` 修改后重启服务: ```bash sudo systemctl restart sshd ``` #### 🔥 6. **防火墙配置** - **Ubuntu (ufw)**: ```bash sudo ufw allow 22 # 或自定义端口 sudo ufw enable ``` - **CentOS (firewalld)**: ```bash sudo firewall-cmd --permanent --add-port=22/tcp sudo firewall-cmd --reload ``` #### 🔌 7. **连接测试(从客户端)** ```bash ssh 用户名@服务器IP -p 端口号 ``` 示例: ```bash ssh root@192.168.1.100 -p 22 ``` > 💡 **关键提示**: > - 首次连接需确认主机指纹 > - 默认配置文件路径:`/etc/ssh/sshd_config` > - 日志文件位置:`/var/log/auth.log`(Ubuntu)或 `/var/log/secure`(CentOS) > - 端口修改后需同步调整防火墙规则[^2] ### ⚠️ 安全强化建议 1. **禁用 root 登录**(配置后需使用普通用户+`sudo`): ```ini PermitRootLogin no ``` 2. **启用密钥认证**(更安全): ```ini PasswordAuthentication no PubkeyAuthentication yes ``` 3. **限制登录 IP**: ```ini AllowUsers user1@192.168.1.* user2@10.0.0.5 ``` > 📚 **参考文档**: > 完整配置选项参见 `man sshd_config`,关键操作流程参考[^1][^2]
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值