Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | Nächste ÜberarbeitungBeide Seiten der Revision |
centos:rsynd_c8 [05.07.2020 13:22. ] – [rsync-Daemon konfigurieren] django | centos:rsynd_c8 [05.07.2020 13:28. ] – [Firewall-Daemon anpassen] django |
---|
Damit die Clients später Verbindungsanfragen zu dem geöffneten Port **tftp/873**unseres rsync-Daemon stellen können, müssen wir für diese noch Änderungen am Paketfilter **firewalld** vornehmen. | Damit die Clients später Verbindungsanfragen zu dem geöffneten Port **tftp/873**unseres rsync-Daemon stellen können, müssen wir für diese noch Änderungen am Paketfilter **firewalld** vornehmen. |
| |
Unter **[[#tftp-server_installieren|CentOS 8]]** wird als Standard-Firewall die dynamische **firewalld** verwendet. Ein großer Vorteil der dynamischen Paketfilterregeln ist unter anderem, dass zur Aktivierung der neuen Firewall-Regel(n) nicht der Daemon durchgestartet werden muss und somit alle aktiven Verbiundungen kurz getrennt werden. Sondern unsere Änderungen können **//on-the-fly//** aktiviert oder auch wieder deaktiviert werden. | Unter **[[#tftp-server_installieren|CentOS 8]]** wird als Standard-Firewall die dynamische **firewalld** verwendet. Ein großer Vorteil der dynamischen Paketfilterregeln ist unter anderem, dass zur Aktivierung der neuen Firewall-Regel(n) nicht der Daemon durchgestartet werden muss und somit alle aktiven Verbindungen kurz getrennt werden. Sondern unsere Änderungen können **//on-the-fly//** aktiviert oder auch wieder deaktiviert werden. |
| |
Im ersten Konfigurationsbeispiel werden wir nun den Port **873/tcp** für alle öffnen, also unabhängig von der source-IP-Adresse können alle vbeliebeigen clients Daten synchronisieren. Mit Hilfe des Programms **firewall-cmd** legen wir nun eine **permanente** Regel in der Zone **public** für den Port ***873/tcp** an. | Im ersten Konfigurationsbeispiel werden wir nun den Port **873/tcp** für alle öffnen, also unabhängig von der source-IP-Adresse können alle vbeliebeigen clients Daten synchronisieren. Mit Hilfe des Programms **firewall-cmd** legen wir nun eine **permanente** Regel in der Zone **public** für den Port ***873/tcp** an. |
| |
| |
| ==== automatisierter Weg mit Hilfe von Ansible ==== |
| Da wir aber in unserer Produktiven Umgebung alle Server, Dienste und Services mit Hilfe von **[[centos:ansible:start|Ansible]]** werden wir natürlich auch für unseren **rsync**-Daemon dies über eine entsprechende **[[centos:ansible:detail#grundlagen|Ansible-Rolle]] /* {{:centos:pxe_c8:ansible-role-tftp.tar.gz|ansible-role-tftp.tar.gz}}**((Version v1 vom 04.07.2020)) */ erledigen lassen. |
| |
| /* |
| Erzeugen des tar.gz einer Ansible-Rolle: |
| $ cd ~/ansible/roles |
| $ tar -czvPf /tmp/ansible-role-tftp.tar.gz tftp/ |
| */ |
| |
| /* |
| Wir holen uns also das Verzeichnis mit der **role** auf unseren Rechner. |
| $ wget https://dokuwiki.nausch.org/lib/exe/fetch.php/centos:pxe_c8:ansible-role-tftp.tar.gz -O ansible-role-tftp.tar.gz |
| |
| Da wir bei der Installation und **[[centos:ansible:first#ansibledirectory_layout|Konfiguration]]** von Ansible bereits das **''Ansible Directory Layout''** erzeugt hatten, brauchen wir nur noch das heruntergeladene Archiv an Ort und Stelle entpacken. |
| $ tar -xvf ansible-role-tftp.tar.gz -C ~/ansible/roles/ |
| |
| Jetzt brauchen wir nur noch die Rolle unserem Server **tftp-server** zuordnen. |
| $ vim ~/ansible/tftp.yml |
| |
| <file yml ~/ansible/tftp.yml>--- # Start des Playbooks für den TFTP-Server |
| - hosts: tftp-server |
| |
| roles: |
| #- base # Basiskonfiguration (User anlegen) |
| #- chrony # Installation und Konfiguration NTP-Client |
| - tftp # Installation und Konfiguration TFTP-Server |
| |
| ... # Start des Playbooks für den TFTP-Server |
| </file> |
| |
| Nun brauchen wir nur noch das Playbook ausführen und unser TFTP-Server steht bereit. |
| $ ansible-playbook -v ~/ansible/tftp.yml |
| |
| <html><pre class="code"> |
| <font style="color: rgb(43, 100, 164)">Using /home/ansible/.ansible.cfg as config file</font> |
| <font style="color: rgb(0, 0, 0)">BECOME password: |
| |
| PLAY [tftp-server] ************************************************************************************************************************************* |
| |
| TASK [Gathering Facts] *************************************************************************************************************************************</font> |
| <font style="color: rgb(25, 100, 5)">ok: [tftp-server]</font><br> |
| <font style="color: rgb(0, 0, 0)">TASK [tftp : ***TFTP*** : Installation der TFTP-Server relevanten Pakete (in der aktuellsten Version)] ******************************</font> |
| <font style="color: rgb(196, 160, 0)">changed: [tftp-server] => {"changed": true, "msg": "", "rc": 0, "results": ["Installed: xinetd-2:2.3.15-24.el8.x86_64", "Installed: mtools-4.0.18-14.el8.x86_64", "Installed: tftp-server-5.2-24.el8.x86_64", "Installed: syslinux-6.04-4.el8.x86_64", "Installed: syslinux-nonlinux-6.04-4.el8.noarch"]}</font><br> |
| <font style="color: rgb(0, 0, 0)">TASK [tftp : ***TFTP*** : Firewall-Daemon für den TFTP-Server anpassen] *************************************************************</font> |
| <font style="color: rgb(196, 160, 0)">changed: [tftp-server] => {"changed": true, "msg": "Permanent operation, Changed service tftp to enabled"}</font><br> |
| <font style="color: rgb(0, 0, 0)">TASK [***TFTP*** : Sicherstellen dass der Daemon 'tftp.service' gestartet wird und läuft] ******************************************</font> |
| <font style="color: rgb(196, 160, 0)">changed: [tftp-server] => {"changed": true, "enabled": true, "name": "tftp.service", "state": "started", "status": {"ActiveEnterTimestampMonotonic": "0", "ActiveExitTimestampMonotonic": "0", "ActiveState": "inactive", "After": "sysinit.target basic.target tftp.socket system.slice", "AllowIsolate": "no", "AllowedCPUs": "", "AllowedMemoryNodes": "", "AmbientCapabilities": "", "AssertResult": "no", "AssertTimestampMonotonic": "0", "Before": "shutdown.target", "BlockIOAccounting": "no", "BlockIOWeight": "[not set]", "CPUAccounting": "no", "CPUAffinity": "", "CPUQuotaPerSecUSec": "infinity", "CPUSchedulingPolicy": "0", "CPUSchedulingPriority": "0", "CPUSchedulingResetOnFork": "no", "CPUShares": "[not set]", "CPUUsageNSec": "[not set]", "CPUWeight": "[not set]", "CacheDirectoryMode": "0755", "CanIsolate": "no", "CanReload": "no", "CanStart": "yes", "CanStop": "yes", "CapabilityBoundingSet": "cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend", "CollectMode": "inactive", "ConditionResult": "no", "ConditionTimestampMonotonic": "0", "ConfigurationDirectoryMode": "0755", "Conflicts": "shutdown.target", "ControlPID": "0", "DefaultDependencies": "yes", "Delegate": "no", "Description": "Tftp Server", "DevicePolicy": "auto", "Documentation": "man:in.tftpd", "DynamicUser": "no", "EffectiveCPUs": "", "EffectiveMemoryNodes": "", "ExecMainCode": "0", "ExecMainExitTimestampMonotonic": "0", "ExecMainPID": "0", "ExecMainStartTimestampMonotonic": "0", "ExecMainStatus": "0", "ExecStart": "{ path=/usr/sbin/in.tftpd ; argv[]=/usr/sbin/in.tftpd -s /var/lib/tftpboot ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", "FailureAction": "none", "FileDescriptorStoreMax": "0", "FragmentPath": "/usr/lib/systemd/system/tftp.service", "GID": "[not set]", "GuessMainPID": "yes", "IOAccounting": "no", "IOSchedulingClass": "0", "IOSchedulingPriority": "0", "IOWeight": "[not set]", "IPAccounting": " |