Datei per curl vom Console nach Owncloud / Nextcloud hochladen

Wie bekomme ich eigentlich eine Datei per Console vom Server zu einem Owncloud oder Nextcloud hochgeladen?

curl hilft dabei, es geht z.B. so:

curl -X PUT -u username:password "http://myserver/remote.php/webdav/filename.type" --data-binary @"filename.type"

Scan Linux System for Malware and Rootkits

Gerade auf HowToForge einen guten Artikel über 3 Werkzeuge gefunden, mit dem man sein Linux-System auf Schädlingsbefall in Form von Malware und Rootkits überprüfen kann.

chkrootkit – der Linux rootkit scanner – ist der Klassiker unter den Scannern und prüft auf bestimmte Prozesse und Dateien, die bei RK Befall vorhanden sein können.
Aufruf: „~# chkrootkit“ – die Ausgabe auf der Console erklärt sich von selbst.

lynis – ehemals rkhunter – ist ein universelles Rootkit Scanner Tool, welches neben den Infektionsstatus auch noch eine Menge nützlicher Informationen zum Verbessern der Systemstabilität ausgibt. Die Konsolenausgabe ist hier ebenfalls sehr umfangreich und detailliert.
Mit „~# lynis update info“ wird die Definition aktualisisiert.
Den Check startet man mit „~# lynis audit system“.

ISPProtect ist ein Website Malware Scanner, mit dem Schwachstellen in den installierten Systemen aufgedeckt und Infektionen erkannt werden können. Veraltete oder unsichere Versionen von WordPress, MySQL etc werden erkannt.
ISPProtect ist keine freie Software, es gibt aber eine kostenlose Trial-Version.

Zum HowTo-Forge-Artikel: https://www.howtoforge.com/tutorial/how-to-scan-linux-for-malware-and-rootkits/

curl: show header only / http get

If you only want to show the headers of your http response, you may want to use the following switches:

  • -D = dump headers
  • -s = silent mode
  • -o /dev/null = send all output do dev null

The curl request looks like this:

$ curl -s -D - https://www.path.to/my.file -o /dev/null

The output should looks like this:

HTTP/2 200
last-modified: Tue, 13 Dec 2016 12:08:30 GMT
etag: W/"183836-1481630910000"
server: Apache
x-magnolia-registration: Registered
pragma: no-cache
content-type: application/x-font-otf;charset=UTF-8
content-length: 183836
accept-ranges: bytes
cache-control: public, max-age=8236
expires: Mon, 02 Jan 2017 13:11:32 GMT
date: Mon, 02 Jan 2017 10:54:16 GMT

Magnolia CMS: find references of any assets in all repositories

This Groovy code runs on any Magnolia CMS instance and helps you to find unused assets. It checks if an asset is linked within another repository.

It does not check if you link to an asset by URI. And of course it can not check if the asset is linked from somewhere else in the web.

import info.magnolia.module.dependencies.impl.DefaultDependencies
import info.magnolia.cms.beans.config.ContentRepository
import info.magnolia.cms.core.Content
import info.magnolia.cms.util.ContentUtil
import info.magnolia.cms.util.DumperUtil
import javax.jcr.Node;
session = ctx.getJCRSession("dam")
query = session.getWorkspace().getQueryManager().createQuery("select node.* from [mgnl:asset]", "JCR-SQL2")
// for debugging: start with a small amount if nodes
query.setLimit(100)
nodes = query.execute().getNodes()
dependencies = new DefaultDependencies()
// save the output to a file
File file = new File("/tmp/unusedAssets.txt")
def i = 0
def found = false
nodes.each { Node node ->
 for (workspace in ContentRepository.getAllRepositoryNames()) {
 // this is an optional whitelist of repositories
 if(workspace.startsWith("offer") || workspace.startsWith("product") || workspace.startsWith("website") || workspace.startsWith("rm-") || workspace.startsWith("category") || workspace.startsWith("resources") || workspace.startsWith("data")) {
 if(dependencies.getReferencesTo(node, workspace).isEmpty()) {
 found = true
 i++;
 // sleep every 20 nodes, otherwise the instance may be locked
 if (i % 20 == 0) {
 println(i)
 sleep(1000)
 }
 }
 }
 }
 // write node names to the file for later investigation
 if (found) {
 file << node.getPath()+"\r\n"
 found = false
 }
}
0

JIRA: Search Filter to find issues updates in the last 7 days

The query language in JIRA is able to use relative dates; using the issue properties like „updates“, „created“ etc. minus a numer of days.

project = X AND resolution = Unresolved and updated > -5d ORDER BY priority DESC, updated DESC

The notation „-5d“ is the shorthand for minus 5 days.

Docker auf Kimsufi Server (CentOS 7.1)

Docker Installation per yum:

yum install docker

Bei dem Setup habe ich eine Partition für Docker Images erstellt und unter „/data“ eingehangen. Hierfür muss das Default-Installationverzeichnis von Docker angepasst werden:

vi /etc/sysconfig/docker

Für CentOS lautet die Zeile zum Anpassen des Verzeichnisses:

other_args="-g /data/docker"

Anschließend wird der Docker Daemon neu (bzw erstmals) gestartet:

# systemctl stop docker.service -> oder alternativ mit "service docker stop"
# systemctl start docker.service -> oder alternativ mit "service docker start"

Die Installation kann mit dem Kommando

docker run hello-world

geprüft werden, und mit „docker images“ werden alle installierten Docker Images aufgelistet.

Um die Tests wieder wegzuräumen und die Docker Umgebung wieder in Ausgangslage zurückzusetzen, sind folgende Kommandos hilfreich:

Delete all containers

docker rm $(docker ps -a -q)

Delete all images

docker rmi $(docker images -q)

Web Frontend Development by Google

Da kann man sich gut mal eine Scheibe von abschneiden:

  1. Material Design Lite:
    • Material Design Lite lets you add a Material Design look and feel to your websites. It doesn’t rely on any JavaScript frameworks and aims to optimize for cross-device use, gracefully degrade in older browsers, and offer an experience that is immediately accessible.
    • Material Design Lite (MDL) is a library of components for web developers based on Google’s Material Design Philosophy: „A visual language for our users that synthesizes the classic principles of good design with the innovation and possibility of technology and science.“
    • www.getmdl.io
  2. Web Starter Kit:
  3. Web Fundamentals

Düsseldorf „Open Playground“ erfolgreich beendet

Düsseldorf Open Playground by Stöer
Düsseldorf Open Playground by Stöer

Neues von unserem #IoT-Projekt mit #Magnolia und Android:

„Der Open Playground hat gezeigt, dass von den durchschnittlich täglich 250.000 Bahnhofsbesuchern rund 40 Prozent Bluetooth aktiviert haben. Philips, Loreal, die Agentur t8y.com, die Sparkassen-Finanzportal GmbH und ein Softgetränkehersteller nutzten den Open Playground, um iBeacon Kampagnen in ihrer Zielgruppe zu testen.“

Tachty erhält den Ritterschlag zur Agentur 😉
Danke an Martin und Martin, es hat Spaß gemacht!

Düsseldorf „Open Playground“ erfolgreich beendet weiterlesen