Wie sehen denn deine Router Einstellungen aus?
Hast du ne Anschluss/Port Weiterleitung zum Proxy eingerichtet?
Wie sehen denn deine Router Einstellungen aus?
Hast du ne Anschluss/Port Weiterleitung zum Proxy eingerichtet?
Ich drück mich mal wieder schlecht aus 😅
Anstatt sich mehrere sub domains anzulegen, kann man sich den wildcard Eintrag nehmen. Und nginx Proxy Manager fängt das dann ab.
Im Proxy selber legst du dann deine sub domains an und kannst direkt ein LE Zertifikat für jede sub domain ordern
wenn du es nicht über wildcart machen möchtest, ja für jede (sub)domain ein eintrag in die json datei vom DDNS Updater
Eigentlich reicht es wenn du den Wildcard Eintrag im DNS mit dem Updater aktualisierst, also zu dir nach hause zeigen lässt.
Den rest erledtigt eigentlich der reverse proxy deiner wahl
In dem Sinne handelt es sich nicht um Software die Installiert werden muss, sondern lediglich freigeschaltet werden muss die Software ist ja bereits da im Sitejet Paket. Ne Sache von nichtmal zwei Minuten
Aber wenn es nen Managed Server ist, zahlt man dann nicht dafür das netcup einen solche Aufgaben abnimmt?
Scheint ja ne SuperUser Einstellung zu sein die der Endkunde nun nicht einstellen kann in der Konstellation
Frage als neuling, besteht das Problem generell bei netcup oder nur wenn man deren Nameserver benutzt?
Man kann die Panel.ini auch via internen Editor bearbeiten, dazu findest du unter den Erweiterungen (extensions) das Modul Panel.ini Editor in der Kategorie Severtools. (https://www.plesk.com/extensions/panel-ini-editor/)
Aber aus neugierde mal geschaut bei mir findet man die panel.ini unter dem dir angegeben Pfad /usr/local/psa/padmin/conf/panel.ini
(Debian 12)
Allerdings benutze ich nicht das WCP sondern hab ne eigene Lizenz und eigenen Server, keine ahnung ob das was ausmacht.
nö, stand noch auf root, habs jetzt auf den benutzer gesetzt.
aber nu komm ich in die mysql datenbank nicht rein weil dort nur root@localhost reindarf ![]()
schon stressig als anfänger ![]()
hab die rechte übernommen wie sie im root .ssh ordner sind.
aber läuft ja jetzt
nur die maschine wo plesk drauf ist, will nicht.
muss mal ggf im plesk forum rum suchen falls hier niemand ne idee hat
$ chsh -s /bin/bash
Password:
chsh: PAM: Authentication failure
Dann kommt leider das :\
-------------------------------
hab in der passwd file den user von /bin/sh auf bash geändert jetzt hab ich normal es interface bei der kleinen maschine, danke
huhu schwarmwissen,
Nachdem ich gerade bei Seite 17 durch bin in Buds "Server administrieren...." Thread und mehrfach erwähnt wurde nen sudo benutzer statt root zu verwednen, wollt ich dem Tipp auch mal nachkommen. Jedoch scheitere ich an dem SSH Key für den Benutzer... Der SSH Key wurde übers SCP hinzugefügt und funktioniert soweit auch für den root User.
Nun hab ich mir auf meinen beiden Servern jeweils den selben benutzer mit selben passwort angelegt und der sudo gruppe zugewiesen. dann quasi die authorized_keys file von .ssh nach /home/user/.ssh kopiert.
Aber ich kann mich nicht mit dem neu angelegten User anmelden. Auf einer Maschine werde ich direkt abgelehnt (hier ist Plesk drauf) und die andere Maschine ohne Panelsoftware lässt mich rein hab, hab aber keine rechte oder sowas zumindest sieht das Terminal Fenster so aus :
Last login: Tue Aug 20 10:30:11 2024 from 62.159.14.27
$
normal sollte da doch user@hostname: sein quasi
chris@ubuntu:~$
Hab noch eine 1€ maschine von der konkurenz, da kann ich mich einloggen mit dem benutzer chris anstatt root
Hab es nach dem selben Schema gemacht wie oben, bei der grßen wo Plesk ist kann ich mir vorstellen das ich das irgendwie über Plesk lösen muss, aber warum geht es bei der nano nicht ?
Kann mir jemand auf die sprünge helfen was ich falsch mache ?
Ok gut zu wissen das man sich dann das also-notify sparen würde, ich belasse es nun bei explicit. .
Ganz nach dem Motto never change a running system ![]()
So hab das in einem lxc container nochmal nachgestellt, und keine fehler zu mariadb bekommen.
Wird wohl in meinem 100 versuchen irgendwas durcheinander gekommen sein, hab den schnipsel entfernt
Danke für den stupser da nochmal nach zu schauen ![]()
Wieso fragtest du wegen den Repos? Würdest du was anders machen? Wenn ja, warum ![]()
warum nicht einfach yes?
Öhm hab beides probiert und beides geht, bin irgendwie auf explicit hängen geblieben.
warum nicht aus den Ubuntu repos?
hab immer nen fehler bekommen, weiß jetzt auch nicht mehr welcher. tante google lieferte mir dann nach einigen beiträgen das es mit dieser "repo" keine fehler gibt und so war es dann auch.
warum aus den Ubuntu repos?
darauf hab ich keine antwort, habs einfach aus anderen guides so übernommen
Ich versuche es mal nieder zu kritzeln falls jemand auch powerdns+poweradmin haben möchte als slave DNS für Plesk (Bind) Primary
Bin zwar selbst noch bischen am tüfteln, aber die Zone werden automatisch in PowerDNS erstellt und aktualisiert. nur wenn man eine Domain löscht, verbleibt es im PowerDNS und bedarf eines manuellen Eingriffs.
Master:
Ubuntu 22.04
Plesk Obsidian Web Admin Edition Version 18.0.63 Update Nr. 1
In der Plesk Oberfläche gehen wir auf
Tools & Einstellung -> DNS-Einstellungen -> Transferbeschränkungen-Template
und fügen hier die IP Adressen unserer DNS Server ein.
Im nächsten Reiter "Serverweite Einstellungen" fügen wir unter Zusätzliche DNS-Einstellungen folgendes hinzu:
Nachtrag; man kann auch "notify yes;" anstatt von "notify explicit;" verwenden.
Bei notify yes werden alle Server angesprochen die im NS RRset stehen außer der, der im SOA Feld ans MNAME steht und die aus der also-notify liste
bei notify explicit werden nur die Server angesprochen die in der also-notify liste stehen.
Slave:
Ubuntu 22.04
Als erstes alles auf aktuellen Stand bringen falls das noch nicht der fall sein sollte:
apt update && apt upgrade -y
Dannach laden wir schonmal alles runter was wir später an Abhängigkeiten brauchen:
apt install nginx python3-dev libsasl2-dev libldap2-dev libssl-dev libxml2-dev libxslt1-dev libxmlsec1-dev libffi-dev pkg-config apt-transport-https virtualenv build-essential libmariadb-dev git python3-flask libpq-dev software-properties-common gnupg2 -y
Installieren und absichern der MariaDB Instanz:
apt install mariadb-server mariadb-client -y && mysql_secure_installation
Dieses könnte ein optionaler Schritt sein, bin mir nicht ganz sich:
printf "# InnoDB
innodb_log_file_size = 64M
default-storage-engine=INNODB
innodb_buffer_pool_size=1G
innodb_buffer_pool_instances = 2
innodb_autoinc_lock_mode = 2
innodb_doublewrite = 1
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_lock_wait_timeout = 60
innodb_locks_unsafe_for_binlog = 1
innodb_stats_on_metadata = 0
transaction-isolation=READ-COMMITTED" >> /etc/mysql/mariadb.conf.d/50-server.cnf
Dann werden Datenbank und Benutzer für PowerDNS hinzugefügt (User und Datenbank heißen in diesen Beispiel pdns)
mysql
create database pdns;
grant all on pdns.* to pdns@localhost identified by 'password';
flush privileges;
exit;
Nun wird das Resolv System gestoppt und PowerDNS mit MySQL Backend installiert:
systemctl disable --now systemd-resolved && rm -rf /etc/resolv.conf
echo "nameserver 8.8.8.8" > /etc/resolv.conf
apt-get install pdns-server pdns-backend-mysql -y
Das Datenbank-Schema importieren:
mysql -u pdns -p pdns < /usr/share/pdns-backend-mysql/schema/schema.mysql.sql
MariaDB Config erstellen für PDNS: (sollte euer mysql password sonderzeichen enthalten solltet Ihr die Datei besser mit nano oder vi per Hand erstellen)
printf "# MariaDB Configuration file
launch+=gmysql
gmysql-host=127.0.0.1
gmysql-port=3306
gmysql-dnssec=yes
gmysql-dbname=pdns
gmysql-user=pdns
gmysql-password=password">/etc/powerdns/pdns.d/pdns.local.gmysql.conf
Rechte anpassen und PDNS stoppen:
chmod 640 /etc/powerdns/pdns.d/pdns.local.gmysql.conf
chown pdns:pdns /etc/powerdns/pdns.d/pdns.local.gmysql.conf
systemctl stop pdns
SuperMaster in die Datenbank Eintragen:
mysql
insert into pdns.supermasters (ip, nameserver, account) VALUES ('x.x.x.x', 'ns1.example.com', 'admin');
exit;
NodeJS + Yarn installieren:
curl -sL https://deb.nodesource.com/setup_16.x | bash -
apt-get install nodejs -y
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
apt update -y
apt install yarn -y
PowerDNS Admin Repo herunterladen und abhänigkeiten updaten/installieren:
git clone https://github.com/ngoduykhanh/PowerDNS-Admin.git /var/www/html/pdns
cd /var/www/html/pdns/
virtualenv -p python3 flask
source ./flask/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
deactivate
Jetzt müssen wir die Datei (/var/www/html/pdns/powerdnsadmin/default_config.py) bearbeiten, dazu fügt Ihr folgendes hinzu oder ändert es ab falls vorhanden:
BIND_ADDRESS = '0.0.0.0'
CAPTCHA_ENABLE = True
CAPTCHA_HEIGHT = 60
CAPTCHA_LENGTH = 6
CAPTCHA_SESSION_KEY = 'captcha_image'
CAPTCHA_WIDTH = 160
CSRF_COOKIE_HTTPONLY = True
HSTS_ENABLED = False
OFFLINE_MODE = False
PORT = 9191
SALT = '32charsecret'
SAML_ASSERTION_ENCRYPTED = True
SAML_ENABLED = False
SECRET_KEY = 'another32charsecret'
SERVER_EXTERNAL_SSL = os.getenv('SERVER_EXTERNAL_SSL', True)
SESSION_COOKIE_SAMESITE = 'Lax'
SESSION_TYPE = 'sqlalchemy'
SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'pdns.db')
SQLALCHEMY_TRACK_MODIFICATIONS = True
SQLA_DB_USER = 'pdns'
SQLA_DB_PASSWORD = 'euerDB Passwort'
SQLA_DB_HOST = '127.0.0.1'
SQLA_DB_NAME = 'pdns'
# SQLALCHEMY_DATABASE_URI = 'mysql://{}:{}@{}/{}'.format(
# urllib.parse.quote_plus(SQLA_DB_USER),
# urllib.parse.quote_plus(SQLA_DB_PASSWORD),
# SQLA_DB_HOST,
# SQLA_DB_NAME
# )
Danach führen wir folgendes aus:
cd /var/www/html/pdns/
source ./flask/bin/activate
export FLASK_APP=powerdnsadmin/__init__.py
flask db upgrade
yarn install --pure-lockfile
flask assets build
deactivate
Nginx als reverse Proxy für PowerDNS Admin:
und folgendes einfügen (server_name nicht vergessen zu bearbeiten)
server {
listen *:80;
server_name pdns01.example.com;
index index.html index.htm index.php;
root /var/www/html/pdns;
access_log /var/log/nginx/pdnsadmin_access.log combined;
error_log /var/log/nginx/pdnsadmin_error.log;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_redirect off;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffers 32 4k;
proxy_buffer_size 8k;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_headers_hash_bucket_size 64;
location ~ ^/static/ {
include /etc/nginx/mime.types;
root /var/www/html/pdns/powerdnsadmin;
location ~* \.(jpg|jpeg|png|gif)$ {
expires 365d;
}
location ~* ^.+.(css|js)$ {
expires 7d;
}
}
location / {
proxy_pass http://unix:/run/pdnsadmin/socket;
proxy_read_timeout 120;
proxy_connect_timeout 120;
proxy_redirect off;
}
}
Rechte anpassen und nginx neustarten:
chown -R www-data:www-data /var/www/html/pdns
systemctl restart nginx
Systemd Dienst für PowerDNS erstellen:
printf "[Unit]
Description=PowerDNS-Admin
Requires=pdnsadmin.socket
After=network.target
[Service]
PIDFile=/run/pdnsadmin/pid
User=pdns
Group=pdns
WorkingDirectory=/var/www/html/pdns
ExecStart=/var/www/html/pdns/flask/bin/gunicorn --pid /run/pdnsadmin/pid --bind unix:/run/pdnsadmin/socket 'powerdnsadmin:create_app()'
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target" >> /etc/systemd/system/pdnsadmin.service
printf "[Unit]
Description=PowerDNS-Admin socket
[Socket]
ListenStream=/run/pdnsadmin/socket
[Install]
WantedBy=sockets.target" >> /etc/systemd/system/pdnsadmin.socket
echo "d /run/pdnsadmin 0755 pdns pdns -" >> /etc/tmpfiles.d/pdnsadmin.conf
mkdir /run/pdnsadmin/
chown -R pdns: /run/pdnsadmin/
chown -R pdns: /var/www/html/pdns/powerdnsadmin/
PowerDNS Config bearbeiten: (/etc/powerdns/pdns.conf)
allow-dnsupdate-from=127.0.0.0/8,::1,MasterIP
allow-notify-from=0.0.0.0/0,::/0
api=yes
api-key=yourapikey
autosecondary=yes
disable-axfr=yes
include-dir=/etc/powerdns/pdns.d
launch=
primary=no
secondary=yes
security-poll-suffix=
slave-cycle-interval=20
version-string=anonymous
Zu guter letzt Dienste neustarten/laden
systemctl daemon-reload
systemctl enable --now pdnsadmin.service pdnsadmin.socket
systemctl start pdns
Nun könnt Ihr unter der zuvor angelegten URL euren PowerDNS Admin besuchen und einen Benutzer anlegen. Nach dem einloggen müsst Ihr noch die Api URL und euren API Key eingeben. Nach einpaar momenten könnt Ihr auf das Dashboard gehen und Ihr solltet sehen wir eure Domains/Zonen auftauchen.
das Transfer-allow setzt Plesk selber wenn man die IP der Nameserver im Transferbeschrönkungen Template einträgt.
Nur das notify musst ich selber setzen, hab es direkt in die named.conf eingetragen von Plesk
möchte noch ausprobieren ob es genügt die notify Einträge in den Serverweiten Einstellungen von Plesk zu setzen, dann würde das manuelle bearbeiten der named.conf entfallen.
yay nach gefühlt 20 weiteren versuchen tauchten die domains als secondary im pdns ui auf ![]()
fragt mich jetzt nur nicht wo es hinkte ![]()
Nameserver laufen, wie gesagt die Webseiten werden ja auch aufgelöst. Nur Plesk ist der Meinung das die .de-Domains nicht erreichbar wären.Was wiederum keine automatische erstellung von TLSA Einträgen gestattet. (Zertifikat holen geht aber)
Einzigen workaround den ich im Plesk Forum fand besteht darin die Abfrage von Plesk abzuschalten indem man was in die Panel.ini schreibt.
Behebt zwar die Fehlermeldung im Interface aber das eigentlich Problem nicht wirklich.
Im angefügten Bild sieht man es oben die .de Domain kann angeblich nicht aufgelöst werden unten eine .me Domain
Beide benutzen das selbe DNS Template
Im moment sieht es für mich so aus als läge es irgendwie an netcup oder allgemein an den .de Domains
nur wie sage ich bind das er der master für den powerdns ist
bekomme das nicht gebacken, wie erwähnt hab ich schon paar anleitungen durch aber nie tauchen die Zonen automatisch auf
allerdings waren das auch nicht die neusten und immer mit mysql backend.
Hi,
beim herumspielen und lernen mit Plesk und Nameservern ist mir eine Sache gestern aufgefallen.
Bei den Netcup Domains (3x .de) sagt Plesk immer das "Die Domain nicht aufgelöst werden kann" unterhalb des DNS Buttons
Während die Spaceship Domains (1x .me/1x .net) das nicht anmeckern.
eigene Nameserver laufen auf meiner .net domain während Plesk selber der Primäre DNS ist.
Hat jemdand ne Idee woran das liegen könnte ?
Bin zwar nur ein laie aber so wirklich Sinn macht das für mich nicht.
Also nur Plesk ist der Meinung das es nicht aufgelöst werden kann. Webseiten sind besuchbar etc...
Das zieht auch nach sich das man DNSSEC bzw die TLSA Einträge selber setzen muss, SSL it blendet einem dann nicht die DANE Support Checkbox ein.