介绍
在本实验中,我们将探索 Linux 的 ftpshut
命令,该命令用于优雅地关闭 FTP 服务器。我们将学习如何关闭 FTP 服务器、阻止新连接,并在服务器关闭之前允许现有连接完成。此外,我们还将介绍如何安排自动 FTP 服务器关闭。本实验涵盖了实际示例和逐步说明,帮助你掌握 ftpshut
命令。
在本实验中,我们将探索 Linux 的 ftpshut
命令,该命令用于优雅地关闭 FTP 服务器。我们将学习如何关闭 FTP 服务器、阻止新连接,并在服务器关闭之前允许现有连接完成。此外,我们还将介绍如何安排自动 FTP 服务器关闭。本实验涵盖了实际示例和逐步说明,帮助你掌握 ftpshut
命令。
在本步骤中,我们将探索 Linux 中的 ftpshut
命令,该命令用于关闭 FTP 服务器。ftpshut
命令允许你优雅地关闭 FTP 服务器,阻止任何新连接,并在服务器关闭之前允许现有连接完成。
首先,让我们检查系统上是否正在运行 FTP 服务器:
sudo systemctl status vsftpd
示例输出:
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2023-04-24 12:34:56 UTC; 1 day 2h ago
Main PID: 1234 (vsftpd)
Tasks: 1 (limit: 4915)
Memory: 1.1M
CGroup: /system.slice/vsftpd.service
└─1234 /usr/sbin/vsftpd /etc/vsftpd.conf
在此示例中,FTP 服务器(vsftpd)正在系统上运行。
现在,让我们使用 ftpshut
命令关闭 FTP 服务器:
sudo ftpshut
示例输出:
Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.
ftpshut
命令设置了 FTP 服务器的关闭时间,在此示例中设置为从现在起 4 天后。在此时间之后,将不允许任何新连接到 FTP 服务器。
你还可以使用 ftpshut
命令指定自定义关闭时间:
sudo ftpshut now "Scheduled FTP server maintenance"
示例输出:
Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.
在此示例中,FTP 服务器将立即关闭,并且尝试连接的用户将看到关闭消息 "Scheduled FTP server maintenance"。
在本步骤中,我们将学习如何使用 ftpshut
命令关闭 FTP 服务器。
首先,让我们检查 FTP 服务器的状态:
sudo systemctl status vsftpd
示例输出:
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2023-04-24 12:34:56 UTC; 1 day 2h ago
Main PID: 1234 (vsftpd)
Tasks: 1 (limit: 4915)
Memory: 1.1M
CGroup: /system.slice/vsftpd.service
└─1234 /usr/sbin/vsftpd /etc/vsftpd.conf
输出显示 FTP 服务器当前正在运行。
现在,让我们使用 ftpshut
命令关闭 FTP 服务器:
sudo ftpshut now "Scheduled FTP server maintenance"
示例输出:
Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.
在此示例中,FTP 服务器将立即关闭,并且尝试连接的用户将看到关闭消息 "Scheduled FTP server maintenance"。
让我们验证 FTP 服务器是否已关闭:
sudo systemctl status vsftpd
示例输出:
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2023-04-28 12:34:56 UTC; 1s ago
Main PID: 1234 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
Memory: 0B
CGroup: /system.slice/vsftpd.service
输出显示 FTP 服务器现在处于非活动状态(dead),表明它已成功关闭。
在本步骤中,我们将学习如何使用 ftpshut
命令安排 FTP 服务器的自动关闭。
首先,让我们检查 FTP 服务器的当前状态:
sudo systemctl status vsftpd
示例输出:
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: inactive (dead)
输出显示 FTP 服务器当前处于非活动状态(dead),这意味着它没有运行。
现在,让我们为未来的特定时间安排 FTP 服务器的自动关闭:
sudo ftpshut +1440 "Scheduled FTP server maintenance"
此命令将安排 FTP 服务器在当前时间 1440 分钟(24 小时)后关闭,并向尝试连接的用户显示消息 "Scheduled FTP server maintenance"。
你还可以为特定的日期和时间安排关闭:
sudo ftpshut 2023-04-30 12:00 "Scheduled FTP server maintenance"
此命令将安排 FTP 服务器在 2023 年 4 月 30 日中午 12:00 关闭。
要验证自动关闭是否已安排,你可以检查 ftpshut
命令的状态:
sudo ftpwho
示例输出:
Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.
此输出显示了 FTP 服务器的计划关闭时间。
在本实验中,我们学习了如何在 Linux 中使用 ftpshut
命令优雅地关闭 FTP 服务器。ftpshut
命令允许你阻止新连接到 FTP 服务器,并在服务器关闭之前允许现有连接完成。我们还探讨了如何安排 FTP 服务器的自动关闭以及设置自定义关闭消息。
最后,我们学习了如何检查 FTP 服务器的状态,并使用 ftpshut
命令立即关闭服务器。