Let me help you all who are stuck with the non-existantdocumentation of LUA scripting in pdns.
Preface: all this is guesswork, since nothing really is documented.
I'd say all feedbacks welcome, but nobody reads this blog anyway,
so… there you are.
pdns-server and lua2 backend
PowerDNS is still a great thing, despite the change in leadership.
After the (excellent person and programmer) lead architect left, it
became more of a business-heavy, "you're on your own" open-source
project. I really believe that it's worth helping people by using it,
even if it's just to make sure that a few programs don't take over the
DNS server field.
So. There is the lua2 backend, which seems documented, except
it is not. There are no config examples, there are no code examples,
basically it's a fair mix of guesswork, experience and trial and error,
mainly error, and going on usually undecipherable error messages.
The first step is pretty straightforward. All you have to do is
install the backend, and the distros usually make this process very
easy. The easy part ends here.
Then, the server configuration. It is not complex, something like
this shall be thrown into .../pdns.d/lua.conf:
launch += lua2
lua2-api = 2
lua2-filename = /etc/powerdns/pdns_backend.lua
# for debugging, otherwise no
lua2-query-logging = yes
And now let's see some lua example for that pdns_backend.lua:
-- you can run initialisation here
pdnslog("I am your lua backend and I am definitely starting!")
-- this is required
function dns_lookup(qtype, qname, domain_id, context)
pdnslog("I am processing your request")
ret = {}
table.insert(ret, { name=qname, type="A", content="9.8.7.6", ttl=666, domain_id=42, auth=true } )
table.insert(ret, { name=qname, type="A", content="5.4.3.2", ttl=668, domain_id=42, auth=true } )
if qtype:getName() == 'ANY" then
table.insert(ret, { name=qname, type="AAAA", content="2001:db8:deaf:beef::42", ttl=420, domain_id=42, auth=true } )
end
return ret
end
"This is probably all I needed!" I can just picture you saying here
and trying to go, but I'll hold on a little longer for you. Hey, if you
give this a try, you'll see that pdns-server starts and answers
questions, except your function never gets called. You'll just get a
"REFUSED" message. Isn't it lovely?
Well, not exactly. The thing is, PDNS needs to have a clear picture
of the domain in her little mind before she can start thinking about
processing it. I'm sure there's a way to do that from the Lua script,
but I'm not quite sure how yet.
Don't worry, this is going to be a breeze! All you need is a static
backend, and I usually use BindBackend for that. It gives PDNS some
basic fields to work with, especially SOA. There
are a bunch of documents out there that'll probably help you out. If
you're using pdns, chances are you've already got some static or SQL
backends set up. You can go ahead and create an empty zone with
just an SOA and maybe a few NSs. Then, you can try querying it and see
that… *shazam!*
…pdns will call your lua function!
That is where you can start. There is the way better recursor lua
documentation which can be useful about how to handle the args,
and the server doc tells you which functions the lua script can use.
And now you can ask yourself: why haven't they told you that in the
dcoumentation?
A Roskomnadzor bejelentette, hogy blokkolja a Telegram és a WhatsApp hívásait. A hívások helyreállnak, ha a messengerek „teljesítik a követelményeket”.
A Roskomnadzor hivatalosan bejelentette, hogy blokkolja a Telegram és a WhatsApp messengerekkel történő kommunikációt.
Az ügynökség szerint a döntést „a polgárok kérésére” hozta meg; a hívások helyreállnak, ha a messengerek „megfelelnek az orosz törvény követelményeinek”.
A Roskomnadzor nyilatkozata szerint a Telegram és a WhatsApp a csalók által a megtévesztéshez és pénzszerzéshez, valamint szabotázs és terrorista tevékenységekhez használt fő hangszolgáltatásokká váltak. Erre a következtetésre jutottak a bűnüldöző szervek, idézte a minisztérium.
A Telegram és a WhatsApp hívásainak korlátozása részleges lesz. A Roskomnadzor nem pontosította, hogy pontosan mit jelent a korlátozások „részlegessége”. Az ügynökség nem tervez további korlátozásokat a csevegőprogramok funkcionalitására vonatkozóan.
A felhasználók szerint a „részleges” azt jelenti, hogy a hivatalos DPI-berendezések nem képesek az összes forgalmat lehallgatni, ezért helyette szelektíven szakíthatják meg/szakíthatják meg a kapcsolatokat.
A Digitális Fejlesztési Minisztérium megígérte, hogy visszaállítja a Telegram és a WhatsApp hívásainak hozzáférését, ha a messengerek megfelelnek az orosz jogszabályok követelményeinek.
Az Oroszországi Utazásszervezők Szövetsége azt tanácsolta az országot elhagyó turistáknak, hogy az azonnali üzenetküldő alkalmazásokon keresztüli hívások tilalma miatt töltsék fel telefonjuk számláját extra pénzzel.
A tények mást mondanak
A Központi Bank által 2024-ben végzett „Cyberfraud: Portrait of the Victim” (Kibercsalás: az áldozat portréja) című felmérés szerint az üzenetküldő alkalmazások csak 15,7%-át tették ki a csaló támadásoknak. A felmérés azonban nem határozta meg, hogy ezeknek a támadásoknak mekkora része volt hívás, és mekkora része volt adathalász üzenet és más csalási módszer. A csalók viszont az esetek 45,6%-ában telefonhívásokra vagy SMS-ekre támaszkodtak.
Roskomnadzor announced blocking of calls to Telegram and WhatsApp.
Calls will be restored if messengers "fulfill the requirements"
Roskomnadzor has officially announced the blocking of calls via Telegram and WhatsApp messengers.
The agency says that it made the decision due to “numerous requests from citizens”; calls will be restored if the messengers "comply with the requirements of the 'law'".
The Roskomnadzor statement says that Telegram and WhatsApp have become the main voice services used by fraudsters to deceive and extort money, as well as to involve in sabotage and terrorist activities.
This is the conclusion reached by law enforcement agencies, the department cited.
The restriction of calls in Telegram and WhatsApp will be partial.
Roskomnadzor did not specify what exactly the “partiality” of the restrictions is.
The agency does not plan any other restrictions on the functionality of messengers.
Users said that "partial" means that the official
DPI equipment is not
able to eavesdrop on all traffic so it may selectively drop/break connections
instead.
The Ministry of Digital Development promised that they would restore access to calls in Telegram and WhatsApp if the messengers met the requirements for compliance with Russian legislation.
The Association of Tour Operators of Russia advised tourists leaving the country to top up their phone accounts with extra money due to the ban on calls via instant messengers.
Facts disagree
According to the survey "Cyberfraud: Portrait of the Victim", conducted by the Central Bank in 2024,
messengers accounted for only 15.7% of fraudulent attacks.
However, the survey did not specify what part of these attacks were calls, and not phishing messages and other methods of deception.
In turn, fraudsters relied on phone calls or SMS in 45.6% of cases.
Úgy tűnik, bizonyos szóbeli dolgok eltűnnek a digitális világból,
és már csak az emberek emlékeiben élnek, amíg. Ez a mondóka például
érdekes módon nekem „közismert” kategória: rengeteget viccelődtünk vele,
mint a – már akkor is abszurdnak hangzó – reklámokkal gyakran.
Benne van a tiltakozás a reklámok nevetséges-szomorú világával szemben,
ahol egy lepukkant állami cég, a lepukkant emberekből élő zálogház
vagy a lepukkant emberek fémgyűjtő filléreit naponta tucatszor
népszerűsítő TV-spotok győzködték a sátán tudja, hogy kit.
Leírom hát ide, hogy az Internet megtalálja.
Hív a vasút! Vár a MÁV!
Tört aranyat vesz a BÁV!
Gyűjtsd a vasat és a fémet!
Csókold meg a bal herémet!
A magyar qrmány (doktorbán személyesen, hiszen mindent ő kézivezérel)
szétcseszte az ingyen elérhető, államilag biztosított digitális aláírást,
helyette visszaléphettünk a tizenkilencedik századba, és faxolhatunk,
postázhatunk vagy kifizethetjük zsebből ezt az állami alapfeladatot.
Ennek az élvezeti sportágnak az egyik része az EU által szabályozott
és az EU-n belül mindenütt kötelezően elfogadott
– így Magyarisztánban is – digitális
és elektronikus aláírások rendszerének és az erről szóló európai szintű
jogszabálynak, az
eIDAS rendeletnek
a megismerése és értelmezése.
Ebből én most az AdES (Advanced Electronic Signature), magyarul
fokozott biztonságú elektronikus aláírásról
szeretnék írni. Még mielőtt ezt megteszem, említeném a
QES-t, vagyis a minősített elektronikus
aláírást, ami a jog előtt megfelel a régi AVDH-nak, vagyis
teljes bizonyító erejű magánokiratként funkcionál; az ilyen
aláírások jellemzően nagyon drágák, gyakran szükséges hozzájuk további
drága hitelesítő eszköz vagy valamilyen mindenhez-is-hozzáférési-jogot-akaró
mobilos app, ami esetleg nem fut a telefonok 75%-án, mert csak. Szóval
ez lenne az ideális aláírási szint, de a legtöbb hazánkfiának és
hazánkleányának nem életszerű. (És még nem is szólottam az elektronikus
pöcsétről, az eSeal-ről amivel a cégek szívathatják magukat.)
Az AdES egy könnyebben megvalósítható megoldás, jelentősen olcsóbb
is. Az, hogy mi felel meg neki leírja az, aki adja, én most nem
részletezném azon túl, hogy ez egy „normál”, biztonságos, elektronikus
aláírás.
Az AdES joghatása
Tök jó, hogy Advanced meg Electronic, de ilyen aláírásokkal már a
kilencvenes években is rendelkeztünk (habár nem volt szabványosítva).
De mindez csak akkor értelmezhető ha tudjuk, hogy mire jó, a jog mit
ismer el belőle, milyen célból, célra.
Nos, nem egyszerű kideríteni, mert az EU csak annyit mond, hogy
„Az elektronikus aláírás joghatása és bírósági eljárásokban bizonyítékként való
elfogadhatósága nem tagadható meg kizárólag amiatt, hogy az elektronikus
formátumú, illetve nem felel meg a minősített elektronikus aláírásra
vonatkozó követelményeknek.”
ami tök jó, nem tagadható meg csak amiatt, de megtagadható akármi más
miatt, akkor ezzel mennyire vagyunk előrébb?
A mindenféle jogászok mindenféle véleményének esszenciája az, hogy
az AdES a gyakorlatban egyenértékűnek tekinthető egy
egyszerű magánokirattal, vagyis egy egyszerű, önállóan
álló kézi aláírással.
Erről a jog azt mondja, hogy „Az egyszerű
magánokirat bizonyítékként való kezelésében az okiratban foglaltak
valóságának megítélése a bírói mérlegelés körébe tartozik.”
A gyakorlatban ez azt jelenti, hogy a hatóságoknak valósnak kell azt
feltételezniük, amíg fel nem merül, hogy nem az; viszont csak azon
esetekben használható, amikor jogszabály nem írja elő a
teljes bizonyító erejű magánokirat használatát.
Más szavakkal az én véleményem szerint ez azt jelenti,
hogy minden olyan esetben, amikor valamit alá lehet írni
simán, két tanú nélkül, akkor ott az AdES is megfelelő;
ha pedig eddig két tanú kellett, akkor vagy QES kell, vagy
a két tanúnak is alá kell írnia AdES-sel (de nagyon kíváncsi lennék
a jogászok fejére, amikor ezt olvassák, mert ez mérnökileg
tejesen logikus és egyértelmű, de a jogászok agya nem a logika
alapján üzemel).
Ennyit szerettem volna most elmondani, Tisztelt Bíróság!
Kérem felmentésemet! Köszönöm!
A fenti írás nem minősül jogi tanácsadásnak. Az ilyeneket pecsétes
ügyvédek adják tizenöt marék zsetonért. Azt kaptad, amiért fizettél.