搭建SSH服务器是实现远程登录和管理服务器的重要步骤,通过加密技术确保通信的安全性,以下是详细的搭建流程:
一、安装OpenSSH服务器
1、更新软件包列表:在安装任何软件之前,最好先更新一下系统的软件包列表,以确保安装的软件是最新的版本,打开终端,执行以下命令:
sudo apt update
2、安装OpenSSH服务器:在Ubuntu中,OpenSSH是最常见的SSH服务器实现,您可以使用以下命令安装OpenSSH服务器:
sudo apt install openssh-server
系统会提示您输入密码以确认安装,输入密码后按下Enter键继续。
3、检查SSH服务器状态:安装完成后,SSH服务器会自动启动,您可以使用以下命令检查SSH服务器的状态:
sudo systemctl status ssh
如果SSH服务器正在运行,您将看到类似如下的输出:
● ssh.service OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-04-09 14:30:00 UTC; 1min 30s ago Docs: man:sshd(8) man:sshd_config(5) Process: 12345 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS) Main PID: 12346 (sshd) Tasks: 1 (limit: 4567) Memory: 2.2M CPU: 50ms CGroup: /system.slice/ssh.service └─12346 /usr/sbin/sshd -D
二、配置SSH服务器
默认情况下,OpenSSH服务器的配置文件位于/etc/ssh/sshd_config
,您可以根据需要修改此文件来进行自定义配置,您可以更改SSH服务器的监听端口、允许或禁止密码登录、限制登录用户等,以下是一些常用的配置选项:
1、端口号(Port):指定SSH服务器监听的端口,默认情况下,SSH服务器使用22端口,建议将端口更改为其他非常用端口以提高安全性。
Port 2222
2、身份验证方式(AuthenticationMethods):确定用户身份验证方式,您可以选择密码、公钥、键盘交互式等身份验证方式。
PasswordAuthentication yes PubkeyAuthentication yes
3、允许的用户(AllowUsers):指定可以访问SSH服务器的用户列表。
AllowUsers user1 user2
4、访问限制(AllowTcpForwarding、PermitRootLogin等):控制SSH服务器的访问权限,如是否允许TCP转发、是否允许root用户登录等。
PermitRootLogin no AllowTcpForwarding no
5、防火墙配置:如果您的系统上有防火墙,您需要配置防火墙以允许SSH流量通过指定的端口,具体操作取决于所使用的防火墙工具和平台,在大多数Linux发行版中,可以使用iptables、ufw(Uncomplicated Firewall)或firewalld等工具进行设置,在Ubuntu系统中,可以使用ufw工具进行配置:
sudo ufw allow 2222
三、生成SSH密钥
为了增加安全性,推荐使用SSH公钥认证,在本地系统上生成SSH密钥对,并将公钥添加到服务器的authorized_keys文件中,使用以下命令生成SSH密钥对:
ssh-keygen -t rsa -b 4096
该命令将生成一个包含公钥和私钥的密钥对,将公钥文件(通常是id_rsa.pub)上传到服务器上的用户目录下(通常是~/.ssh/authorized_keys
文件)。
四、连接SSH服务器
配置完毕后,使用SSH客户端连接到服务器,在终端中运行以下命令:
ssh username@hostname -p port
username是远程服务器上的用户名,hostname是服务器的IP地址或域名,port是SSH服务器的端口号(如果更改了默认的22端口)。
ssh user@192.168.1.100 -p 2222
当第一次连接到服务器时,会提示是否信任主机密钥,输入yes即可,完成以上步骤后,您就可以通过SSH安全地远程登录和管理服务器了。
五、相关FAQs
Q1:如何更改SSH服务器的默认端口?
A1:要更改SSH服务器的默认端口,可以在/etc/ssh/sshd_config
文件中修改Port字段的值,将Port 22改为Port 2222,然后保存文件并重启SSH服务,确保防火墙规则允许新的端口通过。
Q2:如何禁止root用户通过SSH登录?
A2:在/etc/ssh/sshd_config
文件中设置PermitRootLogin
字段为no,即可禁止root用户通过SSH登录,这样可以提高服务器的安全性。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1256593.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复