Tag Archives for linux

eine bestimmt zeile aus einer datei loeschen

wenn man auf der command line mal nur eine bestimmte zeile aus einer datei rausloeschen will, kann man sich dem kommando sed bedienen.

z.b. die zeile 217 aus der datei .ssh/known_hosts zu loeschen:

sed -i -e '217d' .ssh/known_hosts

so mach sed noch ein backup (plus “.bak” am ende) der datei

sed -i.bak -e '217d' .ssh/known_hosts

noch etwas schicker mit einem backup mit timestamp im dateinamen:

sed -i.$(date +%Y%m%d%H%M) -e '217d' .ssh/known_hosts

oder aber auch einen ganzen block (zeile 113 bis 118) und mehrere zeilen (217 und 329). man achte auf die verwendung von komma, semikolon und “d”

sed -i -e '113,118d;217d;329d' .ssh/known_hosts

20161104140533 by sd
shorturl: https://sd.vc/4c9
tags: , ,
Leave a comment

ssh-copy-id mit anderem port

normalerweise nutzt man den befehl ssh-copy-id so:

ssh-copy-id -i path/my_id_rsa.pub user@host.tld

wenn der zielserver allerdings einen vom standard (22) abweichenden port nutzt, dann kann es mit aelteren versionen des ssh-copy-id befehls probleme mit dem “-p” parameter geben. dann ist dieser mit dem hostnamen in hochkommata zu setzen:

ssh-copy-id -i path/my_id_rsa.pub "user@host.tld -p 19022"

20161104132751 by sd
shorturl: https://sd.vc/4c8
tags: , ,
Leave a comment

linux mint 17 und aktueller owncloud client?

igendwie meckert mein owncloud client immer rum, dass er nicht aktuell waere. scheinbar funktioniert das updaten mit den “normalen” repositories nicht so dolle. kurz meinen freund G. befragt, was gefunden, ausprobiert, funktioniert! damits nicht verloren geht, nochmal hier:

wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Ubuntu_14.04/Release.key
sudo apt-key add - < Release.key
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_14.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"
sudo apt-get update
sudo apt-get install owncloud-client

20161025091142 by sd
shorturl: https://sd.vc/4c5
tags: , , ,
Leave a comment

linux mint 17.3 und aktueller owncloud client

im linux mint 17.3 repository findet sich momentan nur ein alter owncloud desktop client (1.5.0). wenn man versucht, sich damit an einer aktuellen owncloud installation anzumelden, bekommt man nur die fehlermeldung “Wrong Crendentials”.

um einen aktuellen owncloud client zu installieren muss man die datei /etc/apt/sources.list.d/owncloud-client.list (ggf. anlegen und) mit folgendem inhalt fuellen:

deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_14.04/ /

danach diese befehle ausfuehren:

sudo apt-get update
sudo apt-get install owncloud-client

wenn beim “apt-get update” ein fehler kommt bezueglich eines fehlenden keys mit der ID 977C43A8BA684223, dann kann man diesen wie folgt hinzufuegen:

gpg --keyserver pgpkeys.mit.edu --recv-key 977C43A8BA684223
gpg -a --export 977C43A8BA684223 | sudo apt-key add -

…danach nochmal die obenstehenden apt befehle ausfuehren

20160613091714 by sd
shorturl: https://sd.vc/4b2
tags: , , ,
Leave a comment

openssl key und csr in einem schritt erstellen (2)

noch eine nummer einfacher als meine bisherige beschreibung:

openssl req -nodes -newkey rsa:2048 -sha256 -keyout 'domain_tld.key' -out 'domain_tld.csr' -subj '/CN=domain.tld/C=DE'

20160415125137 by sd
shorturl: https://sd.vc/4as
tags: , ,
Leave a comment

opsview: The table ‘nagios_servicechecks’ is full

mein opsview hat die tage wieder mal gestreikt. ich erinnerte mich, doch irgendwo schonmal was aufgeschrieben zu haben. in den entwuerfen meines blogs bin ich fuendig geworden. wie man am datum der logeintraege sehen kann, ists schon ein paar tage her. ich hab das ganze mal aktualisiert und voila.. da isses:

####

heute morgen hat mein nagios bzw. opsview seinen dienst quittiert. im logfile waren solche eintraege zu finden:

[2015/04/12 02:09:45] [import_ndologsd] [FATAL] Error for 1428796429.397065 in handle_SERVICECHECKDATA: Insert failed: The table ‘nagios_servicechecks’ is full
[2015/04/12 02:09:45] [import_ndologsd] [WARN] Failed to import 1428796429.397065
[2015/04/12 02:09:45] [import_ndologsd] [FATAL] Error for 1428796433.896315 in handle_SERVICECHECKDATA: Insert failed: The table ‘nagios_servicechecks’ is full
[2015/04/12 02:09:45] [import_ndologsd] [WARN] Failed to import 1428796[2015/04/12 07:38:50] [nrd] [WARN] 2015/04/12-07:38:50 Server closing!

ok, die mysql datenbank ist 22GB gross und die tabelle ‘nagios_servicechecks’ hat rund 60 millionen eintraege. was der limitierende faktor war, konnte ich auf die schnelle nicht rausfinden. normalerweise sollten in dieser tabelle nur daten von einer woche vorgehalten werden. also in mysql den befehl ausfuehren:

DELETE FROM nagios_servicechecks WHERE start_time <= '2014-07-01 00:00:00';

ursache: fehlende cronjobs! bei der letzten migration auf einen anderen server sind die entsprechenden crontab eintraege fuer den nagios user “verloren” gegangen.
dieser cronjob sollte fuer den user nagios eingerichtet sein:

11 4 * * * . /usr/local/nagios/bin/opsview_master_housekeep

20160219112357 by sd
shorturl: https://sd.vc/49x
tags: , , ,
Leave a comment

poweradmin und fail2ban

fuer den dns server powerdns gibt es die administrationsoberflaeche “poweradmin“. die auswahl solcher tools ist nicht sonderlich gross… das duerfte die einfachste sein. irgendwann wirds soweit sein, dass boese buben das webinterface entdecken und versuchen einzubrechen. mit fail2ban kann man da ein bischen gegensteuern und nach fehlgeschlagenen loginversuchen die ip per iptables zu sperren.

in der datei “inc/config.inc.php” muessen dazu diese werte gesetzt sein:

$syslog_use = true;
$syslog_ident = 'poweradmin';

das ergibt dann bei fehlgeschlagenen logins im syslog eintraege wie diesen:

Feb  2 05:36:02 host poweradmin: Failed authentication attempt from [xx.xxx.xx.x]

weiter muss eine datei namens “/etc/fail2ban/filter.d/poweradmin.conf” angelegt werden mit folgendem inhalt:

[Definition]
failregex = poweradmin\: Failed authentication attempt from \[<HOST>\]
ignoreregex =

und die “/etc/fail2ban/jail.conf” erweitert um folgenden eintrag:

[poweradmin]
enabled  = true
port     = http,https
filter   = poweradmin
logpath  = /var/log/syslog
maxretry = 3

und nach einem…

/etc/init.d/fail2ban restart

…sollte das auch schon funktionieren.

20160203071936 by sd
shorturl: https://sd.vc/49i
tags: , , , ,
Leave a comment

postfix: recieved header entfernen

um bei mails, welche das eigene mailsystem verlassen, ein paar header aus der mail zu entfernen, die niemanden in der boesen weiten welt was angehen, in der datei /etc/postfix/main.cf einfuegen:

header_checks = regexp:/etc/postfix/header_checks

und die datei /etc/postfix/header_checks mit folgendem inhalt anlegen:

/^Received: .*\(Authenticated sender:.*/ IGNORE
/^Received: .*\.internal\.domain\.tld.*/ IGNORE

die erste zeile schmeisst die header weg, die durch die authentifizierung beim smtp versand hinzugefuegt werden. (falls beim fuer smtp auth zustaendigen postfix in der main.cf der paramaeter “smtpd_sasl_authenticated_header = yes” gesetzt ist).

die zweite zeile schmeisst alle recived header weg, die von internen mailservern hinugefuegt wurden. schliesslich geht die struktur niemanden was an.

20160124001455 by sd
shorturl: https://sd.vc/498
tags: , , ,
Leave a comment

neues vom contao checker (nun richtig)

weil das noch nicht ganz richtig war, hier nochmal etwas angepasst:

# erstmal backup machen
cd /var/www/sites/kundexy
mysqldump -p -h <dbserver> <database> > backupdb-$(date +%Y%m%d%H%M).sql
tar -czvf backup-$(date +%Y%m%d%H%M).tar.gz <verzeichniswebseite/> --exclude files/cloud
# dann update laden und installieren
cd verzeichniswebseite
curl -L https://download.contao.org/3.5.6 | tar --strip-components=1 -xzp
chown <user>.<group> <../verzeichniswebseite/> -R
# und wenn alles danach noch funktioniert, den kram wieder loeschen:
rm core-3.2.16.tar.gz
rm ../201412211004.sql # ersetzen mit dem aktuellen dateinamen
rm ../201412211004.tar.gz # ersetzen mit dem aktuellen dateinamen
# feddich!

20160124000529 by sd
shorturl: https://sd.vc/497
tags: , ,
Leave a comment

dnssec, bind, powerdns

tagelang habe ich mich mehr oder weniger erfolgreich erfolglos mit der dnssec implementierung in bind herumgschlagen. mittendrin kam ein kommentar von jonne, welches mich dann doch inspirert hat, mal powerdns anzuschauen. und was soll ich sagen? vergesst die wakeligen pakete in debian fuer bind und die dnssec-tools und nehmt powerdns. (natuerlich nicht den alten in debian stable, sondern ein aktuelles paket welches sich ohne grosse abhaengigkeiten installieren laesst.)

den folgenden absatz habe ich erst nach dem eigenen, in rekordzeit erstelltem test-setup gelesen:

In addition, the PowerDNS Authoritative Server is the leading DNSSEC implementation, hosting the majority of all DNSSEC domains worldwide. The Authoritative Server hosts at least 30% of all domain names in Europe, and around 90% of all DNSSEC domains in Europe.

und ganz ehrlich… ich weiss aus eigener erfahrung auch genau warum.

moeglicherweise gibts demnaechst auf diesem kanal ein kleines howto dafuer.

20151109230744 by sd
shorturl: https://sd.vc/48r
tags: , , , ,
Leave a comment