Ubuntu 系统开启SSH服务实现远程登录操作
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
SSH 的服务的安装是其中必不可少的一步。SSH 方便一个开发人员登录服务器,方便代码的共享、管理、编写、编译、运行等工作,SSH 是一种安全协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全,利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

SSH 概述
SSH分为两部分:客户端(openssh-client)部分和服务端(openssh-server)部分。
- 服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是
sshd
进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。 - 客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序,更多 SSH客户端管理工具,请查看《管理Linux系统SSH客户端软件工具》。
如果你只是想登陆管理其他设备服务器的SSH只需要安装客户端(openssh-client)部分(ubuntu有默认安装,如果没有可以执行:sudo apt-get install openssh-client -y
命令进行安装),如果需要其他设备服务器远程登录管理您当前的Ubuntu服务器,则需要本机安装SSH服务端(openssh-server)部分。
查看是否安装 SSH 服务端
执行dpkg -l | grep ssh
命令,查看当前 Ubuntu 系统,是否安装了ssh-server
服务。常规Ubuntu系统默认是只安装了ssh-client
服务。
ubuntu@ubuntu:~$ dpkg -l | grep ssh
ii libssh-4:amd64 0.9.3-2ubuntu2.2 amd64 tiny C SSH library (OpenSSL flavor)
ii openssh-client 1:8.2p1-4ubuntu0.5 amd64 secure shell (SSH) client, for secure access to remote machines
ubuntu@ubuntu:~$
如下图:

安装ssh-server服务
执行命令:sudo apt-get install openssh-server -y
,安装ssh-server服务
ubuntu@ubuntu:~$ sudo apt-get install openssh-server -y
如下图:

确认 SSH 服务端 安装成功
再次执行dpkg -l | grep ssh
命令,查看安装的服务,确认 SSH 服务端是否安装成功:
ubuntu@ubuntu:~$ dpkg -l | grep ssh
ii libssh-4:amd64 0.9.3-2ubuntu2.2 amd64 tiny C SSH library (OpenSSL flavor)
ii openssh-client 1:8.2p1-4ubuntu0.5 amd64 secure shell (SSH) client, for secure access to remote machines
ii openssh-server 1:8.2p1-4ubuntu0.5 amd64 secure shell (SSH) server, for secure access from remote machines
ii openssh-sftp-server 1:8.2p1-4ubuntu0.5 amd64 secure shell (SSH) sftp server module, for SFTP access from remote machines
ii ssh-import-id 5.10-0ubuntu1 all securely retrieve an SSH public key and install it locally
ubuntu@ubuntu:~$
如下图:

出现openssh-server
即表示安装成功。
然后输入ps -e | grep ssh
命令,检测确认ssh-server
是否启动
ubuntu@ubuntu:~$ ps -e | grep ssh
1668 ? 00:00:00 ssh-agent
4247 ? 00:00:00 sshd
ubuntu@ubuntu:~$
如果看到sshd
,那说明ssh-server
已经启动了。
如果没有则可以执行systemctl start sshd
命令进行启动
SSH 配置相关
ssh-server配置文件位于/etc/ssh/sshd_config
,在这里可以定义SSH的服务端口,SSH 的默认端口为22
,为了安全,你可以自己定义成其他端口号,如:22
或其他端口号。
也可以直接通过通过修改/etc/ssh/sshd_config
配置文件,去除#PermitRootLogin prohibit-password
段前#
注释,并将参数PermitRootLogin prohibit-password
更改为PermitRootLogin yes
;即可实现使用root用户远程登陆管理,具体方法清查:《Linux系统设置允许 root 用户远程SSH登陆方法》。
修改完相关配置文件后,执行systemctl restart sshd
命令,重启SSH服务后,即可生效。
登陆SSH(Linux)
ssh username@192.168.1.103
其中,username为192.168.1.103设备上的用户,需要输入密码。
断开连接:exit
SSH 常用命令
#首先安装SSH服务
yun install openssh-server -y #centos
sudo apt-get install openssh-server -y #Debian、Ubuntu
systemctl start sshd #启动SSH服务
/etc/init.d/ssh start #启动SSH服务
systemctl restart sshd #重启sshd服务
sudo /etc/init.d/ssh restart #重启sshd服务
systemctl stop sshd #停止sshd服务
systemctl status sshd #查看sshd服务状态
systemctl reload sshd #重新加载sshd服务的配置文件
update-rc.d ssh enable #配置sshd服务开机自动启动
systemctl enable sshd #sshd服务开机启动
systemctl disable sshd #sshd服务禁止开机启动
netstat -antp | grep sshd #查看SSH服务端口
systemctl mask sshd #锁定sshd服务
systemctl unmask sshd #解锁sshd服务
另外,如果安装了ssh服务,windows下可以使用xshell或者putty链接这台ubuntu了,更多 SSH客户端管理工具,请查看《管理Linux系统SSH客户端软件工具》。
所以可以使用公共密钥的登陆方式来提高速度和安全性。
参考资料
- https://blog.csdn.net/jackghq/article/details/54974141
- https://blog.csdn.net/qq_45164331/article/details/122533327
- https://www.jb51.net/article/194050.htm
- https://blog.csdn.net/qq_33468857/article/details/120129
文章名称:《Ubuntu 系统开启SSH服务实现远程登录操作》
文章链接:https://www.wanjiachupin.com/html/141.html
本站资源仅为个人学、习参考、研究之用,请勿用于商业用途!
版权归原作者所有,请于下载后24小时内删除!否则法律问题自行承担。
推荐阅读