系统守护进程(服务)
•服务就是运行在网络服务器上监听用户请求的进程
•服务是通过端口号来区分的
常见的服务及其对应的端口
1.ftp:21
FTP指的是文件传输协议,它是用于在计算机网络上进行文件传输的标准网络协议。通过FTP,用户可以在客户端和服务器之间传输文件,可以上传文件到服务器或者从服务器下载文件。
FTP允许用户通过指定的用户名和密码进行身份验证,一旦连接到服务器,用户就可以对服务器上的文件进行各种操作,比如复制啊、删除啊、重命名啊之类的
FTP通常使用21号端口进行控制连接,而文件传输则使用20号端口进行数据连接。FTP协议可以在各种操作系统和计算机体系结构之间进行文件传输,因此被广泛应用于网站维护、文件共享以及软件下载等方面。
当然了,值得一提的还有:虽然FTP在过去非常流行,但由于安全性的考虑,现在越来越多的网站和组织转向了安全的文件传输协议,比如SSH文件传输协议(SFTP)或者加密的FTP(FTPS)。这些协议提供了更高级别的安全性和加密,以保护文件传输过程中的数据安全。
2.ssh:22
SSH代表安全外壳协议(Secure Shell),它是一种用于在计算机网络上安全地进行远程登录和执行命令的协议。SSH的设计目的是为了替代不安全的Telnet和不加密的远程Shell协议。
通过SSH,用户可以在网络上安全地连接到远程计算机,并在远程计算机上执行命令,管理文件,甚至进行远程桌面操作。SSH通过使用加密技术来保护通信过程中的数据安全,防止敏感信息被窃取或篡改。
SSH的工作原理是通过使用公钥加密和私钥解密的方式来建立安全的通信连接。当用户尝试连接到远程主机时,远程主机会发送一个公钥给客户端,客户端使用该公钥对通信数据进行加密。然后,远程主机使用自己的私钥来解密数据。这种方式使得通信过程中的数据对第三方来说是不可读的。
当然了!SSH也支持密钥交换和密码身份验证两种方式来进行:
-
密钥交换(Public Key Authentication):在密钥交换身份验证中,用户首先在客户端生成一对密钥:公钥和私钥。公钥保存在服务器上,而私钥保留在客户端。当用户连接到服务器时,服务器会向客户端发送一个随机数,客户端使用私钥对该随机数进行加密,然后将加密后的结果发送给服务器。服务器使用之前存储的公钥进行解密,如果解密后的结果与之前发送的随机数匹配,则认证成功,允许用户登录。
-
密码身份验证(Password Authentication):密码身份验证是最常见的 SSH 身份验证方式。用户在连接服务器时需要提供用户名和密码。服务器将用户名和密码与存储在系统中的凭据进行比对,如果匹配则认证成功,用户可以登录。
3.telnet:23
Telnet是一种用于远程登录到计算机或设备的网络协议。通过Telnet,用户可以在本地计算机上登录到远程计算机或设备,并在远程系统上执行命令和操作,就像直接在远程系统上操作一样。
Telnet协议使用TCP(Transmission Control Protocol)作为传输协议,通常在23号端口上运行。用户可以使用Telnet客户端应用程序连接到远程主机的Telnet服务器上进行远程访问。
注意啊,别用telnet!别用telnet!别用telnet!重要的事情说三遍!
因为Telnet这玩意在通信中使用明文传输,包括用户名、密码和其他敏感信息,这使得数据容易被窃听和篡改。
4.smtp:25
SMTP代表Simple Mail Transfer Protocol(简单邮件传输协议),它是用于在网络上发送和传递电子邮件的标准协议。SMTP通常用于从发件人的电子邮件客户端发送电子邮件,然后通过互联网传输到收件人的邮件服务器,并最终交付到收件人的收件箱。
SMTP工作原理如下:
- 发件人使用邮件客户端(如Outlook、Gmail等)编写邮件并指定收件人的电子邮件地址。
- 邮件客户端将邮件发送给发件人所在的邮件服务器。
- 发件人的邮件服务器使用SMTP协议将该电子邮件传输到收件人的邮件服务器。
- 收件人的邮件服务器接收到电子邮件,并存储在接收人的收件箱中。
- 收件人可以使用邮件客户端查看、回复或转发接收到的邮件。
5.ssl:443
SSL代表Secure Sockets Layer(安全套接层),它是一种用于加密网络通信的标准安全技术。SSL协议通过在通信双方之间建立加密连接,确保在互联网上传输的数据在传输过程中不被窃取或篡改。
SSL协议的主要功能包括:
- 加密数据传输:SSL使用加密算法对传输的数据进行加密,使得第三方无法在传输过程中窃取敏感信息。
- 身份验证:SSL可以确保通信双方的身份,防止中间人攻击。
- 数据完整性:SSL可以检测数据是否在传输过程中被篡改,从而确保数据的完整性。
SSL协议已经被现代的安全传输协议TLS(Transport Layer Security)所取代,TLS是SSL的继任者,并提供更强大的安全性和更好的性能。有意思的是啊:现代当人们提到SSL时,通常也包括TLS协议。
6.http(www):80
HTTP代表HyperText Transfer Protocol(超文本传输协议),它是一种用于在Web上进行通信的协议。HTTP定义了客户端和服务器之间进行请求-响应的通信规则,使得在互联网上发布和获取资源变得可能。
HTTP的工作原理如下:
- 客户端(通常是Web浏览器)向服务器发送一个HTTP请求。
- 服务器接收到请求后,处理请求并返回一个HTTP响应。
- 客户端接收到服务器的响应后,解析响应,并根据响应内容来渲染或执行相应的动作。
一个典型的HTTP请求由HTTP方法(如GET、POST)、URL和可选的请求头组成。HTTP响应由一个状态码、响应头和响应正文组成,其中状态码表示请求的处理结果(比如说啊:200表示成功,404表示资源未找到等)。
当然了!还有一个必须补充的内容:需要注意的是,HTTP是一种无状态协议,即服务器不会保留客户端请求的任何信息。因此,为了维护状态,Web应用程序通常使用Cookie或其他机制来跟踪用户的会话信息。
7.pop3:110
POP3它是一种用于从远程服务器下载电子邮件到本地计算机的标准协议。通过POP3,用户可以使用电子邮件客户端(如Outlook、Thunderbird等)从邮件服务器上获取自己的电子邮件,并将这些邮件存储在本地设备上。
POP3的工作原理如下:
- 用户使用电子邮件客户端配置POP3设置,包括服务器地址、端口号、用户名和密码等信息。
- 电子邮件客户端通过POP3协议连接到邮件服务器的110端口。
- 用户的邮件服务器验证用户身份(通过用户名和密码)。
- 一旦身份验证成功,邮件服务器会将用户的未读邮件下载到本地设备。
- 下载的邮件通常会从邮件服务器上删除,但可以根据设置选择保留一份副本在服务器上。
用一句话来总结就是;POP3是一种方便的协议,适用于需要将邮件存储在本地设备上的用户,同时也需要定期备份重要邮件以避免意外数据丢失。
上述内容参考:一口气把 SSH 原理搞懂了 - 知乎 (zhihu.com)
《Linux 教程》(原书名:How Linux Works)
- 作者:Brian Ward