Kategoriarkiv: Ingen kategori

Bloggy tackar för sig

bloggy-logo8-small

Uppdatering: En intressant sak som kan vara värt att nämna i sammanhanget är att Bloggy hade mer svenska användare än Twitter när det begav sig.

Det är nu 7 år sedan som jag skapade Bloggy eftersom Google köpte upp (och la ner..) Jaiku. Twitter fanns, men var en tjänst som låg långt efter både Pownce och Jaiku. Jag skapade Bloggy under några månaders intensiv kväll/nattprogrammering.

Så här såg det första mailet jag skickade ut till en privat e-postlista för att erhålla lite feedback den 15:de September 2008:

De senaste halvåret så har jag lagt mer eller mindre allt krut på ett enda projekt som går under namnet Bloggy.se som är en mikroblogg-plattform, och nu skulle jag behöva lite hjälp med att testa och hitta buggar och så klart få lite input på bra/dåliga saker innan det är dags för en publik beta.

Bloggy har nu strax över 90k användare och har en internationell systersajt med 9 språk på Cuzo.com. Det har varit många roliga minnen och många sömnlösa nätter och tidiga morgnar med buggfixar (alltid mot livesystem). Totalt finns 12 625 120 inlägg i bloggys databas (automatiska, manuella etc).

Intressanta blogginlägg som jag skrivit på vägen:

Avslutar med en bild som var vanligt förekommande under vissa perioder:

jaiku

Så arbetar .SE:s styrelse

CC BY 2.0 Flickr @kalexanderson
Bild CC BY 2.0 Flickr @kalexanderson

Jag  är sedan några månader invald i .SE:s styrelse med 9 andra personer (inklusive suppleant och sekreterare) och tänkte berätta utifrån mitt perspektiv hur vi jobbar. Arbetet styrs först och främst av den urkund som en gång i tiden upprättades samt stadgar och en arbetsordning för styrelsen. Några av de myndigheter som bedriver tillsyn gällande .SE:s verksamhet är Länsstyrelsen och PTS.

Vi träffas runt 8 gånger per år och några av dom återkommande punkterna på agenda är att vi går igenom ekonomi tillsammans med VD samt så rapporterar VD:n om verksamheten i stort.

Styrelsen beslutar även om stiftelsens mål på lång samt medellång sikt och det är på en övergripande nivå. Det är sedan via VD:n och ledningsgruppen som dessa övergripande beslut bryts ner och effektueras i organisationen.

Vi är en grupp med personer där alla har sin unika infallsvinkel och syn på saker vilket jag tycker är bra och något som en styrelse bör ha. Och eftersom vi sitter på en unik situation i Sverige så är det viktigt att vi förvaltar .SE ccTLD:n och stiftelsen på ett bra sätt. Det innebär att .SE medverkar till att internet utvecklas i en positiv riktning i Sverige men även att .SE är en attraktiv och bra arbetsplats.

Några av de projekt som .SE bedriver är Webbstjärnan, bokpublicering, statistikframtagning, Internetfonden, satsningar på ökad digital delaktighet, konferensen Internetdagarna och seminariertestverktyg, utveckling av program med öppen källkod, stöd vid införandet av IPv6.

Även om jag tycker att det är viktigt med transparens så omfattas det mesta av styrelsens arbete av sekretess.

Psst! Du vet väl att du kan bidra till internets utveckling genom att bli medlem i ISOC-SE?

Konsultlivet

Det senaste året har jag fokuserat mer på min konsultverksamhet under Triop AB. Det har varit otroligt kul men också långa dagar och mycket stressigt stundtals. Försöker bli bättre på att effektivisera konsultlivets vardag genom att lära mig mer om GTD och använda verktyg såsom Billogram.

Lär mig även mer om offentliga upphandlingar och ramavtal samt försöker lägga tid på att forska och föreläsa mer. Har så klart inte övergett den egna webbutvecklingen helt och har en ny tjänst som snart lanseras. Avslutade nyss även bokslutet för förra året och vinsten tredubblades i bolaget vilket alltid är trevligt och omsättningen gick upp med 30%.

Den blogg som jag uppdaterar mest just nu är Kryptera.se där jag skriver om IT-säkerhet och kryptering vilket är några om områden som jag konsultar inom förutom DevOps.

På det mer personliga planet så klarade jag av mitt mål som jag tränat inför i två år: Ironman Kalmar 2014 vilket jag bloggade om på jonaslejon.se.

Några intressanta event framöver:

Hackad WordPress? Så här gör du

Du vet väl att du kan anlita mig för att rensa upp och utreda en hackad WordPress-installation? Kontakt här >

Har du upptäckt att din blogg länkar till suspekta sajter eller att Google Webmaster Tools larmar? Så här gör du för att undersöka hacket samt återställa bloggen efter det att den blivit hackad.

Omfattning av hacket

Det första är att ta reda på modus operandi. Hur har antagonisten tagit sig in och exakt vad har denne genomfört? Jag skulle nog påstå att något av följande scenarion är mest troliga orsaker till intrång:

  • Någon har knäckt ditt lösenord
  • Sårbarhet i plugin
  • Delad hosting

Det är inte en lätt match att ta reda på tillvägagångssättet då omfattande genomgång av loggfiler samt andra filer måste genomföras. Att redan innan ett intrång genomförs är det bra att kontrollera att du verkligen har tillgång till loggfiler och kan genomföra IT-forensik.

Att söka efter vanligt förekommande PHP-funktioner som används vid bakdörrar såsom preg_replace() med /e (execute), eval, base64_decode eller system() och liknande kan möjligtvis ge några spår. Även så är .htaccess eller liknande filer populära att lägga in bakdörrar

