Blog

Bienvenue...

...sur mon blog, j'utilise ce site pour noter les petites choses qui me sont utiles, que ça soit informatique ou autre :)

Il y a 4 années 3 mois

Un p'tit utilitaire qu'il est bien pour faire le job !

Et le repository du projet sur github ici

Il y a 4 années 3 mois

Deux tutos qui m'ont permis d'installer puppet ainsi que passenger puis de débloquer les problèmes avec SELinux :

tuto installation

tuto selinux

Il y a 4 années 3 mois

Dans Sharepoint 2013, en essayant de référencer une css sur la master page d'un sous-site, j'avais a coeur de ne pas mettre le context root en dur, et donc du coup utiliser "~Site" (ou "~SiteCollection").

J'ai donc ajouté un tag CssRegistration, avec le paramètre After comme il faut tout bien, mais impossible d'avoir mon lien vers la css (cf. )...

J'ai trouvé un tuto qui disait de faire ça :

<SharePoint:CssRegistration name="<%$SPUrl:~Site/SiteAssets/css/conforama.css%>" After="corev15.css" runat="server"/>

Et là je me retrouve avec le message d'erreur sus-nommé... dafuck...

La soluce, trouvée un peu plus tard dans la journée (grmmmblblbl X) ) était en fait de déclarer ceci dans le web.config :

<add expressionPrefix="SPUrl" type="Microsoft.SharePoint.Publishing.WebControls.SPUrlExpressionBuilder, Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

Attendre que la web app se relance toute seule et là, magie !!

Il y a 4 années 4 mois

J'ai mis en place LogStash + ElasticSearch + Kibana au boulot pour une console de centralisation des logs.

Ça marche plutôt pas mal, par contre une fois le POC en place, il est nécessaire de le sécuriser, en effet, par défaut ES est accessible via HTTP et du coup n'importe qui peut "tout péter"...

Donc la première chose à faire, c'est de "proxifier" l'accès à ES afin de contrôler les verbes accessibles, ce que fait la conf Apache ci-dessous.

<VirtualHost *:9201>
    ProxyPassMatch / http://127.0.0.1:9200
    ProxyPassReverse / http://127.0.0.1:9200
    <LocationMatch "^(/.*)$">
        <Limit DELETE PUT>
            Order deny,allow
            Deny from all
        </Limit>
    </LocationMatch>
    <LocationMatch "^(/_aliases|.*/_search|.*/_mapping)$">
        <Limit DELETE PUT>
            Order deny,allow
            Deny from all
        </Limit>
    </LocationMatch>
    <LocationMatch "^(/_cluster.*|/_plugin.*|/_status.*|/_nodes)$">
        <Limit GET POST PUT DELETE CONNECT OPTIONS PATCH PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
            Order deny,allow
            Deny from all
        </Limit>
    </LocationMatch>
    <LocationMatch "^(/kibana-int/dashboard/|/kibana-int/temp).*$">
        <Limit DELETE PUT>
            Order deny,allow
            Deny from all
        </Limit>
    </LocationMatch>
</VirtualHost>

En parallèle j'ai aussi bloqué les ports ES (9200/9300) via le firewall linux (iptables) afin que ces derniers ne soient accessibles qu'a partir des machines autorisées (appartenant au cluster ES).

Ca n'est pas parfait mais c'est un début !

Next step : activer l'authentification via LDAP en HTTPS et du coup autoriser certains verbes en fonction des groupes LDAP de l'utilisateur.

MAJ 26/10/2016 : modif pour ne pas autoriser l'accès aux URI de fonctionnement interne.

Il y a 4 années 6 mois
dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync

Pages