Järjetöntä spämmäystä blogissa

Viime viikon puolella havaitsin blogissani järjetöntä hidastelua. Sivulataukset eivät toimineet kunnolla, kuvat ei menneet palvelimelle aina perille ja muutenkin koko sivusto takkuili. Menin tutkimaan ongelmaa palvelimelta ja havaitsin aivan järjettömän määrän latauksia yhdestä IP-osoitteesta jotka kaikki kohdistuivat WordPressin XML-RPC osoitteeseen. Sivulatauksia tuli useita kymmeniä sekunnissa joten kyseessä oli luultavasti satunnainen palvelunestohyökkäys.

Jotta tästä postauksesta olisi jollekin mahdollisesti jotain hyötyä voisin avata hieman kuinka ongelmaa lähdin selvitämään ja korjaamaan.

Ongelman selvittely

1) Kirjauduin palvelimelle ja katsoin avoimet prosessit komennolla top. Havaitsin että apache2-prosesseja oli aivan järjetön määrä siihen mitä niitä on normaalisti palvelimella. Normaalisti näitä on alle 5, nyt niitä oli kymmenittäin.
2) Koetin ensialkuun vain restartata Apachen siltä varuilta että jokin prosessi olisi vain jäänyt jumiin. Pian Apachen restartin jälkeen ongelma ilmeni uudelleen joten lisäselvittelyä joutui tekemään.
3) Listasin avoimet yhteydet komennolla netstat jolloin näin että yhdestä IP-osoitteesta tulee paljon yhteyksiä.
4) Tarkistin Apachen logeista onko siellä mitään ihmeellistä ja havaitsin että tuosta osoitteesta tulee koko ajan POST-requesteja osoitteeseen /xmlrpc.php

Ongelman korjaaminen
1) Droppasin kyseisen IP:n kokonaan Linuxin palomuurilla
iptables -A INPUT -s 255.255.255.255 -j DROP jossa tietenkin 255.255.255.255 tilalle on vaihdettu oikea IP-osoite, eli se mistä tuhoton määrä requesteja tuli
2) Lisäsin tämän jälkeen myös .htaccess-tiedostossa koko XML-RPC:n blokkiin jo Apachen puolelta jatkoa ajatellen.

Tarkemmin tietoa Linuxin palomuurilla IP:n blokkaamisesta ja unblokkaamisesta löytää mm. täältä. Lisätietoja WordPressin XML-RPC:n blokkaamisesta löytyy vastaavasti täältä.

Jatkotoimenpiteet

Selvitin myös kyseisen IP-osoitteen palveluntarjoajan ja olin yhteydessä heidän yhteyshenkilöihin ja infosin heitä tahallisesta verkkohäirinnästä heidän verkossaan ja pyysin heitä olemaan yhteydessä tuon IP-osoitteen omistajaan että lopettaa kyseisen toiminnan.

Moral of the story – loppuu se perseily. Mikäli siis aikomuksena on tehdä palvelunestohyökkäystä ja satut summassa valikoimaan tämän blogin tulen jatkossakin tekemään teknisiä toimenpiteitä ongelman selvittämiseksi ja toki tulen myös jatkossakin ei-teknisesti hoitamaan yhteydenotot operaattoreille ja palveluntarjoajille joiden verkosta häirintää tapahtuu joten script-kiddieiden ja muiden nyyppien kannattaa suosiolla unohtaa kyseinen toiminta, sillä siitä voi tulla seuraamuksiakin 😉

Kokeilussa König All-in-one muistikortinlukija

König muistikortinlukija

Jonkin aikaa on jo mielessäni ollut etsiä muistikortinlukija Windows-koneelleni jotta voisin jatkossa tehdä kuvankäsittelyä ja blogin kirjoittamista enemmän PC:llä aikaisemmin käyttämäni iMacin sijaan. Huonejärjestys on talossa muuttunut jo jokunen aika takaperin eikä iMac ole enää makuuhuoneessa ja olen alkanut vähitellen kallistumaan siihen suuntaan että myyn sen pois mikäli saan Windows-koneella tehtyä kaikki nykyisen tarvitsemani asiat.

Moni asia on ollut joissa Mac OSX on ollut ainoa vaihtoehto itselleni erinäisistä syistä johtuen. Yksi on tietenkin kuvankäsittely, sillä iMacin näyttö on todella hyvä verrattuna aikaisemmin PC:ssä käytössäni olleeseen pelinäyttöön. Kuitenkin pelinäyttö on jo kuukausia takaperin tullut myytyä kaverille ja olen vaihtanut merkittävästi (väritoistoltaan) parempaan IPS-paneeliseen näyttöön joten nykyisin on realistiset mahdollisuudet tehdä kuvankäsittelyä näytön suhteen myös Windows-koneellani.

