Docker vs. systemd

I’ve decided to setup a few docker hosts. I needed to accessed them remotely, so I deployed the necessary CA and server keys and certs (see https://docs.docker.com/engine/security/https/#create-a-ca-server-and-client-keys-with-openssl for more). So far, so good.

I knew that docker should have been instructed to use these files, also to listen on 0.0.0.0. So I edited /etc/default/docker (on Ubuntu Bionic), restarted the docker daemon, and nothing happened.

I rushed to the docker site to figure out what da heck, and end up at https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file  telling me that unfortunately it wouldn’t work with systemd, you must use /etc/docker/daemon.json.

I’ve created the file:

{
“hosts”: [“0.0.0.0:2376”],
“tlsverify”: true,
“tlscacert”: “/etc/docker/ca.pem”,
“tlscert”: “/etc/docker/server-cert.pem”,
“tlskey”: “/etc/docker/server-key.pem”
}

 

then restarted docker, and still nothing. The -H fd:// option in /lib/systemd/system/docker.service file caused trouble preventing docker to listen on 0.0.0.0:

ExecStart=/usr/bin/dockerd -H fd://

Fear not, the fix is to remove -H fd:// as follows:

ExecStart=/usr/bin/dockerd

Then run systemctl daemon-reload && systemctl restart docker, and you should be able to connect to docker on the remote host.

Disable udp ports for Jenkins

I’ve noticed that Jenkins has an unpleasant habit to listen on two UDP ports (5353 and 33848) on all interfaces even if it was told to listen on 127.0.0.1:8080.

These ports are for UDP multicast broadcast. You may not need either of them, and you can disable them by adding the following options:

-Dhudson.DNSMultiCast.disabled=true -Dhudson.udp=-1

eg.

java -Dhudson.DNSMultiCast.disabled=true -Dhudson.udp=-1 -jar jenkins.war –httpListenAddress=127.0.0.1 –httpPort=8080 –daemon –logfile=/home/jenkins/jenkins.log

See the Jenkins docs for more https://wiki.jenkins.io/display/JENKINS/Features+controlled+by+system+properties

Secure your pendrive

Pendrives often contain customer, personal or other sensitive data. Now that GDPR is on us, it’s high time to protect those pendrives. The following example assumes that your pendrive is /dev/sdb, and you have a Linux partition on it (/dev/sdb1).

Format the device:
cryptsetup luksFormat /dev/sdb1

Open it:
cryptsetup luksOpen /dev/sdb1 pendrive

Create a filesystem:
mkfs.ext4 /dev/mapper/pendrive

Create a directory where we can mount it:
mkdir /mnt/pendrive

And finally mount the pendrive:
mount /dev/mapper/pendrive /mnt/pendrive

Chicken invaders 64-bites Linuxon

Még 1012 körül megvettem a Chicken Invaders (CI) the Ultimate Omlette editon-t valami 10 EUR körüli összegért. Pár évvel ezelőtt játszottam is vele nagyban.

Menet közben azonban 64-bites Slackware Linux-ra váltottam, és mivel a CI csak 32-bites csomagban érhető el Linux alatt, így bizony nem indult el, úgyhogy hagytam is mérgemben.

Tegnap azonban úgy döntöttem, megint játszani akarok vele. Szerencsére azóta Android-ra is kijött a játék. Az egy dolog, hogy nem szívesen vettem volna meg 2x (az androidos verzió ~279 Ft körül van), ennél nagyobb gond, hogy a kezemmel / ujjammal mindig takarom valahol a kijelzőt, ami sok elveszett életbe került. Ezért hát nekiduráltam magam, és eldöntöttem: márpedig futni fog ez 64-bit alatt is.

Ez 1. próbálkozás Virtualbox volt, mind windows, mind Linux alatt. A wines verzió elindult, de rögtön elhasalt, amint kattintani akartam. OK, legyen akkor 32-bites Ubuntu 16. A már jó 5éves kicsi notebook-om azonban CPU-ban elég gyengusz, így mire a Unity-ben egy Xterm megjelent beleőszültem.

OK, akkor 64-bites Slackware alatt kell mennie. Ehhez az alábbi 32-bites compat csomagokat telepítettem a http://www.slackware.com/~alien/multilib/14.2 cím alól:

aaa_elflibs-compat32-14.2-x86_64-23compat32
alsa-lib-compat32-1.1.1-x86_64-2compat32
alsa-oss-compat32-1.0.28-x86_64-1compat32
alsa-plugins-compat32-1.1.1-x86_64-1compat32
audiofile-compat32-0.3.6-x86_64-1compat32
compat32-tools-3.7-noarch-11alien
compat32pkg-1.6.131213-noarch-6_SeB
esound-compat32-0.2.41-x86_64-2compat32
expat-compat32-2.2.2-x86_64-1_slack14.2compat32
fontconfig-compat32-2.11.1-x86_64-2compat32
freeglut-compat32-2.8.1-x86_64-1compat32
glew-compat32-1.13.0-x86_64-1compat32
glu-compat32-9.0.0-x86_64-1compat32
libFS-compat32-1.0.7-x86_64-1compat32
libICE-compat32-1.0.9-x86_64-2compat32
libSM-compat32-1.2.2-x86_64-2compat32
libX11-compat32-1.6.4-x86_64-1_slack14.2compat32
libXScrnSaver-compat32-1.2.2-x86_64-2compat32
libXau-compat32-1.0.8-x86_64-2compat32
libXaw-compat32-1.0.13-x86_64-1compat32
libXcomposite-compat32-0.4.4-x86_64-2compat32
libXcursor-compat32-1.1.14-x86_64-2compat32
libXdamage-compat32-1.1.4-x86_64-2compat32
libXdmcp-compat32-1.1.2-x86_64-2compat32
libXevie-compat32-1.0.3-x86_64-2compat32
libXext-compat32-1.3.3-x86_64-2compat32
libXfixes-compat32-5.0.3-x86_64-1_slack14.2compat32
libXfont-compat32-1.5.1-x86_64-2compat32
libXfontcache-compat32-1.0.5-x86_64-2compat32
libXft-compat32-2.3.2-x86_64-3compat32
libXi-compat32-1.7.8-x86_64-1_slack14.2compat32
libXinerama-compat32-1.1.3-x86_64-2compat32
libXmu-compat32-1.1.2-x86_64-2compat32
libXp-compat32-1.0.3-x86_64-2compat32
libXpm-compat32-3.5.11-x86_64-2compat32
libXrandr-compat32-1.5.1-x86_64-1_slack14.2compat32
libXrender-compat32-0.9.10-x86_64-1_slack14.2compat32
libXres-compat32-1.0.7-x86_64-2compat32
libXt-compat32-1.1.5-x86_64-1compat32
libXtst-compat32-1.2.3-x86_64-1_slack14.2compat32
libXv-compat32-1.0.11-x86_64-1_slack14.2compat32
libXvMC-compat32-1.0.10-x86_64-1_slack14.2compat32
libXxf86dga-compat32-1.1.4-x86_64-2compat32
libXxf86misc-compat32-1.0.3-x86_64-2compat32
libXxf86vm-compat32-1.1.4-x86_64-2compat32
libdmx-compat32-1.1.3-x86_64-2compat32
libdrm-compat32-2.4.68-x86_64-1compat32
libepoxy-compat32-1.3.1-x86_64-1compat32
libfontenc-compat32-1.1.3-x86_64-1compat32
libpciaccess-compat32-0.13.4-x86_64-1compat32
libusb-compat-0.1.5-x86_64-2
libva-compat32-1.6.2-x86_64-1compat32
libva-intel-driver-compat32-1.6.2-x86_64-1compat32
libvdpau-compat32-1.1.1-x86_64-1compat32
libxcb-compat32-1.11.1-x86_64-1compat32
libxshmfence-compat32-1.2-x86_64-2compat32
mesa-compat32-11.2.2-x86_64-1compat32
nettle-compat32-3.2-x86_64-1compat32
pixman-compat32-0.34.0-x86_64-1compat32
sdl-compat32-1.2.15-x86_64-5_slack14.2compat32
xcb-util-compat32-0.4.0-x86_64-2compat32

Ezután kellett egy reboot a glibc miatt. Ja, el ne felejtsem, a glibc* csomagokat a slackpkg konfigban blacklist-re tenni, nehogy egy frissítés simán felülírja az alienbob-féle compat csomagokat.

Indítom a játékot: ./Game_launcher, ill. nem is ez kell neki, elég az is, ha  a game/CI4.exe (igen, exe kiterjesztés Linuxon) programot indítom.

Ekkor viszont valamilyen PCM gubanc miatt nem indult el. OK, barátunk a strace, amivel kiderítettem, hogy a ~/.asoundrc kéne neki. Adjunk neki:

touch ~/.asoundrc

152. indítás: ugyanazzal a PCM gubanccal lép ki. Rákerestem google barátunknál, hogy mi ez a file, ill. mi kéne legyen benne.

$ cat /proc/asound/cards
0 [PCH ]: HDA-Intel – HDA Intel PCH
HDA Intel PCH at 0xe1600000 irq 26

Így végül az alábbi sorokat tettem bele google barátunk tippje alapján:

pcm.!default {
type hw
card 0
}

ctl.!default {
type hw
card 0
}

Szóval vagy 187 db indítás után végre elindult a cucc SDL grafika, valami régi (alsa?) hang, és jöhet a warp-olás!

Őszintén sajnálom, bocsánatot kérek

Legalábbis ezeket a szavakat használta az arrogáns Dabóczi Kálmán a Portfolio cikke szerint – ha valaki egyáltalán hitelt adna a szavának.

Ennek aligha az az oka, hogy emberünk rájött, hogy igazi seggfejként viselkedett, meg nyilatkozgatott, hanem sokkal inkább az, hogy a BKK és a T-Systems facebook oldalain masszív kritikát kapott mindkét cég.

Szóval a meginduló népharag még Tarlós ingerküszöbét is elérte, aki “átfogó” vizsgálatot követel.

De hadd segítsek Tarlósnak. Az történt, hogy a T-Systems kiadott egy szakmailag vállalhatatlan, kritikán aluli terméket. A legalapvetőbb biztonsági, adatvédelmi tesztek sem történtek meg, vagy ha voltak is ilyenek, azok bizonyára buktak.

Noha ez nem egy kézzel fogható termék, nem is egy hagyományos szoftver, amit letöltesz, megveszel, stb, hanem Software as a Service (SaaS) megoldással szolgáltatja ezt a T-Systems a BKK részére. Ez azonban nem lenne kizáró oka annak, hogy a BKK azt műszakilag átvegye, tesztelje. Ez nem is történt meg, vagy ha mégis, akkor hasonló komLOLysággal és eredménnyel, mint a T-Systems részéről.

Nehezen tudom elképzelni, hol kéne a seggberúgásoknak végetérniük, de abban biztos vagyok, hogy kezdődniük a Dabóczi Kálmán nevű kirúgásával kell. Thx, kispajtás, tartsd meg magadnak a hazudozást. Aztán ott van még a T-Systems nagypofájú megmondója, Takács József IT-biztonsági igazgató. Neki kell következnie.

Aztán ott van még a T-Systems vezére, Kaszás Zoltán. Szegény lelkemnek ennyi idő kellett, mire átlátta a nyilvánvalót. És ez csak az elnézőbb forgatókönyv. Szegénykémnek biztos szóltak a német főnökei, hogy WTF van nála ebben a kuplerájban, hogy az internet népe ilyen szinten lehúzta a német anyacég facebook értékelét is?

Az ő helyében kitenném a netre, hogy milyen minőségbiztosítási folyamatok lesznek hétfőtől a cégében, hogy a jövőben ne ismétlődhessen meg hasonló fiaskó. Mert amikor Takácsnak feltették a kérdést, hogy “[…] a rendszer műszaki színvonalát jellemzőnek tartja-e a T-Systems által fejlesztett egyéb megoldásokra is?“, akkor ő sokatmondóan hallgatott.

Twitter sucks

Regisztráltam egy twitter acc-ot. De meg is bántam. Egyrészt a kívánt username nem volt elérhető. OK, legyen egy másik. Shit happens. Aztán retweet-eltem 3 tweet-et, majd Donald Trumpnak küldtem volna egy kedveset, amikor szólt a twitter, hogy valami nagyon furcsát csináltam, ezért telefonos ellenőrzés szükséges.

Nyátokat, aztat. A regisztráció során skippeltem a telefonszám megadását. Nem akarom boldog boldogtalannak megadni, még akkor sem, ha a 2 faktoros authentikáció (+sms-ben kapott kód) növeli a biztonságot.

Kedves Twitter! Ez nagyon gyenge próbálkozás volt a számom megszerzésére. Hogy stílusosan fejezzem ki magam: #fuckyou #twitter

T-Systems: vállaljuk a BKK értékesítési rendszerét

Ezzel a címmel jelent meg egy cikk a HWSW-n az alábbi felvezetővel:

“Örömmel vesszük a hibajelentéseket” – mondta Takács József, a BKK új online értékesítési rendszerét fejlesztő T-Systems Magyarország IT-biztonsági igazgatója, majd néhány mondattal később közölte, hogy személyesen tett büntetőfeljelentést az egyik súlyos hibát kimutató és azt bejelentő felhasználó ellen.

A cikkben elképesztő biztonsági problémákról tudósítanak (pl. clear text szövegként tárolt jelszavak, 50 Ft-ért is meg lehetett venni a 9500 Ft-os bérletet, ha ügyesen manipulálod az online fizetés folyamatát), és ki tudja, mi lehet még a felszín alatt, ha valaki jobban megkaparja azt.

Amikor pedig valaki jelez egy otromba biztonsági hibát a T-systems nevű kuplerájnak – akik állítólag SaaS megoldásban üzemeltetik a rendszert, és havi csillió pénzt kasszíroznak a BKK-tól – akkor a takács józsef nevű hulladék ahelyett, hogy udvariasan megköszönné a javító szándékú bejelentést, még neki áll feljebb, és büntetőfejlentést tett. Hogy nem sül le a pofájáról a bőr!

“[…] Takács elismerte, hogy a rendszert a T-Systems fejlesztette, annak műszaki színvonalát pedig vállalja”

Szabad fordításban: ez így jó, ahogy van, ti vagytok a hülyék, ha valami ‘nem úgy alakul’.

Amikor megkérdezték tőle, hogy kedves barátom, a t-systems többi cucca is ilyen kalap szar? akkor nem válaszolt. Mivel a hallgatás beleegyezés, így ezt elfogadom töredelmes beismerő vallomásnak: takács józsef szerint a többi t-systems terméktől is kb. hasonlóra lehet számítani.

“a főváros, a BKK és a T-Systems egybevágó közlése szerint a rendszerből támadóknak nem sikerült adatot kinyerniük, a felhasználók személyes adatai biztonságban voltak és biztonságban is vannak.”

Aha, egybevágó közlemény. Mintha a fővárosnak meg a BKK-nak halvány fingja lenne az IT biztonságról. Nyilvánvaló hazugság. Én lebeszélek mindenkit, hogy a t-systems nevű kupleráj rendszerét használja.

De most jön a legjobb:

“[…] Takács is meglepetését fejezte ki, hogy a megoldás ellen “rosszindulatú támadások” indultak

Erről egy klasszikus jut eszembe a TV bemondó casting-ról: Jaj kamera! Jaj, mikrofon!

A kommentelők persze szétszedték emberünket, ami nem is csoda. Éppen azon gondolkoztam, kinek lehet megköszönni, hogy megint egy csomó  közpénzt szórnak el valami ordenáré böszme dologra? Köszönjük meg a takács józsef nevű emberi hulladéknak, ill. a t-systems nevű kuplerájnak.