From 887b60d67e88b1eab6cddd50dc73c4f9ee6d4cd9 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Thu, 22 Aug 2024 18:51:48 -0400
Subject: [PATCH 01/10] New translations firewallgui.md (German)
---
docs/desktop/tools/firewallgui.de.md | 111 +++++++++++++++++++++++++++
1 file changed, 111 insertions(+)
create mode 100644 docs/desktop/tools/firewallgui.de.md
diff --git a/docs/desktop/tools/firewallgui.de.md b/docs/desktop/tools/firewallgui.de.md
new file mode 100644
index 0000000000..0adac4f148
--- /dev/null
+++ b/docs/desktop/tools/firewallgui.de.md
@@ -0,0 +1,111 @@
+---
+title: Firewall GUI App
+author: Ezequiel Bruni
+contributors: Steven Spencer, Ganna Zhyrnova
+---
+
+## Einleitung
+
+Möchten Sie Ihre Firewall ohne den ganzen Befehlszeilenkram verwalten? Es gibt eine großartige App, die speziell für `firewalld`, die in Rocky Linux verwendete Firewall, entwickelt wurde und auf Flathub verfügbar ist. In dieser Anleitung erfahren Sie, wie Sie es schnell zum Laufen bringen und lernen die Grundlagen der Benutzeroberfläche kennen.
+
+Wir werden nicht alles abdecken, was `firewalld` oder die GUI leisten können, aber es sollte für den Anfang ausreichen.
+
+## Voraussetzungen
+
+Für diese Anleitung gehen wir davon aus, dass Sie über Folgendes verfügen:
+
+- Eine Rocky Linux-Installation mit einer beliebigen grafischen Desktopumgebung
+- `sudo` oder Administratorzugriff
+- Ein grundlegendes Verständnis der Arbeitsweise von `firewalld`
+
+!!! note "Anmerkung"
+
+```
+Bedenken Sie, dass diese App Ihnen das Leben zwar definitiv erleichtert, wenn Sie lieber eine grafische Benutzeroberfläche verwenden, Sie aber trotzdem die grundlegenden Konzepte hinter `firewalld` verstehen müssen. Sie müssen sich mit Ports, Zonen, Diensten, Quellen, usw. auskennen.
+
+Wenn Ihnen dies nicht ganz klar ist, lesen Sie bitte den [Anfängerleitfaden zu `firewalld`](../../guides/security/firewalld-beginners.md) und lesen Sie insbesondere den Abschnitt über Zonen, um ein Gefühl dafür zu bekommen, was sie tun.
+```
+
+## Installieren Sie die App
+
+Gehen Sie zum `Software Center` und suchen Sie nach `Firewall`. Dies ist ein natives Paket im Rocky Linux-Repository und wird `Firewall` heißen, sodass es leicht zu finden sein sollte.
+
+
+
+Diese befindet sich im Repository unter `firewall-config` und kann mit dem üblichen Befehl installiert werden:
+
+```bash
+sudo dnf install firewall-config
+```
+
+Wenn Sie die App öffnen, werden Sie nach Ihrem Passwort gefragt. Außerdem wird vor der Durchführung vertraulicher Vorgänge erneut nachgefragt.
+
+## Konfigurationsmodus
+
+Das erste, was Sie beachten sollten, ist der Konfigurationsmodus, in dem Sie sich befinden. Sie können ihn aus dem Dropdown-Menü oben im Fenster auswählen. Wählen Sie aus `Runtime` und `Permanent`.
+
+
+
+Das Öffnen von Ports, das Hinzufügen erlaubter Dienste und alle anderen zur Laufzeit vorgenommenen Änderungen sind _vorübergehend_ und ermöglichen Ihnen nicht den Zugriff auf alle Funktionen. Nach einem Reboot oder einem manuellen Neustart der Firewall verschwinden diese Änderungen. Dies ist ideal, wenn Sie nur eine schnelle Änderung vornehmen müssen, um eine einzelne Aufgabe abzuschließen, oder wenn Sie Ihre Änderungen testen möchten, bevor Sie sie dauerhaft übernehmen.
+
+Wenn Sie beispielsweise einen Port in der `Public`-Zone geöffnet haben, können Sie die Änderungen über `Options > Runtime To Permanent` speichern.
+
+Der `Permanent`-Modus ist riskanter, schaltet aber alle Funktionen frei. Es ermöglicht Ihnen, neue Zonen zu erstellen, Dienste anzupassen, Netzwerkschnittstellen zu verwalten und IPSets hinzuzufügen (mit anderen Worten, Sets von IP-Adressen, denen die Verbindung zu Ihrem Computer oder Server gestattet oder verweigert wird).
+
+Nachdem Sie dauerhafte Änderungen vorgenommen haben, gehen Sie zu `Options > Reload Firewalld`, um sie ordnungsgemäß zu aktivieren.
+
+## Interfaces/Connections – Verwaltung
+
+Im Bereich ganz links mit der Bezeichnung `Active Bindings` können Sie Ihre Netzwerkverbindungen finden und manuell eine Netzwerkschnittstelle hinzufügen. Wenn Sie nach oben scrollen, sehen Sie die Ethernet-Verbindung (eno1) des Autors. Die `Public`-Zone ist standardmäßig gut geschützt und beinhaltet Ihre Netzwerkverbindung.
+
+Am unteren Rand des Panels finden Sie die Schaltfläche `Change Zone`, mit der Sie Ihre Verbindung einer anderen Zone zuweisen können. Im `Permanent`-Modus können Sie auch Ihre personifizierten Zonen erstellen.
+
+
+
+## Zonen-Verwaltung
+
+Auf der ersten Registerkarte des rechten Panels finden Sie das Menü `Zone`. Hier können Sie Ports öffnen und schließen, Dienste aktivieren und deaktivieren, vertrauenswürdige IP-Adressen für eingehenden Datenverkehr (z. B. LANs) hinzufügen, Portweiterleitung aktivieren, erweiterte Regeln hinzufügen und vieles mehr.
+
+Die gewöhnlichen Desktop-Benutzer werden hier die meiste Zeit verbringen, und die nützlichsten Unterregisterkarten in diesem Bereich sind diejenigen zum Konfigurieren von Diensten und Ports.
+
+!!! note "Anmerkung"
+
+```
+Installieren Sie Ihre Apps und Dienste aus dem Repository. Einige davon (normalerweise diejenigen, die für die Verwendung auf dem Desktop entwickelt wurden) aktivieren die entsprechenden Dienste automatisch oder öffnen die richtigen Ports. Wenn dies jedoch nicht geschieht, können Sie die folgenden Schritte ausführen, um alles manuell zu erledigen.
+```
+
+### Einen Dienst einer Zone hinzufügen
+
+Dienste sind beliebte Anwendungen und Hintergrunddienste, die standardmäßig von `firewalld` unterstützt werden. Sie können sie schnell und einfach aktivieren, indem Sie durch die Liste scrollen und auf das entsprechende Kontrollkästchen klicken.
+
+Wenn Sie nun KDE Connect\* installiert haben, um Ihren Desktop mit anderen Geräten zu synchronisieren, und möchten, dass es tatsächlich durch Ihre Firewall funktioniert, gehen Sie wie folgt vor:
+
+1. Wählen Sie zunächst die Zone aus, die Sie bearbeiten möchten. Wählen Sie für dieses Beispiel einfach die Default-`Public`-Zone aus.
+2. Scrollen Sie in der Liste nach unten und wählen Sie `kdeconnect`.
+3. Wenn Sie sich im Runtime-Einrichtungsmodus befinden, vergessen Sie nicht, im Optionsmenü auf `Runtime To Permanent` und `Reload Firewalld` zu klicken.
+
+\* im EPEL-Repository verfügbar.
+
+
+
+Zu den weiteren beliebten Diensten auf der Liste gehören HTTP und HTTPS zum Hosten von Websites, SSH zum Bereitstellen des Terminalzugriffs von anderen Geräten, Samba zum Hosten Windows-kompatibler Dateifreigaben und viele andere.
+
+Allerdings wird nicht jede Anwendung aufgeführt und Sie müssen den Port möglicherweise manuell öffnen.
+
+### Ports in einer Zone öffnen
+
+Das Öffnen von Ports für spezifische Anwendungen ist recht einfach. Lesen Sie einfach die Dokumentation, um herauszufinden, welche Ports Sie benötigen.
+
+1. Wählen Sie die Zone aus, die Sie bearbeiten möchten.
+2. Gehen Sie im rechten Bereich zur Registerkarte `Ports`.
+3. Klicken Sie auf die Schaltfläche ++"Add"++.
+4. Füllen Sie das Textfeld mit den Ports aus, die Sie öffnen möchten. Prüfen Sie, welches Protokoll die Anwendung benötigt und welches Netzwerkprotokoll sie verwendet (also TCP/UDP usw.).
+5. Klicken Sie auf OK und verwenden Sie die Optionen `Runtime To Permanent` und `Reload Firewalld`.
+
+
+
+## Zusammenfassung
+
+Wenn Sie Ihr Wissen über das Thema erweitern möchten, sollten Sie mehr über die Grundlagen von `Firewalld` lesen. Sie können auch die Registerkarte `Services` oben im rechten Bereich (neben `Zones`) verwenden, um genau zu konfigurieren, wie Ihre Dienste funktionieren, oder um den Zugriff anderer Computer zu steuern, die über IPsets und Quellen mit Ihrem Computer kommunizieren dürfen.
+
+Oder Sie öffnen einfach Ihren Jellyfin-Server-Port und fahren mit Ihrer Aufgabe fort. `firewalld` ist ein unglaublich leistungsstarkes Tool und die Firewall-App kann Ihnen dabei helfen, seine Fähigkeiten auf einsteigerfreundliche Weise zu entdecken.
From d66e19d5e5624e3fb53923ab07ab69b40e5f0565 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Sat, 24 Aug 2024 05:30:15 -0400
Subject: [PATCH 02/10] New translations dconf.md (German)
---
docs/desktop/gnome/dconf.de.md | 90 ++++++++++++++++++++++++++++++++++
1 file changed, 90 insertions(+)
create mode 100644 docs/desktop/gnome/dconf.de.md
diff --git a/docs/desktop/gnome/dconf.de.md b/docs/desktop/gnome/dconf.de.md
new file mode 100644
index 0000000000..af26db533d
--- /dev/null
+++ b/docs/desktop/gnome/dconf.de.md
@@ -0,0 +1,90 @@
+---
+title: dconf Config Editor
+author: Ezequiel Bruni
+contributors: Steven Spencer, Ganna Zhyrnova
+---
+
+## Einleitung
+
+GNOME verfolgt bei seiner Benutzeroberfläche und seinen Funktionen einen sehr einfachen Ansatz. Das ist gut, weil es leicht zu erlernen ist und Sie mit der typischen GNOME-Erfahrung sofort loslegen können.
+
+Dieser Ansatz führt allerdings auch dazu, dass die Einrichtung nicht so schnell geht. Wenn Sie im Einstellungsfenster nicht finden, was Sie benötigen, können Sie GNOME Tweaks installieren, um Ihre Optionen zu erweitern. Sie können sogar GNOME-Erweiterungen installieren, um neue Funktionen und Möglichkeiten zu erhalten.
+
+Aber was ist, wenn Sie all die kleinen Optionen, Features und Konfigurationen sehen möchten, die die GNOME-Entwickler versteckt halten? Sie können online nach Ihrem aktuellen Problem suchen und einen Befehl eingeben, um die unbekannte Variable zu ändern, oder Sie können `dconf Editor` installieren.
+
+„dconf Editor“ ist im Wesentlichen eine GNOME-Einstellungsanwendung, die _alles_ kann. Es erinnert Sie vielleicht ein wenig an die Windows-Registrierung und _sieht_ auch so aus. Es ist jedoch besser lesbar und deckt nur die GNOME-Funktionalität und einige für GNOME entwickelte Software ab.
+
+Sie können auch die Einstellungen von GNOME-Erweiterungen bearbeiten.
+
+!!! warning "Warnhinweis"
+
+```
+Der Vergleich mit der Windows-Registrierung war völlig beabsichtigt. Wie fehlerhafte Registrierungsschlüssel können *einige* GNOME-Shell-Einstellungen Ihre GNOME-Installation beschädigen oder zumindest Probleme verursachen. Möglicherweise müssen Sie die alten Einstellungen über die Befehlszeile wiederherstellen.
+
+Wenn Sie nicht sicher sind, was eine bestimmte Einstellung bewirkt, recherchieren Sie sie zunächst. Das Ändern der Einstellungen einer App ist in Ordnung, aber es ist viel einfacher, sie rückgängig zu machen.
+```
+
+## Voraussetzungen
+
+Für diese Anleitung benötigen Sie Folgendes:
+
+- Rocky Linux inklusiv GNOME.
+- Berechtigung, Software auf Ihrem System zu installieren (`sudo`-Rechte).
+
+## `dconf Editor` — Installation
+
+Gehen Sie zu `Software Center`, suchen Sie nach `Dconf Editor` und klicken Sie auf die Schaltfläche `Installieren`. Dies ist als Default im Standard-Rocky-Linux-Repository verfügbar.
+
+
+
+Um den `dconf-Editor` über die Befehlszeile zu installieren, führen Sie die folgenden Schritte aus:
+
+```bash
+sudo dnf install dconf-editor
+```
+
+## `dconf Editor` – Verwendung
+
+Sobald Sie die App öffnen, sehen Sie drei wichtige Teile der Benutzeroberfläche. Oben wird der Pfad angezeigt. Alle GNOME-Einstellungen liegen in einer Pfad-/Ordnerstruktur vor.
+
+In der oberen rechten Ecke sehen Sie einen Button mit einem kleinen Stern. Dabei handelt es sich um einen `Favorites`-Button, der es Ihnen ermöglicht, den Zustand in der App zu speichern und später schnell und einfach dorthin zurückzukehren. Darunter befindet sich ein zentrales Bedienfeld, in dem Sie Settings-Unterordner auswählen und die Einstellungen nach Bedarf ändern können.
+
+
+
+Links neben der Schaltfläche `Favorites` befindet sich eine Suchschaltfläche, die genau das tut, was man erwartet.
+
+Was ist, wenn Sie einige Einstellungen im Dateimanager ändern möchten? Dem Autor gefällt zum Beispiel die Seitenleiste. Der Autor hält es für ein sehr praktisches Hilfsmittel. Aber vielleicht sind Sie anderer Meinung und Sie möchten etwas verändern. Für diesen Leitfaden muss das also verschwinden.
+
+
+
+Gehen Sie zu `/org/gnome/nautilus/window-state` und Sie werden eine Option namens `start-with-sidebar` sehen. Klicken Sie auf den Schalter und klicken Sie auf die Schaltfläche `Reload `, wenn sie wie im Screenshot unten angezeigt wird:
+
+
+
+Wenn alles gut gelaufen ist, sollte das nächste Dateibrowser-Fenster, das Sie öffnen, wie folgt aussehen:
+
+
+
+Wenn dies nicht der Fall ist, schalten Sie es zurück, klicken Sie erneut auf `Reload` und öffnen Sie ein neues Dateibrowserfenster.
+
+Schließlich können Sie im Fenster `dconf Editor` direkt auf eine beliebige Einstellung klicken, um weitere Informationen (und manchmal auch weitere Settings) anzuzeigen. Hier sehen Sie beispielsweise den Einstellungsbildschirm `initial-size` für den GNOME-Dateimanager.
+
+
+
+## Problembehandlung
+
+Wenn Sie Änderungen an Ihren Einstellungen im `dconf Editor` vornehmen und sich nichts ändert, versuchen Sie eine der folgenden Korrekturen:
+
+1. Starten Sie die Anwendung neu, an der Sie Änderungen vornehmen möchten.
+2. Melden Sie sich ab und wieder an oder starten Sie das System neu, um die GNOME-Shell zu ändern.
+3. Geben Sie auf, denn diese Option ist einfach nicht mehr funktionsfähig.
+
+Was Letzteres betrifft: Ja, die GNOME-Entwickler deaktivieren manchmal die Möglichkeit, Einstellungen zu ändern, sogar mit dem `dconf-Editor`.
+
+Der Autor hat zum Beispiel versucht, die Einstellungen für den Fensterumschalter zu ändern (die Liste der geöffneten Fenster, die angezeigt wird, wenn Sie ++alt+tab++ drücken), aber es ist nichts passiert. Ganz gleich, was der Autor versuchte, der `dconf Editor` hat keinen Einfluss auf einige seiner Funktionen.
+
+Nun könnte es sich um einen Fehler handeln, aber es wäre nicht das erste Mal, dass eine im `dconf-Editor` angezeigte Einstellung tatsächlich deaktiviert und ausgeblendet wird. Wenn dieses Problem auftritt, durchsuchen Sie die `GNOME-Extensions`-Seite, um zu sehen, ob es eine Erweiterung gibt, die die gewünschte Funktion wieder zu GNOME hinzufügt.
+
+## Zusammenfassung
+
+Das ist alles, was Sie wissen müssen, um loszulegen. Denken Sie daran, den Überblick über alle Ihre Änderungen zu behalten, ändern Sie keine Einstellungen, ohne genau zu wissen, was sie bewirken, und haben Sie Spaß daran, die Optionen zu erkunden, die Ihnen (meistens) zur Verfügung stehen.
From 638c84807cc978d9f93fd1cb7ec54ade4321f244 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Sun, 25 Aug 2024 22:43:23 -0400
Subject: [PATCH 03/10] New translations anacron.md (Chinese Simplified)
---
docs/guides/automation/anacron.zh.md | 77 +++++++++++++---------------
1 file changed, 37 insertions(+), 40 deletions(-)
diff --git a/docs/guides/automation/anacron.zh.md b/docs/guides/automation/anacron.zh.md
index f1bb211785..0859c4fa56 100644
--- a/docs/guides/automation/anacron.zh.md
+++ b/docs/guides/automation/anacron.zh.md
@@ -5,24 +5,24 @@ contributors: 史蒂文 斯本
update: 2021-10-20
---
-# anacron - 定期执行命令工具
+# anacron - 自动化命令执行工具
## 先决条件
-* 运行Rocky Linux的机器。
-* 知道如何使用您最喜欢的编辑器来修改命令行环境中的配置文件(例如 *vim*)。
-* 了解基本RPM软件包管理
+- 一台运行Rocky Linux的计算机
+- 知道如何使用您最喜欢的编辑器,来修改命令行环境中的配置文件(例如 *vim*)。
+- 了解基本RPM软件包管理
## 前提条件
-* 您已经了解了bash、 python 或其他脚本/编程工具的基础知识,并且想要自动运行脚本。
-* 您已经以 root 用户的身份登录,或者使用 `su 切换到 root`
+- 您已经掌握了bash、 python 或其他脚本/编程工具的使用,并且想要运行自动化脚本。
+- 您已经以 root 用户的身份登录,或者使用 `su 切换到 root`
## Anacron 介绍
-**anacron 用于定期运行命令,操作频率以天为单位确定。 它适合于不运行24/7的计算机,如笔记本和台式计算机。 假定您有一个预定的任务(例如备份脚本)将在每天早上使用 crontab运行。 当您睡觉时,您的桌面/笔记本电脑将被关闭。 您的备份脚本将不会被执行。 但是,如果您使用anacron,您可以放心,下次打开桌面/膝上型电脑时,备份脚本将会被执行。**
+`anacron`定期运行命令,运行频率以天为单位。 这项指令适用于不全天候工作的计算机,如笔记本和台式计算机。 假如您每天早上需要用crontab执行一个计划的任务(如备份脚本)。 当你入睡时,你的台式机或笔记本电脑是关闭的。 备份脚本将不会执行. 然而,在设定好 `anacron`后,每当打开台式/笔记本电脑时,备份脚本将会自动被执行。
-Anacron 并不是取代crontab,而是对crontab的一种补充。 它们的关系如下:
+Anacron 并不为了取代crontab,而是对crontab的补充。 它们的关系如下:

@@ -45,41 +45,39 @@ shell > rpm -ql cronie-anacron
```
首先检查默认配置文件:
+
```bash
-shell > cat /etc/anacontab
+shell > cat /etc/anacrontab
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
-PATH=/sbin:/usr/sbin:/bin
-MAILTO=root
-# 每个指定作业的默认45分钟延迟随机增加0-45分钟。
-SHELL=/bin/sh
-PATH=/sbin:/usr/sbin:/bin
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
-# 每个指定作业的默认45分钟延迟随机增加0-45分钟。
+# 每个指定作业的默认延迟为45分钟,随机增加0-45分钟。
RANDOM_DELAY=45
-# 指定工作时间范围 在这里代表 3:00~22:00
+# 指定工作时间范围 比如如下示例代表 3:00~22:00
START_HOURS_RANGE=3-22
-# 几天内延迟作业标识符命令
-# 每天启动来检查目录/etc/cron中的文件。 每日执行在5分钟内, 如果今天没有执行, 则执行到下一个
-1 5 cron.daily run-part /etc/cron。 每日
-# 25分钟内每7天检查/etc/cron。 eekly 目录是在启动后执行的,如果不是在一个星期内执行,它将在下一个
-7 25 cron.weekly run-part /etc/cron执行。 eekly
-# 目录/etc/cron中的文件。 每次开始后每个月进行45分钟的一次检查
-@monthly 45 cron.monthly nice run-part /etc/cron.monthly
+# 作业标识符命令的延迟时间(以天为单位)
+# 每天启动来检查目录 /etc/cron.daily 文件在5分钟内被执行, 若今日没有执行, 则推迟到下一次执行
+1 5 cron.daily nice run-parts /etc/cron.daily
+# 启动后检查 /etc/cron.weekly 目录,每7天在25分钟内执行一次,若一周内未执行,则将在下一次执行
+7 25 cron.weekly nice run-parts /etc/cron.weekly
+# 启动后检查 /etc/cron.monthly 目录中的文件, 每月45分钟内执行一次
+@monthly 45 cron.monthly nice run-parts /etc/cron.monthly
```
-**/etc/cron.hourly/** -通过 `journalctl -u crond. ervice`, 你可以知道放在内面的文件实际上被crond调用。 因为这意味着命令将在每小时第一分钟后执行。 例如:
+**/etc/cron.hourly/** 通过 `journalctl -u crond.service`, 你可以知道放在此文件夹内的文件实际上是被 crond.server 服务调用的。 因此这些命令将在每小时第一分钟后执行。 例如:
```bash
shell > cat /etc/cron.d/0hourly
-# 运行每小时作业
+# 每小时执行任务
SHELL=/bin/bash
-PATH=/sbin:/usr/sbin:/usr/bin
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
-01* * * root run-parts /etc/cron.hourly
-```
+01 * * * * root run-parts /etc/cron.hourly
```
+
+```bash
shell > journalctl -u crond.service
- Logs begin at Wed 2021-10-20 19:27:39 CST, end at Wed 2021-10-2023:32:42 CST. October 20 19:27:42 li systemd[1]: Started Command Scheduler.
October 20 19:27:42 li crond[733]: (CRON) STARTUP (1.5.2)
@@ -96,31 +94,30 @@ October 20 20:01:01 li CROND[1897]: (root) CMD (run-parts /etc/cron.hourly)
October 20 21:01:01 li CROND[1922]: (root) CMD (run-parts /etc/cron.hourly)
October 20 22:01:01 li CROND[1947]: (root) CMD (run-parts /etc/cron.hourly)
October 20 23:01:01 li CROND[2037]: (root) CMD (run-parts /etc/cron.hourly)
-
```
欲了解更多配置文件信息,请 [浏览手册页面](https://man7.org/linux/man-pages/man5/anacrontab.5.html)
## 用户使用
-为了使某些文件在这些自动定义的时间内运行。 您需要做的只是复制脚本文件到相关的目录,并确保它拥有** x执行权限 (chmod +x) ** 。 因此,您只需要让系统在这些预定时间其中之一的时间自动运行脚本,这使自动化任务非常容易。
+为了使某些文件在指定的时间内运行, 你需要做的是:复制脚本文件到相关的目录,并确保它拥有 ** 执行权限 (chmod +x) ** 。 因此,您只需要让系统在设定的时间范围内自动运行脚本,这让运行计划任务非常容易。
-让我们每天使用 cron.day来说明/etc/anacrontab的执行过程:
+让我们使用 cron.daily 文件来说明 /etc/anacrontab的执行过程:
-1. Anacron 读取** /var/sool/anacron/cron.day** 文件,文件的内容显示最后一次执行的时间。
-2. 与当前时间相比,如果两次之间的差额超过1天,则每日工作将被执行。
-3. 此工作只能在 03:00-22:00进行。
-4. 检查一个文件是否在系统启动后5分钟内执行。 当第一个执行时,将会随机延迟0~45分钟来执行下一个。
-5. 使用好参数来指定默认的优先级,并使用运行器参数来执行/etc/cron.daily/目录中的所有可执行文件。
+1. `anacron` 读取 **/var/spool/anacron/cron.daily** 文件, 对应文件内容显示最后一次执行时间.
+2. 与当前时间相比,如果二者相差达到1天,那么corn.daily将被执行。
+3. 此任务只能在 03:00-22:00进行。
+4. 检查一个文件是否在系统启动后5分钟内执行。 当第一个文件被执行后,将会随机延迟0~45分钟来执行第二个。
+5. 使用nice参数指定默认优先级,并使用run-parts参数运行/etc/cron.daily/目录中的所有可执行文件。
-## 命令相关的
+## 相关命令
-使用命令 `anacron`, 通常使用的选项有:
+命令 `anacron`, 通常使用的参数有:
-| 选项 | 说明 |
+| 参数 | 说明 |
| -- | -------------------------- |
| -f | 执行所有作业,忽略时间戳 |
| -u | 将时间戳更新到当前时间,而不执行任何操作 |
-| -T | 测试配置文件/etc/anacrontab 的有效性 |
+| -T | 测试配置文件/etc/anacrontab 是否有效 |
欲了解更多帮助信息,请 [浏览手册页面](https://man7.org/linux/man-pages/man8/anacron.8.html)
From 04ec2bf92bb0f600f7b3f6c7cafa8e70bec86b2f Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Mon, 26 Aug 2024 06:20:37 -0400
Subject: [PATCH 04/10] New translations cron_jobs_howto.md (Chinese
Simplified)
---
docs/guides/automation/cron_jobs_howto.zh.md | 159 ++++++++++---------
1 file changed, 85 insertions(+), 74 deletions(-)
diff --git a/docs/guides/automation/cron_jobs_howto.zh.md b/docs/guides/automation/cron_jobs_howto.zh.md
index bc71892656..2d04a3aeea 100644
--- a/docs/guides/automation/cron_jobs_howto.zh.md
+++ b/docs/guides/automation/cron_jobs_howto.zh.md
@@ -1,39 +1,42 @@
---
title: cron - 自动化命令
author: 史蒂文 斯本
-contributors: 埃泽基尔·布鲁尼
-update: 2021-10-22
+contributors: 埃泽奎尔-布鲁尼、甘娜-日尔诺娃
+tested on: 2021-10-22
+tags:
+ - 工作自动化
+ - 自动化
+ - cron
---
-# 使用 `cron` 和 `crontab 自动处理`
+# 使用 `cron` 和 `crontab ` 自动处理
## 先决条件
-* 运行Rocky Linux的机器。
-* 能够使用编辑器(这里使用`vi`) 在命令行中的修改配置文件
+- 一台运行Rocky Linux的计算机
+- 使用自己喜欢的编辑器,从命令行修改配置文件(这里使用 `vi`)
-## 前提条件
+## 前提条件
-* 有关于基础、python或其他脚本/编程工具的基本知识,以及希望自动运行脚本。
-* 您要么以根用户身份运行,要么已用 `sudo-s`
- **切换到 root (您可以作为自己的用户在自己的目录中运行某些脚本。 在这种情况下,不需要切换到 root。)**
-* 我们假定你非常酷。
+- 有关于基础、python或其他脚本/编程工具的基本知识,以及希望自动运行脚本。
+- 要么以超级管理员身份运行,要么用 `sudo -s` 命令获取权限运行
+ **(你可以作为个人用户在自己的私人目录中运行某些脚本。 在这种情况下,不需要切换到 root。 )**
## 介绍
-Linux为流程自动化提供了 _cron_ 系统,一个基于时间的作业计划器。 它是很简单,但却相当强大。 想要一个脚本或程序每天在 5 PM运行吗? 这是您设置的地方。
+Linux为流程自动化提供了 *cron* 系统,一个基于时间的作业计划器。 它是很简单,但却相当强大。 想要一个脚本或程序在每天下午 5 点运行吗? 设置这里就对了。
-_crontab_ 基本上是一个用户添加自己的自动任务和工作的列表。 而且它有一些可以进一步简化事情的备选办法。 本文将探讨其中的一些问题。 对于那些具有一些经验的人来说,这是一个很好的温习,新用户可以将 `cron` 系统添加到他们的知识中。
+*crontab* 本质上是一个列表,用户可以在其中添加自己的自动化任务和作业,它有许多选项可以进一步简化事情。 本文将探讨其中的一些问题。 对于那些具有一些经验的人来说,这是一个很好的温习,新用户可以将 `cron` 系统添加到他们的知识中。
-`anacron` 在这里以 `cron` "dot" 目录的形式简短讨论。 `anacron` 由 `cron`运行, 而且对并非一直都在使用的机器,如工作站和笔记本计算机具有优势。 原因是 `cron` 按计划运行任务, 如果计划任务时机器已关闭,任务将不运行。 使用 `anacron` 当机器再次运行时,任务会被拿起并运行。 即使计划运行是过去。 `anacron` 不过,在时间不准确的情况下,使用更多的随机方式来运行任务。 这对工作站和膝上型计算机来说是可以的,但对服务器来说却是不合适的。 这可能是像服务器备份这样的问题,而这种备份需要在特定时间运行。 那就是 `cron` 继续为服务器管理员提供最好的解决方案。 尽管如此,服务器管理员和工作站或笔记本电脑用户可以从这两种方法中获得一些好处。 您可以根据您的需要轻松地混合和匹配。 关于 `anacron` 的更多信息,见 [anacron - 自动命令](anacron.md)。
+这里简要讨论的是 `anacron` 与 `cron.` 开头的目录的关系。 `cron`由`anacron`运行,对于并非始终处于运行状态的机器(如工作站和笔记本电脑)很有帮助。 原因是 `cron` 按计划运行任务, 如果计划任务该执行时机器已关闭,任务将不会运行。 当机器再次运行时,使用 `anacron` 任务会被拿起并运行。 即使计划运行是过去。 不过,`anacron`使用了一种更随机的方法来运行计时不准确的任务。 这对工作站和笔记本电脑来说是合适的,但对服务器来说则不然。 对于服务器备份等需要在特定时间运行作业的事情来说,这可能是一个问题。 这就是`cron`为服务器管理员提供最佳解决方案的地方。 不过,服务器管理员和工作站或笔记本电脑用户可以从这两种方法中获益。 您可以根据您的需要轻松地混合和匹配。 关于 `anacron` 的更多信息,见 [anacron - 自动命令](anacron.md)。
-### 启动简单- `cron.d` 目录
+### 轻松开始之 `cron.` 开头的目录
-现在构建到许多版本的 Linux 系统中, `cron` "dot" 目录有助于快速自动处理。 这些将被 `cron` 根据他们的命名约定进行调用。 然而,他们被不同的调用,基于谁来调用他们, `anacron` 或 `cron` 默认行为是使用 `anacron`, 但这可以由服务器、 工作站或笔记本管理员来更改。
+现在,许多版本的Linux系统都内置了`cron.` 开头的目录,有助于快速自动化进程。 这些将被 `cron` 根据他们的命名约定进行调用。 然而,根据分配给调用它们的进程,`anacron`或`cron`,它们的运行方式不同。 默认行为是使用 `anacron`, 但这可以由服务器、 工作站或笔记本管理员来更改。
-#### 服务器
+#### 服务器
-如导言所述, `cron` 通常运行 `anacron` 这些天来执行这些"dot"目录中的脚本。 你 *可能*, 但也想要在服务器上使用这些"点"目录, 如果情况是这样。 然后您可以采取两个步骤来确保这些"点"目录是按严格的时间表运行的。 为此,我们需要安装一个软件包并删除另一个软件包:
+如介绍中提到,`cron` 现在通常使用 `anacron` 服务来运行这些 cron. 开头目录中的脚本。 你 *可能* 也想要在服务器上使用这些目录, 如果情况是这样, 你可以采取两个步骤来确保这些目录是按严格的时间表运行的。 为此,我们需要安装一个软件包并删除另一个软件包:
`dnf install cronie-noanacron`
@@ -41,54 +44,54 @@ _crontab_ 基本上是一个用户添加自己的自动任务和工作的列表
`dnf remove cronie-anacron`
-正如你可能期望的那样,这将从服务器上移除 `anacron` 并恢复到严格的计划中的“dot”目录内的任务。 这个定义在了: `/etc/cron.d/dailyjob`, 其中包含以下内容:
+这将从服务器上移除 `anacron` 并恢复到按照严格的时间表在目录中运行任务。 在 `/etc/cron.d/dailyjobs` 文件内控制具体时间表, 包括以下内容:
-```
-# 每日运行,每周运行, 如果未安装 cronie-anacron
+```bash
+# 如果未安装 cronie anacron,则运行每日、每周和每月作业
SHELL=/bin/bash
-PATH=/sbin:/usr/sbin:/bin
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
-# run-parts
-02 * * * * root [ ! -f /etc/cron.hourly/0anacron ] && run-part /etc/cron.day
-22 4 * 0 root [ ! -f /etc/cron.hourly/0anacron ] && run-parts /etc/cron.weekly
+# 运行模块
+02 4 * * * root [ ! -f /etc/cron.hourly/0anacron ] && run-parts /etc/cron.daily
+22 4 * * 0 root [ ! -f /etc/cron.hourly/0anacron ] && run-parts /etc/cron.weekly
42 4 1 * * root [ ! -f /etc/cron.hourly/0anacron ] && run-parts /etc/cron.monthly
```
-这就意味着:
+当前配置将转化为以下内容:
-* 运行脚本 `cron.daily` 于每日04:02:00。
-* 运行脚本`cron.weekly` 于每周的周日 04:22:00。
-* 运行脚本 `cron.monthly` 于每月第一天04:42:00。
+- 每天 04:02:00 运行 `cron.daily` 目录下的所有脚本
+- 每周周日 04:22:00 运行 `cron.weekly` 目录中的所有脚本
+- 在每月的第一天 04:42:00 运行 `cron.monthly` 目录中的所有脚本。
-#### 工作站
+#### 工作站
-如果您想要在一个工作站或笔记本电脑在 `cron` "."目录中运行脚本 那么你不需要做任何特殊事。 只需将您的脚本文件复制到相关目录,并确保它是可执行的。 以下是这些目录:
+如果你想在工作站或笔记本电脑的 `cron.` 开头的目录中添加脚本文件,你不需要做任何复杂的操作。 只需将脚本文件复制到相关目录,并确保它是可执行的。 以下是这些目录:
-* `/etc/cron.hourly` - 放置在这里的脚本将每小时运行一次。 (这是由 `cron` 运行的,无论 `anacron` 是否安装)
-* `/etc/cron.daily` - 放在这里的脚本将每天运行。 `anacron` 调整了这些任务的时间。 (参考提示)
-* `/etc/cron.week` - 放置在这里的脚本每7天运行一次。 (参考提示)
-* `/etc/cron.monthly` - 放在这里的脚本将每月运行。 (参考提示)
+- `/etc/cron.hourly` - 在这个目录下的脚步文件将每过一小时运行一次 (由 `cron` 运行, 无论 `anacron` 是否存在)
+- `/etc/cron.daily` - 放在这个目录的脚本将每天运行一次, `anacron` 调整了这些任务的时间。 (具体调整见提示)
+- `/etc/cron.weekly` - 放置在这个目录的脚本每7天运行一次, 基于上次运行时的时间(见提示)
+- `/etc/cron.monthly` - 放在这里的脚本将每月运行, 基于上次运行时的时间(见提示)
-!!! 提示
+!!! tip "提示"
- 这些活动很可能每天、每周和每月都会在类似(但并非完全相同)的情况下进行。 更确切的运行时间,请参阅下面的@options
+ 这些脚本很可能每天、每周和每月都会在类似 (但并非完全相同) 的情况下运行。 更确切的运行时间,请参阅下面的@options
-所以让系统自动运行您的脚本,让您也能正常运行, 并且允许他们在指定的时间段内运行,然后它会使任务自动化变得非常容易。
+只要你擅长让系统自动运行你的脚本,并允许它们在指定时间段的某个时间运行,它就能使任务自动化。
-!!! 说明
+!!! note "注意"
- 没有规定说服务器管理员不能随意运行 'anacron' 的"."目录中的脚本。 对此使用的大小写将是一个不具有时间敏感性的脚本。
+ 没有规定说服务器管理员不能使用 `anacron` 用随机的时间范围内在 cron. 开头的目录中运行脚本。 这样做的用例是一个对时间不敏感的脚本。
### 创建您自己的 `cron`
-当然,如果自动、随机化的时间在 [对超过](#for-workstations)的工作站来说不那么合适, 和 [中的预定时间。对于前面提到](#for-servers)的服务器,你可以创建自己的计划任务。 在这个例子中,我们认为您是root用户。 [见前提条件](#assumptions) 要做到这一点,请输入以下内容:
+如果[上述工作站](#for-workstations)中的自动随机时间和[上述服务器](#for-servers)中的计划时间不能很好地工作,你可以创建自己的任务计划。 在这个例子中,假设您是以root用户的身份执行此操作。 [如前所述](#assumptions), 要创建自己的 cron,请输入以下内容:
`crontab -e`
-这将会拉取根用户的 `crontab` 内容,将会显示在您选定的编辑器中,可能看起来就像这样。 继续阅读里面的注释内容,因为它包含了我们下一步操作的说明:
+这将会拉取 root 用户的 `crontab` 内容,将会显示在你选定的编辑器中,看起来像这样。 继续阅读里面的注释内容,因为它包含了我们下一步操作的说明:
-```
+```text
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
@@ -114,76 +117,84 @@ MAILTO=root
# m h dom mon dow command
```
-请注意这个特殊的 `crontab` 文件有自己的文档内置. 情况并非总是如此。 在容器或最低操作系统上修改 `crontab` 时, `crontab` 将是一个空文件,除非已经有条目已经放入它。
+请注意,这个特定的 `crontab` 文件内置了一些自己的文档。 情况并非总是如此。 在容器或极简主义操作系统上修改`crontab`时,除非其中已有计划任务,否则`crontab`将是一个空文件。
+
+让我们假设有一个备份脚本,想要在晚上 10 点运行。 `crontab` 使用了一个24小时制,所以这将是22:00。 让我们假定备份脚本叫做“backup”,它目前位于 */usr/local/sbin* 目录中。
+
+!!! note "注意"
+
+ 请记住,这个脚本也需要可执行(`chmod +x`) 权限,才能被 `cron` 运行。
+
+列出当前正在运行的任务
-让我们假设我们有一个备份脚本,我们想要在晚上运行10个PM。 `crontab` 使用了一个24小时钟,所以这将是22:00。 让我们假定备份脚本叫做“backup”,它目前位于 _/usr/local/sbin_ 目录中。
+`crontab -l`
-!!! 说明
+列出用户创建的所有任务
- 请记住,这个脚本也需要可执行(`chmod +x`),才能运行 `cron` 。
+`crontab -l -u `
-要添加作业,我们将:
+要添加任务,你可以:
`crontab -e`
-`crontab` 表示"cron table",文件的格式实际上是一个松散的表布局。 现在我们在 `crontab`中,转到文件的底部,然后添加您的新条目。 如果您使用 `vi` 作为您的系统默认编辑器,那么使用以下按键完成:
+`crontab`代表“cron-table”,文件的格式实际上是一个松散的表格布局。 现在我们在 `crontab` 文件中,到文件末尾,然后添加你的新条目。 如果你使用 `vi` 作为系统默认编辑器,那么使用以下按键完成上述操作:
-`Shift : $`
+++shift+colon+"$"++
-现在你处于文件底部, 插入一行并输入简短的注释来描述您的条目正在发生什么事情。 这是通过在行首添加一个“#”来完成的:
+现在你处于文件底部, 插入一行并输入简短的注释来描述您的条目要执行什么任务。 这是通过在行首添加一个“#”来完成的:
-`# 每晚在 10PM 上备份系统`
+`# 每晚在 10 点备份系统`
-现在按回车键。 您仍然应该在插入模式,下一步是添加您的条目。 如 `crontab` 上面的注释 所示,这将是 **m** 分钟, **h** 小时数, **dom** (day of month) 一个月的某天, **mon** 月份 , **dow**(day of week) 一周的某天。
+点击 ++enter++ 键. 当前仍然应该在插入模式,下一步是添加条目。 如注释 `crontab` 所述,指定分钟(minute) 用 **m**、指定小时(hour) 用 **h**、指定月份中的某一天(day of month) 用 **dom** 、 指定具体月份(month) 用 **mon** 和指定一周中的某一天(day of week) 用 **dow** 配置.
-如果每天10:00时运行我们的备份脚本,该条目看起来就像这样:
+要想每天晚上 10:00 时运行我们的备份脚本,该条目看起来就像这样:
-`00 22 * * /usr/local/sbin/backup`
+`00 22 * * * /usr/local/sbin/backup`
-这表明脚本是每月10 PM,每个月每天、每个月和每周的每一天都是如此。 显然,这是一个非常简单的例子,当你需要具体的时候,事情可能会变得相当复杂。
+这表明脚本是每天下午 10 点运行,每个月和每周的每一天都是如此。 这是一个简单的例子,当你需要了解细节时,事情可能会变得相当复杂。
-### `crontab的@选项`
+### `crontab` 的 @options
-另一种在严格规定的时间(即白天、周、月份、年份等)进行工作的方式 使用 @options 提供了使用更加自然的时间的能力。 @options 由以下内容组成:
+在严格计划的时间(即日、周、月、年等)运行作业的另一种方法是使用 @options ,它提供了更自然的计时能力。 @options 由以下内容组成:
-* `@hourly` 每小时 0 分钟运行脚本。 (这正是将您的脚本放入 `/etc/cron.hourly` 的结果)
-* `@daily` 每天午夜运行脚本。
-* `@weekly` 每周在星期日午夜运行脚本。
-* `@monthly` 每月在该月第一天午夜运行脚本。
-* `@year` 每年在1月第一天午夜运行脚本。
-* `@reboot` 仅在系统启动时运行脚本。
+- `@hourly` 每天每隔一小时运行一次脚本,时间为小时后0分钟 (这也正是将脚本放在 `/etc/cron.hourly` 中的结果).
+- `@daily` 每天午夜运行脚本。
+- `@weekly` 每周在星期日午夜运行脚本。
+- `@monthly` 每月在该月第一天午夜运行脚本。
+- `@year` 每年在1月第一天午夜运行脚本。
+- `@reboot` 仅在系统启动时运行脚本。
-!!! 说明
+!!! note "注意"
使用这些`crontab`条目绕过了`anacron`系统,并恢复到`crond.service`,不管是否安装了`anacron`。
对于我们的备份脚本示例,如果我们使用 @daily 选项在午夜运行备份脚本,那么该条目看起来就像这样:
-`@day/usr/local/sbin/backup`
+`@daily /usr/local/sbin/backup`
### 更多复杂选项
-到目前为止,我们所谈到的一切都有相当简单的选择,但是更复杂的任务时间是怎样呢? 比如说,你想要每隔10分钟运行一次你的备份脚本(可能不是一个非常实际的事情需要做的。 但,嘿,这是一个例子!)。 要做到这一点,您将写:
+到目前为止,使用的解决方案都是非常简单的选择,但更复杂的任务时间呢? 假设你想在一天中每10分钟运行一次备份脚本(可能不是一件实际的事情,但这只是一个例子!)。 要完成这件事情, 你的 crontab 要这样写:
`*/10 * * * * /usr/local/sbin/backup`
-如果你想每隔10分钟、但仅在星期一、星期三和星期五运行备份怎么办?
+如果你想每10分钟运行一次备份,但只在周一、周三和周五运行,可以这么写:
`*/10 * * * 1,3,5 /usr/local/sbin/backup`
-除星期六和星期天外,每隔10分钟?
+除了周六和周日,每天每10分钟运行一次可以这样写:
`*/10 * * * 1-5 /usr/local/sbin/backup`
-在表中,逗号让您在一个字段中指定单独的条目。 当破折号允许您在字段中指定一个值范围。 这可以同时在任何一个字段和多个字段发生。 如您所见,事情可能变得相当复杂。
+在表中,逗号用于指定字段中的单个条目,破折号用于指定字段内的值范围。 任何字段均适用这个规则,多字段同时配置的情况下同时生效。 正如你所看到的,事情可能会变得相当复杂。
-当决定何时运行脚本时,您需要花费时间并规划它,尤其是如果标准很复杂。
+当决定何时运行脚本时,你需要花费时间并规划它,尤其是很复杂的情况下。
## 结语
-_cron/crontab_ 系统是Rocky Linux系统管理员或桌面用户非常强大的工具。 它可以允许您自动执行任务和脚本,这样您就不必记住手动运行它们了。 这里提供了更多的例子:
+*cron/crontab* 系统是Rocky Linux系统管理员或桌面用户的强大工具。 它允许你自动化任务和脚本,这样就不必按时手动运行它们。 更复杂的例子如下:
-* 对于那些 **不**是24小时运行的机器,浏览 [anacron - 自动化命令](anacron.md).
-* 关于 `cron` 的简明描述,请参阅 [cronie - 计划任务](cronie.md)
+- 对于那些 **不**是24小时运行的机器,浏览 [anacron - 自动化命令](anacron.md).
+- 关于 `cron` 的简明描述,请参阅 [cronie - 计划任务](cronie.md)
-虽然基础知识非常容易,但你可以得到更多的复杂程度。 关于 `crontab` 的更多信息,直到 [crontab 手册页面](https://man7.org/linux/man-pages/man5/crontab.5.html)。 在大多数系统中,您也可以输入 `man crontab` 获取额外的命令细节。 您也可以简单地进行网页搜索“crontab”,为您提供丰富的结果,帮助您提高 `crontab` 技能。
+虽然基础并不难,但选项可能很复杂。 有关 `crontab` 的更多信息,请访问 [crontab手册页面 ](https://man7.org/linux/man-pages/man5/crontab.5.html)。 在大多数系统上,你还可以输入` man crontab ` 以获取命令详细信息。 你也可以在网上搜索“crontab”,这将为你提供丰富的结果,帮助你调整你的 ` crontab ` 技能。
From 232ea7b73ae733feb2ee229be0d17540d5e41d34 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Mon, 26 Aug 2024 18:17:19 -0400
Subject: [PATCH 05/10] New translations businessapps.md (French)
---
docs/desktop/tools/businessapps.fr.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/desktop/tools/businessapps.fr.md b/docs/desktop/tools/businessapps.fr.md
index 996d1895b7..598b5ce282 100644
--- a/docs/desktop/tools/businessapps.fr.md
+++ b/docs/desktop/tools/businessapps.fr.md
@@ -187,7 +187,7 @@ Si vous avez besoin de la compatibilité avec Microsoft Office, en particulier p
WPS Office a une compatibilité avec Microsoft Office légèrement meilleure que LibreOffice, mais il n'est pas aussi compatible qu'OnlyOffice. Il possède également moins de fonctionnalités et est moins personnalisable. Voici un extrait de leur blog :
-
+
Leur objectif principal est de créer une expérience utilisateur plus simple et plus accessible qui pourrait mieux correspondre à ce que vous attendez.
From 50ee1ff5482561a6fbf8c9a03f1211557fc25b36 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Tue, 27 Aug 2024 04:04:40 -0400
Subject: [PATCH 06/10] New translations disa_stig_part3.md (Ukrainian)
---
docs/books/disa_stig/disa_stig_part3.uk.md | 40 +++++++++++-----------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/docs/books/disa_stig/disa_stig_part3.uk.md b/docs/books/disa_stig/disa_stig_part3.uk.md
index fee46237e1..4c15ad2eb1 100644
--- a/docs/books/disa_stig/disa_stig_part3.uk.md
+++ b/docs/books/disa_stig/disa_stig_part3.uk.md
@@ -38,16 +38,16 @@ sed -i 's/^\([^#].*\)**/# \1/g' /etc/httpd/conf.d/welcome.conf
dnf -y remove httpd-manual
dnf -y install mod_session
-echo “MaxKeepAliveRequests 100” > /etc/httpd/conf.d/disa-apache-stig.conf
-echo “SessionCookieName session path=/; HttpOnly; Secure;” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “Session On” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “SessionMaxAge 600” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “SessionCryptoCipher aes256” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “Timeout 10” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “TraceEnable Off” >> /etc/httpd/conf.d/disa-apache-stig.conf
-echo “RequestReadTimeout 120” >> /etc/httpd/conf.d/disa-apache-stig.conf
-
-sed -i “s/^#LoadModule usertrack_module/LoadModule usertrack_module/g” /etc/httpd/conf.modules.d/00-optional.conf
+echo "MaxKeepAliveRequests 100" > /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionCookieName session path=/; HttpOnly; Secure;" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "Session On" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionMaxAge 600" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionCryptoCipher aes256" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "Timeout 10" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "TraceEnable Off" >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "RequestReadTimeout 120" >> /etc/httpd/conf.d/disa-apache-stig.conf
+
+sed -i "s/^#LoadModule usertrack_module/LoadModule usertrack_module/g" /etc/httpd/conf.modules.d/00-optional.conf
sed -i "s/proxy_module/#proxy_module/g" /etc/httpd/conf.modules.d/00-proxy.conf
sed -i "s/proxy_ajp_module/#proxy_ajp_module/g" /etc/httpd/conf.modules.d/00-proxy.conf
sed -i "s/proxy_balancer_module/#proxy_balancer_module/g" /etc/httpd/conf.modules.d/00-proxy.conf
@@ -81,7 +81,7 @@ systemctl start httpd
* Technical - 24 controls
* Operational - 23 controls
-У цій статті ми не будемо розглядати «чому» ці зміни, а лише те, що має статися, якщо це технічний контроль. Якщо ми нічого не можемо змінити, як у випадку з оперативним контролем, поле **Fix:** буде відсутнім. Хороша новина в багатьох із цих випадків, це вже за замовчуванням у Rocky Linux 8, тому вам взагалі нічого не потрібно змінювати.
+Ми не збираємося розглядати «чому» ці зміни в цій статті; ми просто обговоримо, що має статися, якщо це технічний контроль. Якщо ми нічого не можемо змінити, як у випадку з оперативним контролем, поле **Fix:** буде відсутнім. Хороша новина в багатьох із цих випадків, це вже за замовчуванням у Rocky Linux 8, тому вам взагалі нічого не потрібно змінювати.
## Apache 2.4 V2R5 – Інформація про сервер
@@ -165,7 +165,7 @@ dnf remove httpd-manual
```bash
dnf install mod_session
-echo “SessionCookieName session path=/; HttpOnly; Secure;” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionCookieName session path=/; HttpOnly; Secure;" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214269)** Веб-сервер Apache повинен видалити всі шифри експорту, щоб захистити конфіденційність і цілісність переданої інформації.
@@ -217,7 +217,7 @@ echo “SessionCookieName session path=/; HttpOnly; Secure;” >> /etc/httpd/co
**Fix:**
```bash
-echo “MaxKeepAliveRequests 100” > /etc/httpd/conf.d/disa-apache-stig.conf
+echo "MaxKeepAliveRequests 100" > /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214229)** Веб-сервер Apache повинен керувати сеансом на стороні сервера.
@@ -227,7 +227,7 @@ echo “MaxKeepAliveRequests 100” > /etc/httpd/conf.d/disa-apache-stig.conf
**Fix:**
```bash
-sed -i “s/^#LoadModule usertrack_module/LoadModule usertrack_module/g” /etc/httpd/conf.modules.d/00-optional.conf
+sed -i "s/^#LoadModule usertrack_module/LoadModule usertrack_module/g" /etc/httpd/conf.modules.d/00-optional.conf
```
**(V-214266)** Веб-сервер Apache повинен забороняти або обмежувати використання незахищених або непотрібних портів, протоколів, модулів і/або служб.
@@ -320,7 +320,7 @@ sed -i "s/proxy_connect_module/#proxy_connect_module/g" /etc/httpd/conf.modules.
**Fix:**
```bash
-echo “Session On” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "Session On" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214250)** Веб-сервер Apache повинен робити ідентифікатори сеансу недійсними після виходу користувача розміщеної програми або іншого завершення сеансу.
@@ -330,7 +330,7 @@ echo “Session On” >> /etc/httpd/conf.d/disa-apache-stig.conf
**Fix:**
```bash
-echo “SessionMaxAge 600” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionMaxAge 600" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214252)** Веб-сервер Apache має генерувати ідентифікатор сеансу достатньо довгий, щоб його неможливо було вгадати за допомогою грубої сили.
@@ -340,7 +340,7 @@ echo “SessionMaxAge 600” >> /etc/httpd/conf.d/disa-apache-stig.conf
**Fix:**
```bash
-echo “SessionCryptoCipher aes256” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "SessionCryptoCipher aes256" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214255)** Веб-сервер Apache має бути налаштований відповідно до робочих вимог розміщеної програми.
@@ -350,7 +350,7 @@ echo “SessionCryptoCipher aes256” >> /etc/httpd/conf.d/disa-apache-stig.con
**Fix:**
```bash
-echo “Timeout 10” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "Timeout 10" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214254)** Веб-сервер Apache має бути побудований таким чином, щоб перейти у відомий безпечний стан, якщо не вдається ініціалізувати систему, завершити роботу чи завершити роботу.
@@ -366,7 +366,7 @@ echo “Timeout 10” >> /etc/httpd/conf.d/disa-apache-stig.conf
**Fix:**
```bash
-echo “TraceEnable Off” >> /etc/httpd/conf.d/disa-apache-stig.conf
+echo "TraceEnable Off" >> /etc/httpd/conf.d/disa-apache-stig.conf
```
**(V-214230)** Веб-сервер Apache повинен використовувати криптографію для захисту цілісності віддалених сеансів.
@@ -386,7 +386,7 @@ sed -i "s/^#SSLProtocol.*/SSLProtocol -ALL +TLSv1.2/g" /etc/httpd/conf.d/ssl.con
**Fix:**
```bash
-echo “RequestReadTimeout 120” >> /etc/httpd/conf.d/disa-stig-apache.conf
+echo "RequestReadTimeout 120" >> /etc/httpd/conf.d/disa-stig-apache.conf
```
**(V-214270)** Веб-сервер Apache повинен інсталювати оновлення програмного забезпечення, пов’язані з безпекою, протягом встановленого періоду часу, керованого авторитетним джерелом (наприклад, IAVM, CTO, DTM та STIG).
From 18dbccbc1f704e1b859d76a0466cf0c4d0abc138 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Tue, 27 Aug 2024 04:05:45 -0400
Subject: [PATCH 07/10] New translations 1_regular_expressions_vs_wildcards.md
(Ukrainian)
---
.../books/sed_awk_grep/1_regular_expressions_vs_wildcards.uk.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/docs/books/sed_awk_grep/1_regular_expressions_vs_wildcards.uk.md b/docs/books/sed_awk_grep/1_regular_expressions_vs_wildcards.uk.md
index 3965237fff..3dd9e2f690 100644
--- a/docs/books/sed_awk_grep/1_regular_expressions_vs_wildcards.uk.md
+++ b/docs/books/sed_awk_grep/1_regular_expressions_vs_wildcards.uk.md
@@ -154,3 +154,5 @@ ERE також підтримує символи зі спеціальними
- [regexr](https://regexr.com/)
- [regelearn](https://regexlearn.com/)
- [coding](https://coding.tools/regex-tester)
+
+* [cyrilex](https://extendsclass.com/regex-tester.html)
From 4ac37e6f113f683357e08c3c560ecae09195bc4f Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Tue, 27 Aug 2024 06:09:57 -0400
Subject: [PATCH 08/10] New translations 053-load-balancer-proxies-squid.md
(Ukrainian)
---
.../053-load-balancer-proxies-squid.uk.md | 568 ++++++++++++++++++
1 file changed, 568 insertions(+)
create mode 100644 docs/books/web_services/053-load-balancer-proxies-squid.uk.md
diff --git a/docs/books/web_services/053-load-balancer-proxies-squid.uk.md b/docs/books/web_services/053-load-balancer-proxies-squid.uk.md
new file mode 100644
index 0000000000..b81006e0e5
--- /dev/null
+++ b/docs/books/web_services/053-load-balancer-proxies-squid.uk.md
@@ -0,0 +1,568 @@
+---
+author: Antoine Le Morvan
+contributors: null
+title: Частина 5.3 Squid
+tags:
+ - squid
+ - proxy
+ - http
+---
+
+## Squid
+
+У цьому розділі ви дізнаєтеся про Squid, проксі-кеш HTTP.
+
+****
+
+**Цілі**: Ви дізнаєтеся, як:
+
+:heavy_check_mark: встановити squid\
+:heavy_check_mark: налаштувати його як проксі та кешувати вміст HTTP.
+
+:checkered_flag: **squid**, **proxy**, **HTTP**
+
+**Знання**: :star: :star:\
+**Складність**: :star: :star:
+
+**Час читання**: 20 хвилин
+
+****
+
+### Загальні положення
+
+Налаштування проксі-сервера передбачає вибір між двома типами архітектури:
+
+- Стандартна архітектура проксі-сервера, що вимагає спеціальної конфігурації кожного клієнта та його веб-браузерів
+- Приєднана архітектура проксі-сервера, яка передбачає перехоплення кадрів, надісланих клієнтом, і переписування їх на проксі-сервер
+
+У будь-якому випадку відбувається розрив мережі: клієнт більше не може фізично звертатися до віддаленого сервера напряму, не проходячи через проксі-сервер.
+
+Два брандмауери захищають робочу станцію клієнта, але ніколи не спілкуються безпосередньо із зовнішньою мережею.
+
+
+
+!!! Note "Примітка"
+
+```
+Для цієї архітектури потрібна конфігурація браузера на клієнтській робочій станції.
+```
+
+Немає необхідності налаштовувати всі клієнтські робочі станції з приєднаним проксі.
+
+Конфігурація відбувається на рівні шлюзу, де він отримує запити клієнтів і прозоро переписує кадри для надсилання їх на проксі.
+
+
+
+!!! Note "Примітка"
+
+```
+Ця архітектура вимагає певної конфігурації на маршрутизаторі.
+```
+
+У випадку стандартної архітектури проксі-сервера або власного проксі-сервера одним із основних інтересів цього типу служби є діяти як кеш.
+
+Таким чином, файл, завантажений один раз із WAN (можливо, з повільнішого з’єднання, ніж LAN), зберігається в пам’яті в кеші проксі-сервера для використання наступними клієнтами. Таким чином відбувається оптимізація пропускної здатності повільного з’єднання.
+
+Як ви побачите пізніше, це не єдине використання проксі.
+
+Розгортання проксі може:
+
+- Заборонити доступ до певних ресурсів на основі різних параметрів
+- Налаштувати аутентифікацію та моніторинг активності клієнтів в Інтернеті
+- Налаштувати ієрархію розподілених кешів
+- Приховати архітектуру локальної мережі з точки зору WAN (скільки клієнтів є в локальній мережі?)
+
+Серед переваг можна виділити наступні:
+
+- Анонімність в Інтернеті
+- Автентифікація
+- Журнал активності клієнта
+- Фільтрування
+- Обмеження доступу
+- Оптимізація пропускної здатності
+- Безпека
+
+!!! Note "Примітка"
+
+```
+Впровадження автентифікації блокує багато зловмисних впливів вірусів на локальну мережу.
+```
+
+!!! Warning "Важливо"
+
+```
+Служба проксі стає критично важливою службою, що вимагає високої доступності.
+```
+
+Під час роботи з проксі-сервером Squid адміністратор повинен використовувати журнали. Тому важливо знати основні коди відповідей HTTP.
+
+| Код | Категорії |
+| --- | ---------------------- |
+| 1XX | Info "Інформація" |
+| 2XX | Успіх |
+| 3XX | Перенаправлення |
+| 4XX | Помилка запиту клієнта |
+| 5XX | Помилка сервера |
+
+Приклади:
+
+- 200: ok
+- 301: Переміщено назавжди
+- 302: Тимчасово переміщено
+- 304: Не змінено
+- 400: Поганий запит
+- 401: Неавторизовано
+- 404: не знайдено
+
+#### Про Squid
+
+Squid підтримує протоколи HTTP і FTP.
+
+Переваги встановлення рішення на базі сервера Squid:
+
+- Апаратні рішення дорогі
+- Розробляється з 1996 року
+- Випущено за ліцензією GNU/GPL
+
+##### Розміри
+
+- Забезпечує високу доступність
+- Для кешування використовує швидкі жорсткі диски
+- Оперативна пам'ять і ЦП повинні мати правильний розмір
+
+!!! Note "Примітка"
+
+```
+Дозвольте 14 МБ оперативної пам’яті на ГБ дискового кешу.
+```
+
+### Встановлення
+
+Встановіть пакет `squid`:
+
+```bash
+sudo dnf install squid
+```
+
+!!! Warning "Важливо"
+
+```
+Слідкуйте за тим, щоб не запускати службу, поки кеш не буде ініціалізовано!
+```
+
+#### Дерево та файли сервера Squid
+
+Єдиний файл конфігурації – `/etc/squid/squid.conf`.
+
+Журнали служби (зупинка та перезапуск) знаходяться в `/var/log/squid.cache.log`, тоді як клієнтські запити знаходяться в `/var/log/squid/access.log`. За замовчуванням файли кешу знаходяться в `/var/spool/squid/`.
+
+#### Команда `squid`
+
+Команда `squid` керує сервером squid.
+
+Синтаксис команди:
+
+```bash
+squid [-z|-s|-k parse|-k rotate]
+```
+
+| Опція | Опис |
+| ----------- | ----------------------------------------- |
+| `-z` | Ініціалізує каталоги кешу |
+| `-s` | Вмикає ведення журналу системного журналу |
+| `-k parse` | Тестовий файл конфігурації |
+| `-k rotate` | Обертає лог |
+
+Реєстрація запитів клієнтів може швидко призвести до зберігання великих обсягів даних.
+
+Рекомендується регулярно створювати новий файл журналу та архівувати старий у стисненому форматі.
+
+Ви можете зробити це вручну за допомогою параметра `-k rotate` команди `squid` або автоматично за допомогою спеціальної служби Linux `logrotate`.
+
+### Конфігурація
+
+Налаштуйте Squid у `/etc/squid/squid.conf`.
+
+- Номер порту проксі (порт прослуховування) `http_port`
+
+```bash
+http_port num_port
+```
+
+!!! Note "Примітка"
+
+```
+Номер порту встановлено на 3128 за замовчуванням, але часто змінюється на 8080. Не забудьте відкрити відповідний порт брандмауера!
+```
+
+Коли служба перезапускається, сервер Squid слухатиме порт, визначений директивою `http_port`.
+
+- Резервування оперативної пам'яті `cache_mem`
+
+```bash
+cache_mem taille KB|taille MB|taille GB
+```
+
+Наприклад:
+
+```bash
+cache_mem 1 GB
+```
+
+!!! tip "Порада"
+
+```
+Найкраща практика: 1/3 загальної виділеної оперативної пам’яті
+```
+
+- Протокол Інтернет-кешу (ICP) `icp_port`
+
+Протокол Інтернет-кешу (ICP) дозволяє сусіднім серверам Squid обмінюватися запитами. Загальною практикою є пропонування ієрархії проксі-серверів, які спільно використовують свої інформаційні бази.
+
+Директива `icp_port` визначає номер порту, який Squid використовує для надсилання та отримання запитів ICP від сусідніх серверів Squid.
+
+!!! tip "Порада"
+
+```
+Встановіть 0, щоб вимкнути.
+```
+
+- Анонімний користувач FTP `ftp_user`
+
+Директива `ftp_user` пов'язує користувача FTP з анонімними з'єднаннями FTP. Користувач повинен мати дійсну адресу електронної пошти.
+
+```bash
+ftp_user bob@rockylinux.lan
+```
+
+- Налаштувати списки контролю доступу
+
+Синтаксис ACL:
+
+```bash
+acl name type argument
+http_access allow|deny aclname
+```
+
+Приклад:
+
+```bash
+acl LUNCHTIME time 12:00-14:00
+http_access deny LUNCHTIME
+```
+
+Більш детальне обговорення ACL міститься в розділі «Розширена конфігурація».
+
+- Максимальний розмір кешованого об’єкта `maximum_object_size`
+
+Синтаксис директиви `maximum_object_size`:
+
+```bash
+maximum_object_size size
+```
+
+Приклад:
+
+```bash
+maximum_object_size 32 MB
+```
+
+Об’єкт не кешується, якщо розмір об’єкта перевищує обмеження `maximum_object_size`.
+
+- Назва проксі-сервера `visible_hostname`
+
+Синтаксис директиви `visible_hostname`:
+
+```bash
+visible_hostname name
+```
+
+Приклад:
+
+```bash
+visible_hostname proxysquid
+```
+
+!!! Note "Примітка"
+
+```
+Надане значення може відрізнятися від імені хоста.
+```
+
+- Визначте кеш для squid `cache_ufs`
+
+```bash
+cache_ufs format path size nbFolderNiv1 nbFolderNiv2
+```
+
+Можливе визначення кількох кешів у різних файлових системах для оптимізації часу доступу.
+
+Приклад:
+
+```bash
+cache_dir ufs /var/spool/squid/ 100 16 256
+```
+
+| Опція | Опис |
+| ----- | ------------------------ |
+| ufs | Файлова система Unix |
+| 100 | Розмір в мега |
+| 16 | 16 папок верхнього рівня |
+| 256 | 256 папок другого рівня |
+
+Коли служба запускається вперше, вона створює каталог кешу:
+
+```bash
+sudo squid -z
+sudo systemctl start squid
+```
+
+### Розширена конфігурація
+
+#### Список контролю доступу Les (ACL)
+
+Синтаксис директиви `http_access`
+
+```bash
+http_access allow|deny [!]acl_name
+```
+
+Приклад:
+
+```bash
+http_access allow LUNCHTIME
+http_access deny !LUNCHTIME
+```
+
+ACL `!acl_name` протилежний ACL `acl_name`.
+
+Синтаксис директиви `acl`:
+
+```bash
+acl name type argument
+```
+
+Порядок ACL накопичується. Кілька ACL з однаковою назвою представляють один ACL.
+
+Приклади:
+
+Авторизація в обідній час:
+
+```bash
+acl LUNCHTIME time 12:00-14:00
+http_access allow LUNCHTIME
+```
+
+Заборонити відео:
+
+```bash
+acl VIDEOS rep_mime_type video/mpeg
+acl VIDEOS rep_mime_type video/avi
+http_access deny VIDEOS
+```
+
+Керування IP-адресами:
+
+```bash
+acl XXX src 192.168.0.0/255.255.255.0
+acl XXX dst 10.10.10.1
+```
+
+Керування FQDN:
+
+```bash
+acl XXX srcdomain .rockylinux.org
+acl XXX dstdomain .linux.org
+```
+
+Управління портом:
+
+```bash
+acl XXX port 80 21
+```
+
+Управління протоколом:
+
+```bash
+acl XXX proto HTTP FTP
+```
+
+#### Алгоритми кешування
+
+Існують різні алгоритми кешу з різними характеристиками:
+
+- LRU - _Least Recently Used_: видаляє найстаріші об'єкти з оперативної пам'яті
+- LRU-THOLD: копіює об’єкт до кешу відповідно до його розміру
+- MRU: _Most Recently Used_: видаляє найменш затребувані дані
+- GDSF: _Greedy Dual Size Frequency_: видаляє відповідно до оригінального розміру та часу доступу із збереженням найменшого
+- LFUDA: _Least Frequently Used With Dynamic Aging_:те саме, що GDSF, але без поняття розміру. Корисно для кешу з великими файлами.
+
+#### Аутентифікація клієнта
+
+Squid покладається на зовнішні програми для керування автентифікацією. Його можна базувати на простому плоскому файлі, такому як `htpasswd`, або на LDAP, SMB, PAM чи інших службах.
+
+Автентифікація також може бути юридичною необхідністю. Не забудьте змусити своїх користувачів підписати статут про використання!
+
+### Tools
+
+#### Команда `squidclient`
+
+Використовуйте команду `squidclient`, щоб перевірити запит до сервера squid.
+
+Синтаксис команди `squidclient`:
+
+```bash
+squidclient [-s] [-h target] [-p port] url
+```
+
+Приклад:
+
+```bash
+squidclient -s -h localhost -p 8080 http://localhost/
+```
+
+| Опція | Опис |
+| ----- | ------------------------------------------------------------------- |
+| `-s` | Тихий режим (у консолі нічого не відображається) |
+| `-h` | Визначає цільовий проксі |
+| `-p` | Порт прослуховування (за замовчуванням 3128) |
+| `-r` | Змушує сервер перезавантажити об’єкт |
+
+#### Проаналізуйте журнали
+
+Ви можете контролювати записи журналу Squid за допомогою команди:
+
+```bash
+tail -f /var/log/squid/access.log
+```
+
+Пояснення щодо log line:
+
+| Опція | Опис |
+| -------------------- | ------------------------------------------------------- |
+| Дата | Позначка часу журналу |
+| Час відгуку | Час відповіді на запит |
+| @client | IP-адреса клієнта |
+| Код стану | Код відповіді HTTP |
+| Розмір | Розмір передачі |
+| Метод | Метод HTTP (Put / Get / Post / тощо) |
+| URL | URL запиту |
+| Пір-код | Код відповіді між проксі |
+| Тип файлу | Тип мети запиту Mime |
+
+### Безпека
+
+Брандмауер має бути відкритий для порту прослуховування:
+
+```bash
+sudo firewall-cmd --add-port=3128/tcp --permanent
+sudo firewall-cmd --reload
+```
+
+### Практичне завдання
+
+В цій практичній роботі ви встановите Squid на свій сервер і використовуватимете його для завантаження оновлень.
+
+#### Завдання 1: Встановити та налаштувати Squid
+
+Встановити Squid:
+
+```bash
+sudo dnf install squid
+sudo systemctl enable squid
+sudo firewall-cmd --add-port=3128/tcp --permanent
+sudo firewall-cmd --reload
+```
+
+Видаліть коментар у цьому рядку файлу `/etc/squid/squid.conf`, щоб створити каталог кешу на диску:
+
+```bash
+cache_dir ufs /var/spool/squid 100 16 512
+```
+
+За потреби відрегулюйте розмір кешу.
+
+Створіть каталоги кешу та запустіть службу.
+
+```bash
+sudo squid -z
+sudo systemctl start squid
+```
+
+#### Завдання 2: Використовуйте свій проксі з curl
+
+Відкрийте новий термінал на проксі-сервері, щоб стежити за доступом проксі.
+
+```bash
+sudo tail -f /var/log/squid/access.log
+```
+
+На другому терміналі використовуйте `curl` для доступу до веб-сторінки через проксі:
+
+```bash
+$ curl -I --proxy "http://192.168.1.10:3128" https://docs.rockylinux.org
+HTTP/1.1 200 Connection established
+
+HTTP/2 200
+content-type: text/html
+...
+```
+
+Як бачите, існує два HTTP-з'єднання. Перший — із проксі, а другий — із проксі на віддалений сервер.
+
+Ви можете побачити трасування на другому терміналі:
+
+```bash
+1723793294.548 77 192.168.1.10 TCP_TUNNEL/200 3725 CONNECT docs.rockylinux.org:443 - HIER_DIRECT/151.101.122.132 -
+```
+
+Вміст тут не кешується, оскільки ви запитуєте з’єднання `https` з віддаленим сервером.
+
+#### Завдання 3: Налаштуйте DNS для використання вашого проксі-сервера
+
+Відредагуйте файл `/etc/dnf/dnf.conf`, щоб використовувати проксі-сервер squid:
+
+```bash
+[main]
+gpgcheck=1
+installonly_limit=3
+clean_requirements_on_remove=True
+best=True
+skip_if_unavailable=False
+proxy=http://192.168.1.10:3128
+```
+
+Очистіть кеш `dnf` і спробуйте оновити:
+
+```bash
+sudo dnf clean all
+sudo dnf update
+```
+
+Переконайтеся на своєму терміналі, що підключення `dnf` використовує ваш проксі для завантаження свого оновлення:
+
+```bash
+1723793986.725 20 192.168.1.10 TCP_MISS/200 5238 GET http://rocky.reloumirrors.net/9.4/extras/x86_64/os/repodata/7d78a729-8e9a-4066-96d4-ab8ed8f06ee8-FILELISTS.xml.gz - HIER_DIRECT/193.106.119.144 application/x-gzip
+...
+1723794176.255 1 192.168.1.10 TCP_HIT/200 655447 GET http://miroir.univ-lorraine.fr/rocky/9.4/AppStream/x86_64/os/repodata/1af312c9-7139-43ed-8761-90ba3cd55461-UPDATEINFO.xml.gz - HIER_NONE/- application/x-gzip
+```
+
+У цьому прикладі ви можете побачити одне з’єднання з TCP_MISS (немає в кеші), а інше — з TCP_HIT (використовуйте кеш для відповіді клієнту).
+
+### Висновок
+
+Вітаємо! Тепер у вас є знання, необхідні для встановлення Squid у вашій локальній мережі. Це дозволить вам централізувати вихідні підключення до Інтернету та захистити вашу локальну мережу.
+
+### Перевірте свої знання
+
+:heavy_check_mark: Який порт прослуховується сервером squid за замовчуванням?
+
+- [ ] 8080
+- [ ] 1234
+- [ ] 443
+- [ ] 3128
+
+:heavy_check_mark: Що таке Squid?
+
+- [ ] Зворотний кеш-проксі
+- [ ] Кеш-проксі
From 9f549f8e5883604a81b9206e8161dda37b7afbd5 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Tue, 27 Aug 2024 07:04:41 -0400
Subject: [PATCH 09/10] New translations librenms_monitoring_server.md
(Ukrainian)
---
.../guides/network/librenms_monitoring_server.uk.md | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/docs/guides/network/librenms_monitoring_server.uk.md b/docs/guides/network/librenms_monitoring_server.uk.md
index a5a1c4dbe7..3fe2b79775 100644
--- a/docs/guides/network/librenms_monitoring_server.uk.md
+++ b/docs/guides/network/librenms_monitoring_server.uk.md
@@ -121,7 +121,7 @@ exit
Вам потрібно переконатися, що налаштування системи та PHP є правильними. Ви можете знайти список [дійсних налаштувань часового поясу для PHP тут](https://php.net/manual/en/timezones.php). Наприклад, для центрального часового поясу стандартним записом є «Америка/Чикаго». Почніть із редагування файлу `php.ini`:
```bash
-vi /etc/opt/remi/php81/php.ini
+vi /etc/php.ini
```
Знайдіть рядок `date.timezone` і змініть його. Зауважте, що це позначено, тому видаліть ";" від початку рядка та додайте свій часовий пояс після знака "=". Для прикладу центрального часового поясу використовуйте наступне:
@@ -183,14 +183,11 @@ FLUSH PRIVILEGES;
Це не змінилося в офіційній документації, за винятком шляху до файлу. Спочатку скопіюйте `www.conf`:
-```bash
-cp /etc/opt/remi/php81/php-fpm.d/www.conf /etc/opt/remi/php81/php-fpm.d/librenms.conf
-```
-
Змініть файл `librenms.conf`:
```bash
-vi /etc/opt/remi/php81/php-fpm.d/librenms.conf
+cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/librenms.conf
+vi /etc/php-fpm.d/librenms.conf
```
Змініть "[www]" на ["librenms]"
@@ -211,7 +208,7 @@ listen = /run/php-fpm-librenms.sock
Збережіть зміни та вийдіть із файлу. Якщо це єдина веб-служба, яка працюватиме на цій машині, ви можете видалити старий файл www.conf, який ви скопіювали:
```bash
-rm -f /etc/opt/remi/php81/php-fpm.d/www.conf
+rm -f /etc/php-fpm.d/www.conf
```
## Налаштування `httpd`
@@ -257,7 +254,7 @@ rm /etc/httpd/conf.d/welcome.conf
```bash
systemctl enable --now httpd
-systemctl enable --now php81-php-fpm
+systemctl enable --now php-fpm
```
## SELinux
From 1b3a3b923d69c10a8907d9e1e20f71cd2bfb3682 Mon Sep 17 00:00:00 2001
From: Rocky Linux Automation
<75949597+rockylinux-auto@users.noreply.github.com>
Date: Tue, 27 Aug 2024 08:38:49 -0400
Subject: [PATCH 10/10] New translations wireguard_vpn.md (Ukrainian)
---
docs/guides/security/wireguard_vpn.uk.md | 258 +++++++++++++++++++++++
1 file changed, 258 insertions(+)
create mode 100644 docs/guides/security/wireguard_vpn.uk.md
diff --git a/docs/guides/security/wireguard_vpn.uk.md b/docs/guides/security/wireguard_vpn.uk.md
new file mode 100644
index 0000000000..9b23447080
--- /dev/null
+++ b/docs/guides/security/wireguard_vpn.uk.md
@@ -0,0 +1,258 @@
+---
+title: WireGuard VPN
+author: Joseph Brinkman
+contributors: Steven Spencer
+tested_with: 9.4
+tags:
+ - безпека
+ - vpn
+---
+
+## Вступ
+
+[WireGuard](https://www.wireguard.com/) – це безкоштовна однорангова (P2P) віртуальна приватна мережа (VPN) з відкритим кодом. Це легка та безпечна сучасна альтернатива звичайним VPN з великими кодовими базами, які покладаються на з’єднання TCP. Оскільки WireGuard є P2P VPN, кожен комп’ютер, доданий до мережі WireGuard, спілкується безпосередньо один з одним. У цьому посібнику використовується hub-spoke модель, де одноранговому вузлу WireGuard призначено публічну IP-адресу як шлюз для пропускання всього трафіку. Це дозволяє трафіку WireGuard обходити Carrier Grade NAT (CGNAT) без увімкнення переадресації портів на маршрутизаторі. Для цього потрібна система Rocky Linux із публічною IP-адресою. Найпростіший спосіб досягти цього — розгорнути віртуальний приватний сервер (VPS) через хмарного постачальника за вашим вибором. На момент написання статті Google Cloud Platform пропонує безкоштовний рівень для своїх екземплярів e2-micro.
+
+## Передумови та припущення
+
+Мінімальні вимоги до цієї процедури такі:
+
+- Можливість запускати команди від імені користувача root або використовувати `sudo` для підвищення привілеїв.
+- Система Rocky Linux із загальнодоступною IP-адресою
+
+## Встановлення WireGuard
+
+Встановіть додаткові пакети для Enterprise Linux (EPEL):
+
+```bash
+sudo dnf install epel-release
+```
+
+Оновіть пакети вашої системи:
+
+```bash
+sudo dnf upgrade
+```
+
+Встановити WireGuard:
+
+```bash
+sudo dnf install wireguard-tools
+```
+
+## Налаштування сервера WireGuard
+
+Створіть папку для зберігання конфігураційних файлів і ключів WireGuard:
+
+```bash
+sudo mkdir -p /etc/wireguard
+```
+
+Створіть файл конфігурації з назвою на ваш вибір, що закінчується розширенням `.conf`:
+
+!!! note "Примітка"
+
+```
+Ви можете створити кілька тунелів WireGuard VPN на одній машині, кожен з яких використовує різні файли конфігурації, мережеву адресу та UDP-порт.
+```
+
+```bash
+sudo touch /etc/wireguard/wg0.conf
+```
+
+Створіть нову пару закритого та відкритого ключів для сервера WireGuard:
+
+```bash
+wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey
+```
+
+Відредагуйте файл конфігурації за допомогою обраного вами редактора.
+
+```bash
+sudo vim /etc/wireguard/wg0.conf
+```
+
+Вставте наступне:
+
+```bash
+[Interface]
+PrivateKey = server_privatekey
+Address = x.x.x.x/24
+ListenPort = 51820
+```
+
+Ви повинні замінити `privatekey` на закритий ключ, згенерований раніше. Ви можете переглянути закритий ключ за допомогою:
+
+```bash
+sudo cat /etc/wireguard/privatekey
+```
+
+Далі вам потрібно буде замінити `x.x.x.x/24` на мережеву адресу в межах діапазону приватних IP-адрес, визначеного [RFC 1918] (https://datatracker.ietf.org/doc/html/rfc1918). Наша демонстраційна приватна IP-адреса в цьому посібнику – `10.255.255.0/24`.
+
+Нарешті, ви можете вибрати будь-який порт UDP, щоб приймати з’єднання з WireGuard VPN. Тут наш демонстраційний порт UDP — `51820`.
+
+## Увімкнути IP-переадресацію
+
+IP-переадресація дозволяє маршрутизувати пакети між мережами. Щоб увімкнути IP-переадресацію на вашому сервері WireGuard, скористайтеся командою нижче, щоб відкрити файл конфігурації:
+
+```bash
+sudo vim /etc/sysctl.d/99-sysctl.conf
+```
+
+Додайте правило для IP-переадресації. Увімкніть IP-переадресацію для IPv4 і IPv6. Це дозволяє внутрішнім пристроям спілкуватися один з одним через тунель WireGuard:
+
+```bash
+net.ipv4.ip_forward = 1
+net.ipv6.conf.all.forwarding = 1
+```
+
+Застосуйте ці зміни конфігурації за допомогою:
+
+```bash
+sudo sysctl -p
+```
+
+## Налаштуйте `firewalld`
+
+Якщо `firewalld` не встановлено, встановіть його:
+
+```bash
+sudo dnf install firewalld -y
+```
+
+Після встановлення `firewalld` увімкніть його:
+
+```bash
+sudo systemctl enable --now firewalld
+```
+
+Створіть постійне правило брандмауера, яке дозволяє трафік через UDP-порт 51820 у публічній зоні:
+
+```bash
+sudo firewall-cmd --permanent --zone=public --add-port=51820/udp
+```
+
+Далі трафік з інтерфейсу WireGuard буде дозволено іншим інтерфейсам у внутрішній зоні.
+
+```bash
+sudo firewall-cmd --permanent --add-interface=wg0 --zone=internal
+```
+
+Додайте правило брандмауера, щоб увімкнути маскування IP для внутрішнього трафіку. Це означає, що пакети, надіслані між одноранговими вузлами, замінять IP-адресу пакета на IP-адресу сервера:
+
+```bash
+sudo firewall-cmd --permanent --zone=internal --add-masquerade
+```
+
+Нарешті, перезавантажте `firewalld`:
+
+```bash
+sudo firewall-cmd --reload
+```
+
+## Налаштуйте вузол WireGuard
+
+Оскільки всі комп’ютери в мережі WireGuard є технічно рівноправними, цей процес майже ідентичний налаштуванню сервера WireGuard, але з деякими невеликими відмінностями.
+
+Створіть папку для зберігання конфігураційних файлів і ключів WireGuard:
+
+```bash
+sudo mkdir -p /etc/wireguard
+```
+
+Створіть файл конфігурації, вказавши йому назву на свій вибір, яка закінчується розширенням `.conf`:
+
+```bash
+sudo touch /etc/wireguard/wg0.conf
+```
+
+Створіть нову пару закритого та відкритого ключів:
+
+```bash
+wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey
+```
+
+Відредагуйте файл конфігурації за допомогою обраного вами редактора, додавши цей вміст:
+
+```bash
+[Interface]
+PrivateKey = peer_privatekey
+Address = 10.255.255.2/24
+
+[Peer]
+PublicKey = server_publickey
+AllowedIPs = 10.255.255.1/24
+Endpoint = serverip:51820
+PersistentKeepalive = 25
+```
+
+Замініть `peer_privatekey` на закритий ключ пір, який зберігається в `/etc/wireguard/privatekey` на пірі.
+
+Ви можете використати цю команду, щоб вивести ключ, щоб ви могли його скопіювати:
+
+```bash
+sudo cat /etc/wireguard/privatekey
+```
+
+Замініть `server_publickey` на відкритий ключ сервера, який зберігається в `/etc/wireguard/publickey` на сервері.
+
+Ви можете використати цю команду, щоб вивести ключ, щоб ви могли його скопіювати:
+
+```bash
+sudo cat /etc/wireguard/publickey
+```
+
+Замініть `serverip` загальнодоступною IP-адресою сервера WireGuard.
+
+Ви можете знайти публічну IP-адресу сервера за допомогою такої команди на сервері:
+
+```bash
+ip a | grep inet
+```
+
+Файл конфігурації вузла тепер містить правило `PersistentKeepalive = 25`. Це правило вказує одноранговому вузлу перевіряти сервер WireGuard кожні 25 секунд, щоб підтримувати з’єднання VPN-тунелю. Це правило передбачає однорангову перевірку сервера WireGuard кожні 25 секунд, щоб підтримувати з’єднання з VPN-тунелем.
+
+## Додайте ключ клієнта до конфігурації сервера WireGuard
+
+Виведіть відкритий ключ партнера та скопіюйте його:
+
+```bash
+sudo cat /etc/wireguard/publickey
+```
+
+На сервері виконайте наступну команду, замінивши `peer_publickey` на одноранговий відкритий ключ:
+
+```bash
+sudo wg set wg0 peer peer_publickey allowed-ips 10.255.255.2
+```
+
+Варто зазначити, що ви можете вручну редагувати та додавати вузли до файлу конфігурації.
+
+## Увімкніть WireGuard VPN
+
+Щоб увімкнути WireGuard, ви запустите таку команду як на сервері, так і на одноранговому пристрої:
+
+```bash
+sudo systemctl enable wg-quick@wg0
+```
+
+Потім запустіть VPN, виконавши цю команду як на сервері, так і на одноранговому пристрої:
+
+```bash
+systemctl start wg-quick@wg0
+```
+
+Ви можете переглядати інформацію WireGuard як на сервері, так і на одноранговому пристрої за допомогою:
+
+```bash
+sudo wg
+```
+
+Ви можете перевірити підключення, надіславши ping на сервер від однорангового пристрою:
+
+```bash
+ping 10.255.255.1
+```
+
+## Висновок
+
+Дотримуючись цього посібника, ви успішно налаштували WireGuard VPN за допомогою моделі концентратора. Ця конфігурація забезпечує безпечний, сучасний і ефективний спосіб підключення кількох пристроїв через Інтернет. Перегляньте [офіційний веб-сайт WireGuard](https://www.wireguard.com/).