Det kan även vara bra att kontrollera om inlägg har modifierats och iframes eller liknande har in injicerats:

SELECT * FROM wp_posts WHERE post_content LIKE '%<iframe%' OR
post_content LIKE '%<noscript%' OR post_content LIKE '%display:%';

Återställning efter hacket

Det bästa är att installera om samtliga plugins samt WordPress core och sedan återställa WordPress-databasen samt ändra samtliga lösenord i WordPress. På så sätt kan inget ligga kvar och du har troligtvis fått ut antagonisten. Dock finns det möjlighet att du installerar ett plugin som innehåller en sårbarhet igen om du ej genomfört en ordentlig utredning. Observera även att du måste helt tömma din webbroot, det räcker inte att skriva över filer för då kan eventuella extra filer (bakdörrar) ligga kvar.

Om antagonisten är inloggad i WP-admin och cookies är aktiva så måste security-keys ändras och här hittar du hur du gör (i wp-config.php filen).

Har intrånget skett genom delad hosting så kommer du troligtvis att bli hackad igen.

Du kan också givetvis anlita mitt företag Triop AB för att utföra undersökning samt rensa ut eventuella angripare.

Läs även det jag skrev 2012 om samma ämne:

Affiliateprogram för https.se

Jag säljer sedan några år tillbaka SSL-Certifikat på https.se och har nu startat ett affiliate-program via Adrecord. På https.se så hittar du SSL-Certifikat från bl.a. Comodo, GeoTrust  och RapidSSL.

Under Juli och Augusti så kan du tjäna hela 100kr per order. Jag har även försökt att underlätta flödet under beställning av certifikat så mycket som möjligt och använder bl.a. garlicjs. Och du kan så klart betala med Bitcoin, kort samt faktura vid beställning.

https_ad_250x250PS: Om du inte har testat Adrecord tidigare, gör det! Och använd gärna någon av ovan affiliate-länkar.

 

Lär dig programmering med Scratch

.SE har nu lagt upp en spellista på YouTube med 7 avsnitt om hur du kommer igång med Scratch. Videofilmerna riktar sig främst till barn men fungerar även bra för andra som vill lära sig programmering. Jag tycker det är viktigt att vi sprider kunskapen om programmering och speciellt att fler döttrar lär sig programmering.

Måns Jonassson berättar här hur du gör:

Denna bild är från då jag var med min älsta dotter som fick lära sig programmering vid 6 års ålder:

Barnhack hos .SE

Arkivera webbserver-loggar

loggfilerWebbserverloggar är något som jag älskar att hata. De ligger och fyller hårddisken men kan vara otroligt bra att använda för felsökning eller uppföljning. Därför har jag klurat ett tag nu hur jag kan arkivera stora mängder loggar utan att det tar allt för mycket resurser.

Den lösning som jag tycker är mest smakfull är att använda det inbyggda Linux-kommandot logrotate tillsammans med s3cmd för att skicka loggarna till Amazon S3. Efter detta så sätter jag en regel som skickar vidare loggarna till Amazon Glacier som är snorbilligt men tar 3-5h för att återställa filer.

Denna guide förutsätter att du har ett konto hos Amazon och har satt upp en bucket i S3 (i detta fall med namnet triopab-logfiles).

Steg 1 – Installera och konfigurera s3cmd

Under ubuntu/Debian etc installerar du enbart paketet med apt:

$ sudo apt-get install s3cmd
Sen är det bara att konfigurera upp s3cmd så med Access key + Secret key:
$ s3cmd --configure

Steg 2 – Konfigurera logrotate

Logrotate följer med de flesta Linux-dialekter och det vi gör är att vi skapar en egen konfigurationsfil som logrotate ska använda sig av.

Konfigurationsfilen kallar jag utvbloggen.conf och den ser ut enligt följande:


compress
compresscmd /bin/bzip2
compressoptions -9
compressext .bz2

dateext
dateformat -%Y-%m-%d-%s

rotate 3
nomail
missingok
daily
size 5k
create 640 ubuntu ubuntu

/var/www/utvbloggen.se/logs/*.log {
sharedscripts
postrotate
service nginx reload

/usr/bin/s3cmd sync /var/www/utvbloggen.se/logs/*.bz2 s3://triopab-logfiles/utvbloggen/
endscript
}

Sen är det bara att lägga in ett cron-jobb som kör logrotate med ovan conf varje natt:


0 0 * * * /usr/sbin/logrotate --state /home/ubuntu/log_rotate.state /home/ubuntu/utvbloggen.conf

Steg 3 – Från S3 till Glacieramazon glacier

Detta steg är tämligen trivialt då denna funktion finns inbyggd i S3. Det enda du behöver göra är att gå in på Properties för din bucket och sedan under fliken Lifecycle kan du välja ”Move to glacier” så här:

move to glacierDu kan även ange hur många dagar det ska gå innan loggarna flyttas under rubriken ”Time Period”:

lifecycle ruleVill du göra mer fräsiga saker med loggarna? Kolla då på logstash eller fluentd.

Uppdatering: Kan vara bra att påpeka att det är gratis att skicka data mellan Amazon EC2 och S3 inom samma region.

GitHubs sökfunktion, en guldgruva

Innan jag fortsätter med nästa inlägg i min serie om DevOps med Python/Fabric så tänkte jag tipsa om Githubs relativt nya avancerade sökfunktion. Denna sökfunktion har räddat mig många gånger då jag funderat hur en viss funktion kan användas eller exempel på kod hur saker kan genomföras.

Om du vill lära dig hur du kan sätta datornamn (hostname) via Fabric så kan följande sökning genomföras:

python fabric

Kolla även in den avancerade sökfunktionen: