Regeln mit Zeilennummern auflisten
sudo iptables -L --line-numbers
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain FORWARD (policy DROP)
num target prot opt source destination
1 DOCKER-USER all -- anywhere anywhere
2 DOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere
3 ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
4 DOCKER all -- anywhere anywhere
5 ACCEPT all -- anywhere anywhere
6 ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
NAT Regeln mit Zeilennummern auflisten
sudo iptables -tnat -L --line-numbers
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 DOCKER all -- anywhere anywhere ADDRTYPE match dst-type LOCAL
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
1 DOCKER all -- anywhere !localhost/8 ADDRTYPE match dst-type LOCAL
2 DNAT tcp -- anywhere anywhere tcp dpt:ldap to:10.185.131.139:443
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 172.17.0.0/16 anywhere
2 MASQUERADE all -- anywhere anywhere
Die gewünschte Regel löschen (Chain und Zeilennummer angeben)
sudo iptables -D FORWARD 5
Die gewünschte NAT Regel löschen (Chain und Zeilennummer angeben)
sudo iptables -t nat -D POSTROUTING 2
Eingehenden Traffic auf Port 443 weiterleiten an 10.98.193.201:389
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to 10.98.193.201:389
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
Eingehenden Traffic auf Port 443 und IP 46.25.33.12 weiterleiten an 10.98.193.201:389
sudo iptables -t nat -A PREROUTING -p tcp -d 46.25.33.12 --dport 22101 -j DNAT --to 10.10.0.101:22
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
Ausgehenden Traffic an Port 389 (ldap) nach 10.98.193.200:389 umleiten
sudo iptables -t nat -A OUTPUT -p tcp --dport 389 -j DNAT --to-destination 10.98.193.200:389
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
Ausgehenden Traffic an IP 10.90.32.6 und Port 389 (ldap) nach 10.98.193.200:389 umleiten
sudo iptables -t nat -A OUTPUT -p tcp -d 10.90.32.6 --dport 443 -j DNAT --to-destination 10.98.193.200:389
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
terraform state list
terraform state list | grep thomas
data.gitlab_user.members["thomas@asanger.dev"]
data.ldap_user.members["thomas@asanger.dev"]
module.upn_lookup["thomas@asanger.dev"].data.http.upn_lookup
terraform state rm 'data.ldap_user.members["thomas@asanger.dev"]'
terraform state show 'data.gitlab_user.members["thomas@asanger.dev"]'
# data.gitlab_user.members["thomas@asanger.dev"]:
data "gitlab_user" "members" {
avatar_url = "https://gitlab.asanger.dev/505/avatar.png"
can_create_group = false
can_create_project = false
color_scheme_id = 0
external = false
id = "505"
is_admin = false
name = "Asanger, Thomas"
namespace_id = 0
projects_limit = 0
state = "active"
theme_id = 0
two_factor_enabled = false
user_id = 505
username = "asangert"
}
terraform state show 'gitlab_group_membership.maintainers["thomas@asanger.dev"]'
# gitlab_group_membership.maintainers["thomas@asanger.dev"]:
resource "gitlab_group_membership" "maintainers" {
access_level = "maintainer"
group_id = "6911"
id = "6911:505"
skip_subresources_on_destroy = false
unassign_issuables_on_destroy = false
user_id = 505
}
terraform import -var-file ../../compiled/mp_content/team.tfvars 'gitlab_group_membership.maintainers["thomas@asanger.dev"]' "6911:505"
Continuous Delivery (CD) ist eine Erweiterung des Konzepts der Continuous Integration (CI) und bezieht sich auf den Prozess, bei dem Software in kurzen, iterativen Zyklen bereitgestellt werden kann, wobei jede Änderung potenziell in Produktion gebracht werden kann. Das Hauptziel von Continuous Delivery besteht darin, sicherzustellen, dass Software jederzeit und schnell bereitgestellt werden kann, während gleichzeitig die Risiken minimiert werden.
Im Continuous-Delivery-Prozess durchläuft die Software nach der Integration eine Reihe von automatisierten Tests und Validierungen, um sicherzustellen, dass sie den Anforderungen entspricht und keine unerwarteten Probleme in der Produktionsumgebung verursacht. Wenn die Tests erfolgreich sind, wird die Software automatisch in die Produktionsumgebung bereitgestellt.
Einige Schlüsselmerkmale von Continuous Delivery sind:
- Automatisierung: Die Bereitstellungsschritte werden weitgehend automatisiert, um den menschlichen Aufwand zu minimieren und die Konsistenz zu gewährleisten.
- Hohe Testabdeckung: Um das Vertrauen in den Bereitstellungsprozess zu stärken, wird eine umfassende Testabdeckung angestrebt, einschließlich Unit-Tests, Integrationstests, Akzeptanztests usw.
- Konfigurationsmanagement: Die Konfiguration der Produktionsumgebung wird verwaltet und automatisiert, um sicherzustellen, dass die Software in verschiedenen Umgebungen konsistent und zuverlässig funktioniert.
- Kontinuierliches Feedback: Teams erhalten kontinuierliches Feedback über den Bereitstellungsprozess und die Qualität der Software, um Verbesserungen vorzunehmen und Probleme frühzeitig zu identifizieren.
Durch Continuous Delivery können Entwicklerteams die Time-to-Market verkürzen, die Softwarequalität verbessern und die Auslieferung neuer Funktionen effizienter gestalten.
Continuous Integration (CI) ist eine Praxis im Softwareentwicklungsprozess, bei der Entwickler ihre Codeänderungen regelmäßig in ein gemeinsames Repository integrieren. Das Ziel von Continuous Integration ist es, häufige Integrationen von Codeänderungen zu ermöglichen, um potenzielle Konflikte frühzeitig zu erkennen und zu beheben sowie die Qualität der Software zu verbessern.
Im Rahmen von Continuous Integration führen Entwickler typischerweise folgende Schritte durch:
- Änderungen einchecken: Entwickler übertragen ihre Codeänderungen in das zentrale Repository, normalerweise mehrmals täglich.
- Automatisierte Builds: Nachdem Änderungen eingecheckt wurden, wird automatisch ein Build-Prozess gestartet, um den neuen Code zu kompilieren und zu testen.
- Automatisierte Tests: Es werden automatisierte Tests ausgeführt, um sicherzustellen, dass die neuen Änderungen keine bestehende Funktionalität beeinträchtigen.
- Feedback bereitstellen: Entwickler erhalten sofortiges Feedback über den Status ihres Codes. Wenn ein Build oder ein Test fehlschlägt, können Entwickler schnell reagieren, um das Problem zu beheben.
Durch die Implementierung von Continuous Integration können Teams Fehler früher im Entwicklungsprozess erkennen, die Softwarequalität verbessern, die Time-to-Market verkürzen und die Effizienz im Entwicklungsprozess steigern.
DevOps ist ein Konzept, das darauf abzielt, die Zusammenarbeit und Integration zwischen Softwareentwicklung (Dev) und IT-Betrieb (Ops) zu verbessern. Es handelt sich um einen kulturellen Wandel, der auf die Verkürzung des Softwareentwicklungszyklus, die kontinuierliche Bereitstellung von Software und die Verbesserung der Qualität von Software-Veröffentlichungen abzielt.
echo 'password' | kapitan refs --write awskms:tokens/grafana_ng_admin_password --key alias/r5s-kapitan -f -
kapitan refs --reveal --ref-file deploy/refs/tokens/grafana_ng_admin_password