En ole näytöstä vielä mitään arvostelua kirjoittanutkaan vaikka näyttö on jo kuukausia ollut käytössä, mutta ehkä joskus saan aikaiseksi sellaisenkin kirjoittaa. Kuitenkin käyttämäni näyttö on 27-tuumainen BenQ BL2711U joka on tuntunut varsin hyvältä käyttää.

Jotta kuvankäsittelyä voi tehdä Windows-koneella pitää tietenkin kuvat saada tietokoneelle siirrettyä. Aikaisemmin olen tunkenut muistikortin suoraan iMacin takana olevaan muistikortinlukijaan, mutta Tokmannilla käydessäni ostin Königin valmistaman All-in-one muistikortinlukijan. Hintaa tuotteella on ainoastaan 9,95 eur joten mistään kalliista tuotteesta ei ole kyse.

Nyt joitain viikkoja käyttäneenä tuote on tehnyt täysin sen mitä sen tarvitseekin – se on helppo käyttää eli tunnistuu suoraan Windowsissa ilman ajureiden latailua pitkin nettiä, muistikortin saa sinne sisään helposti ja myös sieltä ulos ja siirtonopeudet ovat tarpeeksi nopeat omaan käyttööni.

Muistikortinlukija on ainoastaan USB 2.0 nopeuksinen, mutta omassa käytössäni asialla ei ole juurikaan merkitystä. En siirrä kerralla niin suuria kuvamääriä ja hitain osuus ei ole kuvien siirrossa muutenkaan USB-väylän nopeus joten USB 3.0:sta ei olisi itselleni niin paljoa hyötyä että siitä kannattaisi lisää maksaa. Kokonaisuutena Königin muistikortinlukija on siis ainakin SD-korttien lukemisessa hinta-laatu-suhteeltaan varsin sopiva tuote.

Kokeilussa Nintendo Classic Mini

Muutama viikko takaperin löysin Prismalla käydessäni Nintendo Classic Mini -pelikonsolin. Jossain vaiheessa näitä tuli Suomeen myyntiin mutta ne myytiin silloin nopeasti loppuun enkä saanut moista tuolloin hankittua, mutta onneksi nyt näitä on tullut uutena eränä edulliseen hintaan joten sama oli vihdoin itsellekin moinen hankkia kun sopivasti kaverillekin sain myytyä vanhan ylimääräisen puhelimeni ja sain ylimääräistä rahaa tuhlaukseen.

Aikaisemmin olen ostanut jo SNES Classic Minin josta tännekin kirjoitin lyhyesti viime vuoden lokakuussa, joten mukava että kokoelmaan sai nyt tämän originaalin Nintendon pelejä sisältävän kapistuksen.

NES Classic Mini on hyvin pitkälti originaalin Nintendon näköä mutta merkittävästi pienemmässä koossa, HDMI-liitännällä sekä USB-liittimellä josta laitteeseen saa virrat. Mukana paketissa tulee konsolin lisäksi USB-kaapeli, HDMI-kaapeli sekä yksi peliohjain. Yksin näillä kuitenkin pääosin pelaa joten toisen ohjaimen puute ei varsinaisesti häiritse itseäni, mutta joillekin tämä voi olla isompi miinuksen arvoinen asia.

Laitteessa on asennettuna valmiiksi 30 peliä, mm. Super Mario, Mega-Man II sekä Punch-Out. Koko listan peleistä mukana tulevista peleistä löytää mm. Wikipediasta.

NES Classic Mini on mukavan mutkaton ottaa käyttöön ja käyttää jatkossakin, ohjaimen tuntuma on kouraan sopiva ja mukana tulevissa vakiopeleissä on useita itselleni tärkeitä pelejä lapsuusvuosiltani. Tietenkin sinne olisin kaivannut Bucky O’Harea, Black Mantaa, Boat Duelia, Tetristä ja monia muita helmiä mutta vakiona mukana tulevat pelit tarjoavat varmasti viihdettä nekin.

Ilahduttavasti Nintendo Classic Mini tarjoaa mahdollisuuden tallentaa pelinsä missä vaiheessa tahansa. Kiitos tämän ominaisuuden sain vihdoin ja viimein pelattua Super Mario Brosin läpi 😀 Täytynee harjoitella pelaamaan kahdeksannen maailman kentät niin hyvin että voin jokin päivä pelata koko pelin läpi ilman tallennuksen käyttämistä 🙂

Netistä löytyy myös ohjeita kuinka laitteen voi häxätä ja laittaa sisään paljon muitakin pelejä kuin vain vakiona mukana tulevat joten täytynee perehtyä josko sitä saisin aikaiseksi tehdä. Pitänee pistää tänne postaus aiheesta mikäli moista tulee koetettua.

Monihuoneäänijärjestelmään muutoksia

Genelec G One on lähes identtinen 6010a:n kanssa

Kuten aikaisemmin olen tänne blogiin kirjoittanut on kotonani käytössä ollut Chromecast Audiolla toteutettu monihuoneäänijärjestelmä joka on pääpiirteittäin ollut hyvä taustamusiikin kuuntelussa. Kuitenkin yksi haaste monihuoniäänijärjestelmän käytössä on ollut äänenvoimakkuuden säätö silloin kuin jokaisessa Chromecastissa on ollut kiinni erilaiset kaiuttimet.

Aikaisemmin kaiutinsetuppina on ollut makuuhuoneessa Focal XS Book -kaiutinpari, olohuoneessa Genelec 6010a -pari jotka ovat olleet kiinni Audiolabin M-Dacissa joka on toiminut etuvahvistimena ja keittiössä on ollut käytössä JBL:n kelloradio. Koska jokaisen kaiuttimen/kaiutinparin äänenvoimakkuutta on voinut säätää erikseen on ohjelmallisesti äänenvoimakkuuden säätämisessä ollut hieman haasteita jos ja kun huoneessa ollessaan on ääntä säätänyt hiljaisemmalle tai kovemmalle. Käytännössä ääniasetuksien säätäminen turhan monimutkaisella tapaa fyysisestä napista + ohjelmistolla on aikaavievää ja turhauttavaa joten päätin että hankin jokaiseen oleskeluhuoneeseen samanlaiset kaiuttimet.

Katselin netistä useita erilaisia vaihtoehtoja kunnes tulin tulokseen että voin tämän toteuttaa Genelecin kaiuttimilla siten, että ainoastaan yksi Genelecin kaiutin on per huone. Tämä ei toki luo mitään hienoa stereokuvaa kuunteluun, mutta koska kyseessä on muutenkin taustamusiikin kuuntelu enkä koskaan ole kaiuttimeen nähden optimaalisessa sijainnissa ei tällä asialla ole mitään merkitystä.

Yksinäinen Genelec nurkassa

Aikaisemmin eri vaihtoehtojen hintoja miettiessä Genelec tuntui tällaiseen käyttöön tarpeettoman hinnakkaalta, mutta katsottua muita markkinoilla olevia vaihtoehtoja huomasi että hinta ei ole kuitenkaan paha, etenkin kun entuudestaan kotoa löytyi kaksi kappaletta Genelecin 6010a -kaiuttimia joten enää yhdelle oli lisää tarvetta. Jos olisi jonkun muun valmistajan aktiivikaiuttimeen päätynyt olisi niitä pitänyt ostaa vähintään kolme joten hintaa olisi tullut merkittävästi enemmän sillä en kuitenkaan jaksa aivan minkälaisella kaiuttimella tahansa edes taustamusiikkeja kuunnella päivittäin tai lähes päivittäin ja vähänkään kuunneltavammat kaiuttimet kuitenkin maksavat kohtalaisesti.

Tuumasta siis toimeen, kävin eilen töiden jälkeen Verkkokauppa.comissa poimimassa Genelec G One -kaiuttimen ja siihen sopivia johtoja joilla saan Chromecast Audion kiinni kaiuttimeen. Tai näin ajatuksissani ajattelin kunnes kotona huomasin että aivan näin putkeen ei johto-ostokset menneet ja illasta sain hakea vielä Malmin Prismalta kaapelin millä saa 2 x RCA naarasliitintä muunnettua 1 x RCA urosliittimeksi jotta se sopii Geneleciin. Onneksi Prisma on myöhään asti auki joten ei tullut edes kiirettä kaapelin hakemisen kanssa.

Verkkokauppa.comista hankin myös neljännen Chromecast Audion valmiiksi monihuonejärjestelmän laajentamista WC-tiloihin saakka. Tähän onneksi ei tarvinnut adapteria ja sain heitettyä aikaisemmin keititössä olleen kelloradion vessaan siihen saakka että on budjettia ostaa sinnekin Genelecin G One tai 6010a. Pitää kyttäillä josko käytettynä näitä sattuisi edullisesti löytymään.

Olohuoneessa kaiutin sijaitsee CD-hyllyn päällä. Johdot on vielä laittamatta fiksummin.

Vihdoin kun sopivat kaaplit oli saanut hankittua oli kaiuttimien virittäminen helppo operaatio. Käytännössä Chromecast Audion 3.5 mm audioliitännästä lähtee kaapeli jossa on 2 x RCA urosta. Siitä sitten menee toinen johto missä on 2 x RCA naarasta jotka muuttuvat yhdeksi RCA urokseksi joka sitten menee kiinni Geneleciin. Koetin etsiä myös suoraan jos olisin löytänyt kaapelia mikä tekee 3.5 mm -> 1xRCA mutta en sellaisia sattunut löytämään. Pitää joskus ostaa jos tulee jossain vastaan mutta ei ole mikään kovin suuri prioriteetti sillä nykyinen ratkaisu toimii ongelmitta.

Äänenvoimakkuuden säätäminen helpottui merkittävästi kun jokaisessa tavallisessa oleskeluhuoneessa on kutakuinkin samanlaiset kaiuttimet. Toki 6010a ja G One eroavat toisistaan hieman, esimerkiksi ledin väri on erilainen joten G Onea ja 6010a:ta en laittaisi pariksi sen vuoksi, mutta muuten ulkoisesti kaiuttimet ovat lähes samanlaiset. G Onessa ei ollut takana myöskään erillistä äänensäädön mahdollisuutta jolla voisi rajoittaa hieman miten kovaa maksimissaan voi ääntä tuutata pihalle toisin kuin 6010a:ssa on mutta tämä onneksi ei ole omalla käytölläni ongelmallista – tai ainakin toivon näin, sillä jos onnistun nämä päräyttämään täysille lähtee ääntä kiitettävän kovaa eikä aivan vieressä silloin halua olla. Lisäksi G One taitaa mennä jonkinlaiseen virransäästötilaan jos signaalia ei tule tiettyyn aikaan joten pieniä muutoksia kaiuttimissa on. Kuitenkin mikään muutos ei vaikuta haitallisesti tähän käyttötarkoitukseen joten 6010a ja G One sopivat samaan setuppiin vailla huolia ja murheita.

Genelecin kaiutin löysi tiensä jääkaapin viereiseen koloon

Lyhyen muutamien tuntien kuuntelun perusteella nykyinen monihuoneäänijärjestelmä voittaa aikaisemman setuppini selvästi. Äänenvoimakkuuden säädön helppous on iso etu ja äänenlaatu on jokaisessa huoneessa yhtä tasokas eikä ole eroja että toisessa huoneessa on enemmän bassoa kuin toisessa, joten hyvältä vaikuttaa!

Äänenvoimakkuudessa 1-2 % on sopiva aamuksi/illaksi, 10 % on sopiva yksin kotona ollessa siten että musiikki toimii taustamusiikkina hyvin mutta jos vieraita on kylässä ja haluaa jutella siten että taustamusiikit soivat hiljaisemmalla on 4-6 % luultavasti optimaalisin. Käytännössä ääntä lähtee siis kaksion huoneisiin täysin riittävästi jo Genelecin pienimmilläkin kaiuttimilla.

Kuten aiemmin kirjotin, WC vielä menee erilaisella kaiuttimella, mutta koska WC-tiloissa ei yleensä oleskella niin kauaa ei tästä ole haittaa. Kuitenkin jossain vaiheessa sinnekin on hyvä laittaa samanlainen kaiutin asioiden yksinkertaistamiseksi.

Homeassistant ja Chromecast audio-ongelma

Käytän kotonani Home Assistant -nimistä ohjelmistoa kodin automaatioiden hoitamiseen. Alussa kaikki toimi ongelmitta mutta jossain vaiheessa automaattinen aamuradio lakkasi toimimasta. Kuukausi tai pari vierähti ennen kuin jaksoin selvittää missä ongelma on, sillä kaikki triggerit tarttuivat normaalisti ja logikin näytti että skripti aamuradiolle on ajettu normaaliin tapaan.

Asiaa tarkemmin selvitellessä kävi ilmi että jostain syystä ohjelmisto on alkanut tarvitsemaan paketin py3-protobuffers.

Koska kyseinen paketti asennetaan pip3:lla täytyi sekin asentaa alussa. Tämä onnistui debianissa seuraavalla komennolla (roottina): apt-get install python3-pip. Tämän jälkeen varsinainen paketti onnistui asentaa komennolla pip3 install py3-protobuffers

Tämän jälkeen kun suoritin Chromecast audioon ääntä lähettäviä skriptejä toimi kaikki jälleen normaalisti. Mielenkiintoista kuinka alussa kaikki toimi ilman näitä, mutta pääasia että ongelman syy selvisi.