Linux
在Linux中使用netstat和ss检查开放和监听端口 监控Linux系统上的开放和监听端口是维护系统安全、进行网络故障排除和有效管理您的服务器基础设施的重要实践。通过定期检查哪些端口是开放的以及哪些服务正在使用它们,您可以识别潜在的安全风险,检测未经授权的访问尝试,并确保您的系统不会暴露于不必要的漏洞。 了解哪些服务绑定到特定端口还有助于检测配置错误或意外行为,例如在敏感端口上监听的未知进程。这一知识显著降低了安全漏洞的风险,使您能够关闭未使用的端口或妥善保护活动端口。 在本文中,我们将解释如何使用netstat和ss命令检查Linux系统上的开放和监听端口。 理解端口及其类型 在使用这些工具之前,了解您可能遇到的基本端口类型是很重要的: 开放端口:应用程序正在积极监听传入连接的端口。 监听端口:绑定到等待网络流量的服务或应用程序的端口。 常见协议: TCP:传输控制协议,面向连接且可靠。 UDP:用户数据报协议,无连接,速度更快但可靠性较低。 使用netstat检查端口 什么是netstat? netstat是一个经典的命令行工具,提供网络统计信息和网络连接的信息,包括开放和监听端口。尽管它已被更新的工具如ss所取代,但在许多系统上仍然被广泛使用。 安装netstat netstat命令是net-tools包的一部分。在现代Linux发行版中,可能需要手动安装。 Debian / Ubuntu sudo apt install net-tools CentOS / RHEL sudo yum install net-tools 使用netstat检查开放和监听端口 要显示系统上所有监听的TCP和UDP端口,请运行: sudo netstat -tuln -t:显示TCP端口 -u:显示UDP端口 -l:仅显示监听端口 -n:显示数字地址而不是解析主机名 理解输出 本地地址:服务正在监听的IP地址和端口。 外部地址:活动连接的远程IP和端口。 状态:连接状态,例如LISTEN表示开放端口。 使用netstat过滤特定端口或服务 您可以过滤输出以关注特定端口或服务。例如,要检查监听在端口80(HTTP)上的服务: sudo netstat -tuln | grep “:80” 此命令显示所有监听在端口80上的服务。 使用ss检查端口 什么是ss? ss是一个现代工具,已在许多Linux发行版中取代了netstat。它更快且更高效,特别是在具有大量网络连接的系统上。ss命令可以显示开放端口、套接字统计信息和详细的网络信息。 […]
在类Unix操作系统上,cron 工具允许用户在特定时间或间隔自动调度任务(命令或脚本)。无论您是在维护服务器还是在本地计算机上管理自动化任务,cron都是系统管理员和开发人员必不可少的工具。 本文将解释如何使用 crontab 命令 查看和列出cron作业,以帮助您有效管理调度任务。 什么是Crontab命令? Crontab(“cron表”的缩写)是一个定义cron守护进程调度任务的文件。系统中的每个用户,包括root用户,都可以拥有自己的crontab,指定哪些任务应该被自动化。 crontab条目的语法如下: * * * * * command_to_be_executed | | | | | | | | | +—– day of the week (0–7) (Sunday = 0 or 7) | | | +———- month (1–12) | | +————— day of the month (1–31) | +——————– hour (0–23) +————————- minute […]
符号链接,通常称为 symlinks 或软链接,是 Linux 中的强大工具,允许用户创建对其他文件或目录的引用。symlink 作为指针,而不是复制实际数据,使文件管理和访问更加高效。它们在将应用程序重定向到特定资源、管理文件路径和提高组织效率等任务中至关重要。 本指南解释了如何在 Linux 中 创建和删除符号链接,涵盖其目的、语法和实际用例。 什么是符号链接 (Symlink)? 符号链接是指向另一个文件或目录的文件。它的工作方式类似于 Windows 中的快捷方式。当您打开 symlink 时,系统会将您重定向到目标,而不复制实际数据,使 symlinks 轻量且灵活。 在 Linux 中有两种主要类型的链接: 硬链接 – 直接引用磁盘上的数据,并与原始文件共享相同的 inode。硬链接不能跨越不同的文件系统。 符号链接 (软链接) – 引用文件路径,可以跨越文件系统边界。如果目标被删除,symlink 将变为损坏。 为什么使用 Symlinks? 符号链接提供了几个优点: 高效的文件管理: 从多个位置引用相同的文件而无需重复。 重定向: 更改目标位置而不影响访问链接的应用程序或用户。 节省磁盘空间: Symlinks 不会重复文件。 简化路径: 缩短复杂的目录结构以便于导航。 创建符号链接 Symlink 创建语法 创建符号链接的基本命令是: ln -s [target] [link_name] ln:用于创建链接的命令。 -s:指定符号(软)链接。 [target]:您想要链接的文件或目录。 [link_name]:符号链接的名称。 […]
如何在Ubuntu上安装VMware Tools VMware Tools是一组实用程序,旨在提高在VMware平台上运行的虚拟机的性能和管理。 在Ubuntu虚拟机上安装VMware Tools可以提供增强的图形性能、更好的鼠标集成以及主机与客户操作系统之间更轻松的文件共享。以下是安装VMware Tools在Ubuntu上的逐步指南。 1. 更新系统 首先更新系统的软件包列表,以确保您安装了最新的软件版本。 sudo apt update && sudo apt upgrade 2. 检查VMware Tools安装选项 VMware提供了两种主要方法来在Ubuntu上安装VMware Tools: Open VM Tools(推荐):大多数Linux发行版(包括Ubuntu)中包含的开源版本的VMware Tools。 官方VMware Tools:直接从VMware安装的专有VMware Tools包,如果Open VM Tools不可用或需要特定的VMware功能,则很有用。 由于Open VM Tools的可用性和无缝集成,通常使用Open VM Tools是最简单和首选的方法。 3. 安装Open VM Tools(首选方法) 在Ubuntu上,安装Open VM Tools非常简单。运行以下命令: sudo apt install open-vm-tools open-vm-tools-desktop open-vm-tools:安装核心工具并启用基本功能。 open-vm-tools-desktop:添加增强的图形支持,包括复制粘贴和拖放功能。 安装后,重启虚拟机以使更改生效。 4. VMware Tools的手动安装(替代方法) 如果Open […]
DNS_PROBE_FINISHED_NXDOMAIN 错误是一个常见问题,当您的浏览器无法解析一个 域名 时会发生。这意味着 DNS(域名系统)查找失败,您的浏览器无法找到与您尝试访问的网站相关联的 IP 地址。这可能是由于您的互联网连接问题、DNS 设置配置错误,或者甚至是网站的 DNS 问题引起的。本指南将引导您通过各种方法来修复 DNS_PROBE_FINISHED_NXDOMAIN 错误。 DNS_PROBE_FINISHED_NXDOMAIN 错误的原因是什么? DNS_PROBE_FINISHED_NXDOMAIN 错误可能由几个因素引起,包括: DNS 服务器配置错误。 网络连接问题。 DNS 缓存问题。 浏览器或其设置的问题。 网站服务器上的域名问题。 修复 DNS_PROBE_FINISHED_NXDOMAIN 错误的 9 种方法 1. 检查您的域名 在排查系统问题之前,最好确认您在地址栏中输入的域名是否正确。URL 中的拼写错误可能导致 NXDOMAIN 错误。 2. 重启路由器 重启路由器可以解决临时的 DNS 问题: 从电源插座拔掉路由器。 等待大约 10-15 秒。 重新插上路由器,并允许它重新连接。 再次尝试访问该网站。 这将刷新您的互联网连接,并可能解决任何临时的网络问题。 3. 清除 DNS 缓存 清除计算机上的 DNS 缓存可以解决过时或损坏的 DNS 记录。 […]
在 AlexHost VPS 上创建用于自动化任务的 Telegram 机器人 为什么要在 AlexHost 上创建机器人? 使用 Telegram 机器人 自动化任务简单高效。 AlexHost 的 VPS 配备 NVMe 存储、根访问权限和 DDoS 保护,确保快速、安全的机器人部署。本指南详细介绍了在 AlexHost 上设置一个检查 IPv4 黑名单的机器人。 准备创建机器人 在您实际开始在服务器上安装机器人之前,您需要添加 https://alexhost.com/faq/create-your-own-telegram-bot-to-track-ipv4-blacklists/?preview=true 额外安装必要的库。为此,请确保您已安装 Python(建议使用 3.7 或更高版本)。然后使用 pip 安装必要的库: pip install selenium pip install aiogram==3.4.1 在 Telegram 中创建机器人 步骤 #1。在您的 Telegram 应用中,找到 BotFather 机器人。BotFather 是一个官方的 Telegram 机器人,用于创建和管理其他机器人。通过它,您可以注册新的机器人,配置其参数,获取 API 令牌,并更新信息,例如描述、头像或命令。这是启动您自己的 Telegram […]
对于那些在 Linux VPS 托管 上管理应用程序或服务的人来说,确保关键服务在启动时自动启动对于维护不间断的操作至关重要。使用 systemd,一个强大且灵活的初始化系统,您可以轻松配置服务在系统启动时立即启动,这对于在 VPS 环境中运行的 Web 应用程序、数据库和其他基本服务至关重要。本指南将引导您设置自定义 systemd 服务单元,以便您可以自动化服务启动、简化管理并确保在您的 Linux VPS 托管 设置中的可靠性。 使用 systemd 在启动时启动 Linux 服务 systemd 是许多 Linux 发行版使用的现代初始化系统,用于管理系统服务和资源。它的一个关键特性是能够在启动时自动启动服务,确保关键应用程序和服务在系统启动时立即运行。本文将指导您创建 systemd 服务单元并启用其在启动时启动的步骤。 什么是 systemd? systemd 是一个替代旧初始化系统(如 SysVinit 和 Upstart)的初始化系统。它管理系统进程和服务,允许服务启动的并行化、按需启动守护进程以及更好的资源控制。通过其单元文件结构,systemd 提供了一种灵活的方式来管理服务、套接字、设备和其他系统资源。 创建 systemd 服务 要使用 systemd 在启动时启动服务,您需要创建一个服务单元文件。该文件包含 systemd 管理服务所需的所有必要信息。以下是创建和配置服务单元文件的方法: 步骤 1:检查工作目录 打开您的服务单元文件 以检查 WorkingDirectory 指令: sudo nano /etc/systemd/system/myapp.service 找到 WorkingDirectory 行。它应该看起来像这样(查找:创建服务单元文件): […]
对于管理Linux VPS 主机环境的用户,特别是那些运行在Ubuntu VPS上的用户,了解如何高效地挂载和管理文件系统是至关重要的。Linux中的挂载命令提供了对存储设备和文件系统管理的强大控制,这对于需要在各种存储类型(无论是本地磁盘、网络共享还是USB驱动器)之间可靠访问文件的VPS管理员尤其有用。通过学习如何使用挂载命令,Ubuntu VPS用户可以简化数据访问,自动化存储设置,并确保其文件系统配置为最佳性能。本指南将带您了解使用挂载命令的基础知识,包括语法、选项和最佳实践,以使您的VPS管理更加顺畅和高效。 Linux挂载命令 mount命令是Linux中用于管理文件系统和挂载设备的强大工具,允许用户访问存储在不同存储介质上的文件。无论您是使用本地磁盘、网络共享还是可移动介质,理解mount命令对于有效的系统管理至关重要。本指南提供了mount命令的全面概述,包括其用法、选项和最佳实践。 什么是挂载命令? 在Linux中,mount命令用于将文件系统(如硬盘、USB驱动器或网络共享)附加到文件系统层次结构中的特定目录。这使得用户可以像访问主文件系统中的文件一样访问这些设备上的文件。 基本语法 mount命令的基本语法如下: mount [options] <device> <mount_point> <device>:您想要挂载的设备(例如,/dev/sda1,/dev/cdrom)。 <mount_point>:设备将挂载到的目录(例如,/mnt/usb)。 常用选项 挂载命令支持多种选项,以修改其行为。以下是一些最常用的选项: -t <type>:指定文件系统的类型(例如,ext4,ntfs,vfat,nfs)。 -o <options>:指定挂载选项,如ro(只读)、rw(读写)、noexec(不执行任何二进制文件)、user(允许非root用户挂载)。 -a:挂载/etc/fstab中提到的所有文件系统。 -r:以只读方式挂载文件系统。 -v:详细模式;提供有关挂载过程的详细信息。 创建挂载点目录 您需要创建一个目录以挂载文件系统。在这种情况下,您想要创建/mnt/mydrive目录。您可以使用以下命令: sudo mkdir -p /mnt/mydrive -p选项确保如果整个路径不存在,则会创建整个路径。 再次挂载文件系统 一旦目录创建完成,您可以尝试使用原始命令再次挂载文件系统: sudo mount -t ext4 /dev/sda1 /mnt/mydrive 完整过程示例 以下是您终端中完整过程的样子: # Create the mount point directory sudo mkdir -p /mnt/mydrive # Mount […]
对于在 Linux VPS 托管 上管理系统的用户,高效组织终端会话的能力对于提高生产力和简化工作流程至关重要。无论您是在监控应用程序、运行后台进程,还是在 VPS 上管理多个会话,tmux(终端复用器)都是一个不可或缺的工具。tmux 允许您在单个会话中创建、管理和控制多个终端窗口,帮助您跟踪重要任务,尤其是在 Linux VPS 托管 设置中常见的远程环境中。本指南将向您介绍 tmux 的核心功能,并向您展示如何有效使用它来提升您的命令行体验。 使用 tmux:终端复用器 在命令行界面(CLI)使用的世界中,效率和生产力至关重要,尤其是对于开发人员和系统管理员。提升终端生产力的最强大工具之一是 tmux(终端复用器)。本文将向您介绍 tmux、它的功能以及如何有效使用它来无缝管理多个终端会话。 什么是 tmux? tmux 是一个终端复用器,允许您从一个窗口创建、访问和控制多个终端会话。它特别适用于运行长时间的进程、管理远程会话或更有效地组织工作空间。使用 tmux,您可以将终端分割成多个窗格,切换不同的会话,并在不干扰正在运行的进程的情况下分离和重新连接会话。 tmux 的关键特性 会话管理:在单个终端窗口中创建和管理多个终端会话。 窗口分割:将终端窗口分割成多个窗格,允许您并排查看不同的命令输出。 分离和重新连接:从会话中分离并稍后重新连接,保留正在运行的进程状态。 可定制:自定义键绑定、颜色和状态栏信息以适应您的工作流程。 持久性:即使在您断开 SSH 连接或关闭终端时,也能保持终端会话的活跃。 安装 tmux tmux 在大多数 Linux 发行版的包仓库中可用。要安装 tmux,请根据您的操作系统使用以下命令: 在 Ubuntu/Debian 上: sudo apt update sudo apt install tmux 在 CentOS/RHEL 上: sudo yum […]
Redis,一个开源的内存数据结构存储,以其速度和作为键值数据库的多功能性而闻名。它的一个强大特性是能够使用扫描命令逐步遍历数据集。这在处理大数据集时特别有用,因为它允许高效的数据检索而不会使服务器过载。对于在专用Linux服务器上的用户,使用scan命令可以通过允许精确、资源优化的数据集处理来增强数据处理性能。在本文中,我们将探讨如何在Linux环境中有效使用scan命令,提供详细示例和最佳实践,以便在大规模管理和检索数据时使用。 什么是扫描命令? Redis中的scan命令提供了一种非阻塞方式来遍历键、集合、哈希和有序集合。与可能对大数据集危险的KEYS命令不同,后者一次返回所有匹配的键,scan命令一次返回少量元素。这最小化了性能影响,并允许增量迭代。 主要扫描命令 SCAN:遍历键空间中的键。 SSCAN:遍历集合中的元素。 HSCAN:遍历哈希中的字段和值。 ZSCAN:遍历有序集合中的成员和分数。 扫描命令的基本语法 每个扫描命令具有类似的语法: SCAN cursor [MATCH pattern] [COUNT count] cursor:一个整数,表示开始扫描的位置。要开始新的scan,使用0。 MATCH pattern:(可选)用于过滤返回的键的模式。支持通配符样式的模式。 COUNT count:(可选)给Redis的提示,关于每次迭代中要返回多少元素。 在Linux上安装Redis 在我们深入使用scan命令之前,请确保在您的Linux系统上安装了Redis。对于使用Debian专用服务器的用户,设置Redis非常简单,可以增强服务器高效处理内存数据的能力。以下是如何在基于Debian的系统上安装Redis,确保一个优化用于高性能操作的稳定环境。 通过遵循这些步骤,您将以利用专用Debian服务器的资源和稳定性来设置Redis,适合强大的数据处理任务。 sudo apt update sudo apt install redis-server 对于CentOS/RHEL,使用: sudo yum install redis 安装完成后,启动Redis服务器: sudo systemctl start redis 连接到Redis 打开您的终端并使用Redis CLI连接到您的Redis实例: redis-cli 您现在可以在CLI中执行Redis命令。 使用SCAN命令 示例1:基本SCAN 要检索Redis数据库中的所有键,可以使用: SCAN 0 此命令将返回一个游标和一个键的列表。 示例2:使用MATCH过滤键 如果您想查找匹配特定模式的键,例如以”user:”开头的键,可以使用: SCAN […]
