User Tools

Site Tools


serveurs:serveurs_start

Table of Contents

Koozali SME 10

Finalement nous avons fait le pas de mettre à jour notre serveur! Nous sommes passés de la version 9.2 à la 10.1 de chez Koozali (SME) mais attention nous avons dû passer par une installation fraîche sur une nouvelle machine (petite consommation comme on les aime pour nos serveurs!).

Installation Koozali 10.1

1-télécharger l'iso de Koozali SME 2-l'installer sur une clefs usb 3-démarrer votre serveur avec la clef usb 4-suivre les instructions de l'installation : https://wiki.koozali.org/SME_Server:Documentation:Administration_Manual:Chapter5#Installing_the_Software

Nous reviendrons dans le détails pour cela mais les concepts restent les mêmes que pour les versions précédentes si ce n'est qu'il y a de petit rajout au démarrage comme l'utilisation de la souris et la possibilité de configurer plusieurs aspects de votre serveur de façon graphique (clavier, source d'installation…etc)

émigration des données du 9.2 vers 10.1

wordpress et php-fpm

Koozali 10.1 est passé sur un système de gestion php le php-fpm Pour gérer les différentes versions de nos wordpress qui pour certains n'ont pas été mis à jour depuis un moment nous avons opté pour une solution facilement manipulable via le server-manager : https://wiki.koozali.org/Webhosting facile à installer et facile à utiliser pour gérer vos différents version wordpress / php

yum --enablerepo=smecontribs install smeserver-webhosting

ensuite tout se passe dans server-manager, vous pouvez ainsi choisir le php pour chacune de vos Ibays.

Avant de réaliser cet opération certains wordpress aiguiller sur une mauvaise version de php créé des erreurs dans les logs de segmentation fault (alloc mem) https://github.com/matomo-org/matomo/issues/20290

update dokuwiki

vérification SSL

Voici notre plus gros point noir ces derniers tempps… depuis que l'on est forcé d'utilisation une certification extérieur “officiel” pour nos serveurs indépendant, cela devient un casse tête.

Pour mieux comprendre ce qui se passe par ici : https://en.wikipedia.org/wiki/Certificate_authority

Il y a des solutions qui prennent du temps et de bricoler comme celle du self signed certificate… ce n'est pas hyper clair pour nous pour l'instant, nous l'avons expérimenté et nous n'avons pas réussi… On va y revenir dessus et nous mettrons le résultat ici. En attendant, la solution de passer par une instance extérieur est notre choix pour notre DNS principal, on utilise Gandi pour nos DNS et donc pour notre cerfication SSL. Pour comprendre les différences entres les différents certificats : https://wiki.koozali.org/Certificates_Concepts

Pour la solution dite “commercial” via Gandi il y a quand même du boulot :

Il faut tout d'abord générer le certificat de votre serveur :

1-Générer une clefs RSA

openssl genrsa -out mondomaine.com-key.pem 2048

2-Générer le code CSR

openssl genrsa -out mondomaine.com-key.pem 2048

Pour ces commandes vous allez avoir plusieurs questions sur votre organisation, adresse, ville…etc (pensez-y)

Ensuite nous allons installer l'outil de configuration du certificat SSL dans server-manager

yum install smeserver-certificate --enablerepo=smecontribs

Dans le server-manager vous aurez accès à une interface particuliére avec 3 tableaux différents pour inscrire vos codes et certificats

Avant d'inscrire vos certificats dans ces cases, il vous faudra créer votre reconnaissance de certificat chez votre DNS provider, dans notre cas Gandi. Il faut aller sur l'interface de gestion de vos DNS et acheter un Certificat SSL / TLS (soit pour 1 adresse pour de multiple) nous avons fait le choix d'une seule pour le moment (notre DNS principal) pour pouvoir ensuite expérimenter d'autres type de confirguration que celle du commercial.

Une fois que vous avez pris une option SSL pour votre DNS, il vous sera demander de fournir la clef RSA et le code CSR que vous avez généré sur votre serveur, il faudra les copier dans les bonnes cases de votre fournisseur de DNS.

Une fois que vous aurez validé l'ensemble de ces étapes et acheter votre certification extérieur (valable seulement pendant 1 an) tous les ans il faudra de nouveau renouveler votre certificats SSL

Vous allez maintenant pouvoir :

1-télécharger votre serveur.crt et le mettre dans la 1ere case de l'interface de server-manager (SSL) 2-copier votre clef RSA dans la 2eme case, celle là vous l'avez généré vous-même 3-télécharger le certificat intermediaire CA officiel dont vous collerez le code dans la 3ème case

Il faut sauver tout ça et tester que vous n'avez plus besoin de valider un certificat pour votre site/nom de domaine Les erreurs que nous avons rencontré ont essentiellement consisté à coller les cerficats au mauvais endroit…. en général il n'y a plus d'accès au site… faîtes donc attention mais tout est reversible avec la commande :

signal-event certificate-revert

enfin pour tester que votre SLL est en place : https://www.ssllabs.com/ssltest

Si vous êtes perdu, pour ce perdre encore plus, il y a plein de docs par ici : https://docs.gandi.net/en/ssl/index.html

nextcloud & collabora

crontab

la solution classique via le terminal n'est plus trop possible (on a pas cherché plus que ça) Notamment car il y a un crontab-manager dans le server-manager à installer directement

yum install smeserver-crontab_manager --enablerepo=smecontribs

puis tout se passe dans l'interface, vous pouvez rajouter autant de routine cron que vous voulez.

Si vous voulez être sûr du boulot, on a toujours la commande

more /etc/crontab

big blue button - raté (17/09/2023)

C'est une très bonne initiative Par contre il doit y avoir un mystère dans le lancement de l'API Dans nextcloud (voir sujet au dessus) vous pouvez l'installer facilement puis dans les settings de BigBlueButton sur Nextcloud, il faut aller dans additionnal settings et rentrer l'url de l'api et l'API secret Pour cela il faut faire la commande :

sudo bbb-conf --secret

evidement il faut enlever le sudo qui correspond à un serveur ubuntu et Centos… de toute façon nous sommes déjà en root pour travailler sur le server… bref c'est déjà un petit bug, ensuite la commande est introuvable car il faut démarrer le serveur mais là aucune indication sur comment démarrer le serveur… ni dans la doc ni dans les forums…

sur le site du créateur de l'app pour nextcloud il dit juste ça :

https://github.com/sualko/cloud_bbb#rocket-install-it

Configure it Get your BBB API url and secret by executing sudo bbb-conf –secret on your BBB server.

$ sudo bbb-conf --secret

    URL: https://bbb.your.domain/bigbluebutton/
    Secret: abcdefghijklmnopqrstuvwxyz012345679

    Link to the API-Mate:
    https://mconf.github.io/api-mate/#server=https://...
 

et là… pfiouu la galère! un peu plus de détails sur ce qu'il est possible de faire par ici : https://docs.bigbluebutton.org/administration/nextcloud/ On a suivis les recommendation de ce site mais on arrive toujours au même problème : la fameuse ligne de commande

bbb-conf --secret

qui n'existe pas dans Koozali 10!!! “-bash: bbb-conf : commande introuvable”

rien du tout sur les forums… excepté cette petite réponse qui paraît totalement bricolé par rapport à l'ambition du projet : https://help.nextcloud.com/t/nextcloud-app-for-bigbluebutton-integration/74910/83?page=4

nous sommes passés en mode expert…

Manual configuration (for experts)

If you prefer not to use the web interface for configuration, you will find all used configuration keys in the list below. Please beware that there will be no check if those values are correct. Therefore this is not the recommended way. The syntax to set all settings is occ config:app:set bbb KEY –value “VALUE”.

occ config:app:set bbb KEY --value app.navigation --value true
occ config:app:set bbb KEY --value app.navigation.name --value bbb
occ config:app:set bbb KEY --value api.url --value https://monsite/nextcloud/bbb
occ config:app:set bbb KEY --value api.secret --value monmotdepasse

tout à l'air de passer mais revenue à la config sur nextcloud, toujours les mêmes erreurs : “API URL is invalid”

ON LAISSE TOMBER POUR LE MOMENT!

Simple Html5 audio jukebox

On ne peut pas faire plus simple, un simple jukebox sans base de données, un script une page comme pour Kplaylist (old days) Noctifer Music 0.7.5 https://github.com/lrkrol/Noctifer-Music/releases c'est un script html5 simple à coller dans votre ibay où se trouve vos fichiers sons Il y a un script à éditer index.php dans lequel vous pouvez choisir les skins/templates, rendre votre jukebox public ou privé

# +-----------------------------------+
# |     C O N F I G U R A T I O N     |
# +-----------------------------------+

ylist contents
$usepassword = false;
$passwords = array('123', 'abc');

INSTALL & CONFIRGURATION DE NEXTCLOUD SUR SME 9.2 (KOOZALI)

suivre le tuto par ici : https://wiki.contribs.org/Nextcloud

installer des paquets officiel

yum install smeserver-extrarepositories-remi-safe smeserver-extrarepositories-fws smeserver-extrarepositories-epel
signal-event yum-modify
yum install smeserver-nextcloud --enablerepo=smecontribs,epel,fws
signal-event webapps-update
service php-fpm start
service php71-php-fpm start
signal-event nextcloud-update
signal-event post-upgrade 
signal-event reboot

toute la config de votre nextcloud se situe dans ce répertoire : /usr/share/nextcloud/config les data des users : /home/e-smith/files/nextcloud/data

Dans l'administration de votre nextcloud vous pourrez organiser un ensemble de chose pour l'accès de vos utilisateurs et les apps à disposition Mais pour rendre tout cela public :

config show nextcloud

cela donne quelque chose comme cela (selon votre config de nextcloud) nextcloud=service

  AdminPassword=#####
  AdminUser=nextcloudadmin
  DbName=nextcloud
  DbPassword=#######
  DbUser=nextcloud
  TrustedDomains=
  access=private
  status=enabled

*note - access=private

pour le rendre public, rien de plus simple!

config setprop nextcloud access public
signal-event nextcloud-update

SME 9.2 Koozali - MIGRATION ENTRE 2 SERVEURS

A la suite d'un problème sur une serveur SME 9.2 (Koozali) lié à des soucis de version de php et de wordpress, nous avons décidé de mettre en route une installation toute fraîche d'un SME 9.2 (Koozali)

étape 1 - sauvegarde du server

Avant toute chose il faut faire une sauvegarde votre server et cela en passe par plusieurs types de sauvegarde (qui ne semble toujours être évident dans les forums, back up your server… blablabla). Il existe dans SME 9.2, un système de backup automatique, à tester une prochaine fois Nous allons utiliser la commande ssh et scp dans toutes nos opérations.

a) sauvegarde vos dokuwiki

-se loger en ssh dans votre serveur SME et aller dans le répertoire de votre dokuwiki

cd /home/e-smith/files/ibays/votredokuwiki/html

-compresser votre site pour la sauvegarde

tar cvfz CopyDokuwiki.tar.gz *

Vous utiliserez ce tar dans votre migration sur un autre serveur

b) sauvegarde de votre wordpress

ça se complique car à l'instar de dokuwiki il y a aussi une base donnée à sauvegarder. Pour la 1ére partie même méthode que pour dokuwiki

-se loger en ssh dans votre serveur SME et aller dans le répertoire de votre dokuwiki

cd /home/e-smith/files/ibays/votrewordpress/html

-compresser votre site pour la sauvegarde

tar cvfz Copyvotrewordpress.tar.gz *

Il faut absolument utiliser phpmyadmin pour simplifier la démarche d'exportation et d'importation des bases de données. Nous prendrons la version la plus simple avec phpmyadmin.

-ouvrir votre phpmyadmin - http://votreserveur/phpmyadmin (attention à bien choisir un utilisateur ayant tous les privilèges sur la base données)

-exécuter la sauvegarde dans le repertoire proposé : /var/lib/phpMyAdmin/save/

A ce stage vous avez sauvegarder l'essentiel de vos site web pour bien opérer votre changement de serveur ou si vous expérimentez une update sur le site.

UPDATES 08/09/2023 : Dans le cadre d'une nouvelle migration de SME Koozali 9.2 vers 10.1 nous avons rencontré un problème d'exportation des bases de données via PhpMyAdmin… l'exportation nuos donne seulement une page blanche sans aucune action ni info… A ce moment là nous avons opéré la sauvegarde dans le repertoir du site directement en ligne de commande :

mysqldump -u username -p databasename > filename.sql

puis transférer la base de données sur le nuveau serveur ou importation direct sur le même serveur selon votre config et importation via PhpMyAdmin.

c) sauvegarde de vos emails

tout vas bien si vous n'avez pas beaucoup d'email mais si vous avez plusieurs années de courrier électroniques cela peut-être un vrai cauchemar mais pas tellement si vous connaissez la méthode :

-allez dans le répertoire de vos emails sur SME

cd /home/e-smith/files/users/votreuser/Maildir
tar cvfz Copiervosdossiers.tar.gz *

le soucis que nous avons rencontré c'est que la copie ne semble pas avoir pris en compte les fichiers cachés, nous avons dû les découvrir de leur point cachés pour pouvoir les intégrer dans le tar.

étape 2 - réinstaller vos site web et emails dans le nouveau serveur

a) copier votre dokuwiki sur le nouveau serveur

-créer une nouvelle ibay dans le server-manager de votre serveur SME (même nom que celle de l'ancien serveur pour éviter les problèmes de chemin)

-de votre ancien serveur copiez le tar de votre doku

scp CopyDokuwiki.tar.gz root@votrenouveauserveurip:/home/e-smith/files/ibays/votredokuwiki/html

-puis allez dans votre nouveau serveur dans l'ibay de votre dokuwiki pour décompressé votre dokuwiki

tar xvfz CopyDokuwiki.tar.gz

bien vérifié la version de php, en fonction de la version de votre dowiki vous devrez faire attention, si vous avez un problème veuillez installer PHP-SCL (Contrib des PHP Software Collections)

a) copier votre wordpress sur le nouveau serveur

Pour wordpress même démarche avec l'importation de votre base de donnée en plus

-créer une nouvelle ibay dans le server-manager de votre serveur SME (même nom que celle de l'ancien serveur pour éviter les problèmes de chemin)

-de votre ancien serveur copiez le tar de votre wordpress

scp Copyvotrewordpress.tar.gz root@votrenouveauserveurip:/home/e-smith/files/ibays/votrewordpress/html

-puis allez dans votre nouveau serveur dans l'ibay de votre wordpress pour décompressé votre dokuwiki

tar xvfz Copyvotrewordpress.tar.gz

Pour la base de donnée de wordpress il faut aussi la copier sur votre nouveau serveur :

à partir de votre ancien serveur

cd /var/lib/phpMyAdmin/save/
scp votrebasedonneewordpress.sql root@votrenouveauserveurip:/var/lib/phpMyAdmin/upload

-ouvrir votre phpmyadmin - http://votreserveur/phpmyadmin (attention à bien choisir un utilisateur ayant tous les privilèges sur la base donnée)

-créer une nouvelle base de donnée vide au nom de celle que vous avez utilisé dans le wordpress de votre ancien serveur!!

-Choisissez depuis le répertoire de téléchargement du serveur web /var/lib/phpMyAdmin/upload/ (dans ce repertoire vous devriez trouver votrebasedonneewordpress.sql)

-exécuter l'importation

Bien vérifier que le nom de la base donnée, votre user et le mot de passe corresponde bien à l'utilisateur/basedonnée/mtpass que vous utilisez sur votre nouveau serveur. Le nom de la base de donnée doit être la même

Enfin pour les emails il faut utiliser la même méthode que pour wordpress avec la base donnée - exporter/importer la base de donnée horde

UBUNTU DESKTOP 18.04 (SERVER) + NEXTCLOUD

Partie Serveur

Après plusieurs essais difficile avec Ubuntu server 18.04 et installation Owncloud nous testons une installation classique Ubuntu 18.04 LTS Avec LEMP et une autre avec LAMP

1-installer le système Ubuntu Desktop 18.04 - https://ubuntu.com/download/desktop/thank-you?country=FR&version=18.04.3&architecture=amd64

installation de LEMP (interface graphique pour ubuntu serveur, basé sur NGINX)

Nous allons tester cette méthode : https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-ubuntu-18-04

1er étape : mettre à jour le système et installer nginx

apt-get update
apt list --upgradable
apt install ssh
apt install nginx

2eme étape : ouvrir le pare-feu nginx en établissant des régles

ufw enable
ufw allow 'nginx full' #http, https, ssh
ufw status #ça devrait être actif

tester votre adresse IP local et extérieur (hors box/connection perso)

ip addr show wlp2s0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//' #correspond à bon vieux ifconfig ;-p
curl -4 icanhazip.com

ouvrir un navigateur http://localhost ou http://127.0.0.1 ou http://votreadresseiplocal si l'installation a bien été faite vous aurez une page de nginx pour vous dire que tout est bien.

3eme étape : installer et configurer la base de données mysql

apt install mysql-server
mysql_secure_installation #installation sécurisé de votre serveur / choix du votre mot de base et accès extérieur

config dans mysql directement

mysql
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user; #authentifier votre utilisateur

Output +——————+——————————————-+———————–+———–+

user authentication_string plugin host

+——————+——————————————-+———————–+———–+

root auth_socket localhost
mysql.session *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
mysql.sys *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
debian-sys-maint *CC744277A401A7D25BE1CA89AFF17BF607F876FF mysql_native_password localhost

+——————+——————————————-+———————–+———–+ 4 rows in set (0.00 sec)

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

Output +——————+——————————————-+———————–+———–+

user authentication_string plugin host

+——————+——————————————-+———————–+———–+

root *3636DACC8616D997782ADD0839F92C1571D6D78F mysql_native_password localhost
mysql.session *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
mysql.sys *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
debian-sys-maint *CC744277A401A7D25BE1CA89AFF17BF607F876FF mysql_native_password localhost

+——————+——————————————-+———————–+———–+ 4 rows in set (0.00 sec)

mysql> exit

une fois cette démarche réalisé vous devrez utiliser cette commande pour vous loger dans mysql

mysql -u root -p

la base de données est prête à être utilisé!

4eme étape : installer et configurer PHP (ce n'est pas inclus directement dans l'installation de nginx)

apt install php-fpm php-mysql

Dans la logique de Nginx il va vous falloir configurer la possibilité d'attacher plusieurs espace sur votre serveur pour différents site web et différents DNS Sous Nginx cela s'appelle Blocs Serveur (un peu laborieux tout ça mais à long terme ça sera mieux) nous allons suivre cette méthode : https://www.digitalocean.com/community/tutorials/comment-installer-nginx-sur-ubuntu-18-04-fr

sudo mkdir -p /var/www/example.com/html
chown -R $USER:$USER /var/www/example.com/html #droits d'accès utilisateur
chmod -R 755 /var/www/example.com #pour être sûr!

créer une page html pour tester :

nano /var/www/example.com/html/index.html

et on y met :

 <html> 
<head> 
<title>Welcome to Example.com!</title> 
</head> 
<body> 
<h1>Success! The example.com server block is working!</h1> 
</body> 
</html> 

créer un nouveau block comme site-available

nano /etc/nginx/sites-available/example.com 

et y mettre :

 server { 
listen 80; 
listen [::]:80; 
root /var/www/example.com/html; 
index index.html index.htm index.nginx-debian.html; 
server_name example.com www.example.com; 
location / { 
try_files $uri $uri/ =404; 
} 
} 

et pour qu'il soit pris en compte au démarrage

ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ 

-example.com: Répondra aux requêtes pour example.com et www.example.com.

-default: Répondra à n’importe quelle sur le port 80 qui ne correspond pas aux deux autres blocs. Pour éviter un problème avec la mémoire de hachage qui pourrait survenir lors de l’ajout de nom de serveur additionnels, il est nécessaire d’ajuster une seule valeur dans le fichier /etc/nginx/nginx.conf . Ouvrez le fichier : command sudo nano /etc/nginx/nginx.conf Trouvez la directive server_names_hash_bucket_size et enlevez le symbole # pour décommenter la ligne

Ensuite, faite la vérification pour pour vous assurer qu’il n’y a pas d’erreurs de syntaxe dans vos fichiers Nginx : command sudo nginx -t Enregistrez et fermez le fichier lorsque vous avez terminé. S’il n’y a pas de problèmes, redémarrez Nginx pour activer vos changements : command sudo systemctl restart nginx Nginx devrait maintenant desservir votre nom de domaine. Vous pouvez vérifier ceci en naviguant à http://example.com, ou vous verrez quelque chose comme ceci : Nginx first server block

Success! The example.com server block is working!

cette histoire de block peut-être croisé par ici (anglais) : https://www.digitalocean.com/community/tutorials/understanding-nginx-server-and-location-block-selection-algorithms

Installation de LAMP (interface graphique pour Ubuntu serveur, basé sur Apache2)

- https://doc.ubuntu-fr.org/lamp

Installer Apache, MariaDB, PHP et modules

sudo apt install apache2 mariadb-server php-mysql libapache2-mod-php php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-zip

Ouvrez un navigateur pour tester si le serveur marche: http://localhost// http://127.0.0.1/

Installer PhpMyAdmin

sudo apt install phpmyadmin

source/détail: https://doc.ubuntu-fr.org/lamp

Installation NextCloud

:!: La configuration d'une entrée A dans votre registre DNS n'est pas requise pour que Nextcloud fonctionne, mais nécessaire si vous voulez sécuriser le tout avec https : :!:

Exemple de config DNS

cloud 10800 IN A 123.45.67.89
  |     |             |
sous-dom|             IP
       TTL

Installation et configuration du server

– On copie la config par default d'un site apache pour créer une config pour nextcloud

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/nextcloud.conf

– Puis on l'édite

nano /etc/apache2/sites-available/nextcloud.conf

– Rentrez les lignes correspondantes afin que votre fichier de configuration ressemble à cette exemple ('cloud' étant le sous-domaine que vous désirez attribuer à Nextcloud)

<VirtualHost *:80>
        ServerName cloud.monpetit.domaine

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/nextcloud
        
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

– Activez l'host virtuel que l'on vient de créer, et recharger apache

a2ensite nextcloud
systemctl reload apache2

Certification pour https (Ici on utilisera certbot, qui nous obtiendra un certificat gratuit chez 'Let's Encrypt'. Vous êtes libre d'obtenir un certificat autre part)

apt install certbot python-certbot-apache
certbot --apache

Selectionnez votre site

Si il y aura une erreur à ce moment là, votre entrée dans la base du DNS est mal configurée

Selectionnez '2', afin de rediriger toutes rêquettes http vers https

– Créez un dossier pour Nextcloud, puis le télécharger et le placer

mkdir /var/www/nextcloud

– Téléchargez Nextcloud à https://nextcloud.com/install/#instructions-server (pour cet exemple nous prendrons le .tar)

wget https://coller.le/link.ici

– Extraction du fichier

tar xvf nextcloud-XXX.tar.bz
rm nextcloud-XXX.tar.bz
mv ./nextcloud/* .
mv ./nextcloud/.* .
rmdir nextcloud

– Rendez le server web propriétaire du dossier 'nextcloud'

chown -R www-data:www-data /var/www/nextcloud

– Configuration de la base de données

mysql_secure_installation
Appuyer sur Entrer
Changer le pass root? Y
Rentrer le mot de passe de votre choix pour root
Retirer utilisateurs anonymes? Y
Interdire la connection au root à distance? Y
Supprimer la db de test? Y
Recharger la table de privilèges? Y

– Créez un compte pour nextcloud sur la bd

mariadb
> CREATE DATABASE nextcloud;
> CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'votrepassici';
> GRANT ALL PRIVILEGES ON nextcloud . * TO 'nextcloud'@'localhost';
> quit

Installer Nextcloud (enfin !)

###insert capture of example install page?###

Remplissez les champs avec vos logins et pass, et bravo ! Vous avez installé Nextcloud ! A ce moment précis, il est fort possible que votre Nextcloud ne soit pas totalement configuré. Il est donc conseillé de régler ces problèes avant tout.

Accèdez à l'Overview en cliquant sur l'engrenage en haut à droite, puis dans la colonne de gauche dans la catégorie 'Administration'

les instructions suivantes couvriront les erreurs reportées par Nextcloud pendant la création de ce tuto. Si les votres ne sont pas incluses, bonne chance, et n'oubliez pas de noter vos solutions ici !

Bien sûr, n'oubliez pas de recharger apache après chaque fix avec

systemctl restart apache2

Augmenter la limite de mémoire pour PHP

nano /etc/php/7.3/apache2/php.ini

Cherchez la ligne avec “memory_limit=”, et changez la valeur par “512M”.

Activer HSTS

nano /etc/apache2/sites-available/nextcloud-le-ssl.conf

Ajoutez le header HSTS dans le tag <VirtualHost…>

<IfModule mod_headers.c>
 Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
</IfModule>

<Directory /var/www/nextcloud/>
 AllowOverride All
</Directory>

Activez les modules correspondants

a2enmod headers
a2enmod rewrite
systemctl restart apache2

Installer APCu pour avoir un cache mémoire

apt install php-apcu

Configurez Nextcloud afin d'utiliser APCu

nano /var/www/nextcloud/config/config.php

Ajoutez la ligne :

'memcache.local' => '\OC\Memcache\APCu',

Augmenter le temps de timeout

nano /var/www/nextcloud/lib/private/App/AppStore/Fetcher/Fetcher.php

Chercher la ligne contenant 'timeout', et changer sa valeur

Installation de Collabora avec apache2

On va installer Collabora en utilisant Docker (maleureusement, c'est la façon la plus simple et pratique)

Installation de Docker

Docker n'est que rarement mis à jour sur les repos officiels d'Ubuntu, donc on va tricher et aller se servir directement à la source.

Les instructions utilisées sont celles présentées ici https://docs.docker.com/install/linux/docker-ce/ubuntu

Mais pour cela, il nous faut faire quelques ajouts

apt install apt-transport-https ca-certificates curl software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Ajoutez le repo de Docker à votre liste (prenez le repo correspondant à votre architecture

add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

Et installez Docker

apt update
apt install docker-ce

Vérifiez que docker tourne correctement

systemctl status docker

Installation et parametrage de Collabora

Commencez par créer un sous-domaine chez votre fournisseur DNS, redirigant sur votre server. Le nom du sous-domaine n'a pas d'importance, car il ne sera utiliser qu'à la configuration de Collabora.

Installez ensuite l'application 'Collabora Online' dans Nextcloud. Dans le menu 'Applications' → 'Office & texte' → et téléchargez l'app.

Récupérez le conteneur de Collabora avec Docker

docker pull collabora/code

('code' étant le nom de code pour la version dev de Collabora)

docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=cloud\\.apo33\\.info' --restart always --cap-add MKNOD collabora/code

Vous pouvez ensuite utiliser

docker ps

pour vérifier que Collabora tourne

On suivera les instructions officielles de Nextcloud sur leur site https://nextcloud.com/collaboraonline

a2enmod proxy
a2enmod proxy_wstunnel
a2enmod proxy_http
a2enmod ssl

Puis créez un fichier de config dans apache pour Collabora

nano /etc/apache2/sites-availables/collabora.conf

Et coller la config donné sur le site de Nextcloud, sans oublier de remplacer le 'ServerName' par le sous-domaine créé pour Collabora

<VirtualHost *:443>
ServerName office.nextcloud.com:443
 
# SSL configuration, you may want to take the easy route instead and use Lets Encrypt!
SSLEngine on
SSLCertificateFile /path/to/signed_certificate
SSLCertificateChainFile /path/to/intermediate_certificate
SSLCertificateKeyFile /path/to/private/key
SSLProtocol             all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on
 
# Encoded slashes need to be allowed
AllowEncodedSlashes NoDecode
 
# Container uses a unique non-signed certificate
SSLProxyEngine On
SSLProxyVerify None
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off
 
# keep the host
ProxyPreserveHost On
 
# static html, js, images, etc. served from loolwsd
# loleaflet is the client part of LibreOffice Online
ProxyPass           /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse    /loleaflet https://127.0.0.1:9980/loleaflet
 
# WOPI discovery URL
ProxyPass           /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse    /hosting/discovery https://127.0.0.1:9980/hosting/discovery
 
# Main websocket
ProxyPassMatch "/lool/(.*)/ws$" wss://127.0.0.1:9980/lool/$1/ws nocanon
 
# Admin Console websocket
ProxyPass   /lool/adminws wss://127.0.0.1:9980/lool/adminws
 
# Download as, Fullscreen presentation and Image upload operations
ProxyPass           /lool https://127.0.0.1:9980/lool
ProxyPassReverse    /lool https://127.0.0.1:9980/lool
 
# Endpoint with information about availability of various features
ProxyPass           /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities retry=0
ProxyPassReverse    /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities
</VirtualHost>

Il faut ensuite récupérer un certificat pour ce sous-domaine, et rendre les chemins vers ces fichiers manuellement. Courage, c'est presque fini !

On retourne voir certbot, mais cette fois-çi avec une commande un peu différente. En effet, on ne va lui demander que le certificat. N'oubliez pas d'entrer votre domaine.

certbot certonly -d votrecollabora.monpetit.domaine

Selectionner '1', pour l'authentification avec Apache

Résultat :

 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/votrecollabora.monpetit.domaine/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/votrecollabora.monpetit.domaine/privkey.pem

Prenez bien note de ce passage, car il contient les chemins vers les fichiers que l'ont veut rentrer dans notre fichier de config apache !

Si on va voir ce qu'y se trouve au bout de ce chemin

ls -al /etc/letsencrypt/live/votrecollabora.monpetit.domaine/

On peut voir 4 fichiers, notez également leur noms.

Retournez dans le fichier de config apache de Collabora

nano /etc/apache2/sites-availables/collabora.conf

Et éditez les 3 lignes suivantes avec les chemins que vous venez de noter

SSLCertificateFile /etc/letsencrypt/live/collabora.apo33.info/cert.pem
SSLCertificateChainFile /etc/letsencrypt/live/collabora.apo33.info/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/collabora.apo33.info/privkey.pem

Activez la config

sudo a2ensite collabora.conf
Rechargez apache
<code>systemctl restart apache2

? Si apache ne redémarre pas, c'est que vous chemins sont incorrects ?

Si vos nouveaux fichiers créés avec Nextcloud sont en Allemand

Ce problème vient du fait que Nextcloud vient d'Allemagne, et donc que les fichiers templates ont été créés en Allemand. Il faut donc modifier la langue de ces fichiers

Installation de Collabora avec nginx

YUNOHOST SERVER

la meilleure découverte de ces jours-ci, yunohost est un des meilleurs projet d'intégration-serveur facile à mettre en oeuvre. Nous avons mis en place plusieurs serveurs pour gérer différents projets.

installation du server

télécharger et créer une clef usb avec la derniére version de Debian (Jessie - sept 2016) : https://www.debian.org/CD/netinst/

suivre l'install debian : https://yunohost.org/#/install_on_debian en ne choisant que le debian de base, le ssh et une interface graphique du genre lxde (au cas où vous auriez des petits soucis via la console)

par ailleurs, une fois la debian installé, le serveur ssh n'est pas installé… donc soit utiliser la console (debian sans interface graphique) pour télécharger ssh :

apt-get install ssh

ifconfig #adresse ip de la machine

soit synaptic dans l'interface graphique

-pour gérer rapidement et facilement vos droits utilisateur et les commandes sudo, su… configurer votre utilisateur en fonction

-très important : créer un utilisateur “admin”, la post-installation de yunohost ne se fera pas sans cet utilisateur. (!!!!)

puis suivre la démarche présenté ici pour installer yunohost-server : https://yunohost.org/#/install_manually

ouvrir votre navigateur et entrer l'adresse IP de la machine server, la post-install vous demandera un mot de passe admin pour gérer votre interface.

faire fonctionner Yunohost server

gestion simple de l'administration, installation des apps plus rapide. Il peut y avoir des petits soucis avec myowncloud et samba.

les problémes rencontrés

-tentative d'installation de mailman / à ne pas faire pour l'instant (non stable, met le serveur et les base de données en vrac).

SERVER SME 9

update du server SME 9 vers Koozali (Sme9.2)

mise à jour SME 8 vers 9

pas de mise à jour du 8 vers le 9!! On continue sur SME malgré cette énorme difficulté de refaire notre serveur from scratch!

info d'installation similaire au 8 (adapté au 9 - à venir)

attention utiliser sa DB avec une surprotection (admin) not root = yes →

 mysql -u root -p 

update octobre 2016 : backup & mise à jour du serveur 9 vers 9.1

Notre plus grand soucis : mettre à jour notre serveur sans tout mettre en l'air

1er étape réussi, un backup de tout le serveur, nous avons monté un yunohost sur le même réseau et sauvegardé tout le serveur via ssh et rsync

Nous utilisons l'opération rsync en mode pull (on améne les data vers le serveur qui nous sert de backup)

rsync -avz username@remote_host:/home/username/dir1 place_to_sync_on_local_machine

une fois le back up effectué, nous mettons à jour via l'interface SME pour tester son efficacité mais l'interface ne sait pas bien faire la reconfiguration, nous devons finir la post-installation à la main (terminal)

signal-event post-upgrade; signal-event reboot

le tour est joué, serveur mis à jour, back up effectué

Reminder & cron-mail

nous avons préféré envoyer un rappel tous les mois pour faire un backup plutôt que de laisser un protocole ssh automatisé si vous souhaitez le faire, suivez ce tuto : http://blogmotion.fr/systeme/connexion-ssh-et-transfert-rsync-scp-sftp-sans-mot-de-passe-2709

cd /home/e-smith/files/ibays/tonrepertoire

vi backup.sh

#!/bin/bash

mail -s "BACKUP NOW" user <<< 'lancer le back up!!! from backup machine rsync now!

:x

#pour lancer le scrit réguliérement

cd /etc/e-smith/templates/etc/crontab

vi reminder

#backup now aka reminder dude

30 10 10 * * root cd /path to directory/; ./backup.sh /

:x

#lancer le cron

expand-template /etc/crontab

service crond restart

Utiliser crontab pour créer un redémarrage automatique

tout se passe dans /etc

vi crontab

rajouter vos script ou dans notre un reboot automatique du serveur

30 23 * * * root reboot

les minutes sont avant les heures, ce qui veut dire que notre serveur va redémarrer automatique tous les jours à 23h30 ici vous pouvez rajouter tout un tas de script et commande à faire de façon automatique chaque heure, chaque jour, mois ou année…etc

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  *  user command to be executed

une fois votre crontab configuré, il vous faut le rendre actif :

expand-template /etc/crontab

vérifier que le script a été pris en compte :

more /etc/crontab

puis relancer le daemon cron

service crond restart

sécurité : script pour check les virus/spam/rootkit sur le serveur

Pour éviter les surprises mal placés, un peu de routine en terme de sécurité ne fera pas de mal à votre serveur!

cd /home/e-smith/files/ibays/tonrepertoire

mkdir scan.tmp

vi checkvirus.sh

#copier ce script

#!/bin/bash

freshclam
rm -f scan.tmp
path=$1
clamscan -r --bell -i $path >> scan.tmp
result=$(grep "Infected files: 0" scan.tmp)
return_result=$?

if [ $return_result -eq 0 ]

 then  mail -s "Rapport Virus Scan : Ras" -a scan.tmp tonloginemail <<< 'Rien à signaler !'
 else  mail -s "Rapport Virus Scan : Pblm detected !" -a scan.tmp tonloginemail <<< 'Il se peut q un virus soit entré ! (vérifiez piece jointe)'

fi

rm -f scan.tmp


:x (pour valider)


#pour lancer le script

cd /etc/e-smith/templates-custom/etc/

vi crontab

# Run custom script with cron
10 7 * *  * root cd /home/e-smith/files/ibays/tonrepertoire/; ./checkvirus.sh /

:x

#lancer le cron

expand-template /etc/crontab

service crond restart

installation wordpress

fixer le probléme du "missing temporary file"

c'est un bug de SME server à fixer de cette façon :

Only 5 variables in the php.ini file can be set using the 'setprop' commands in SMEServer. Whilst the file upload variable is set to 'On' by default, the 'upload_tmp_dir' variable is not set and hence has no value in a regular install. The following will set it to '/home/e-smith/files/tmp' for 'all ibays' - if that is what you want. The execute (x) permission is essential for the web server user.

mkdir -p : no error if existing, make parent directories as needed à faire en ligne de commande sur le serveur!!

mkdir -p /home/e-smith/files/tmp

chmod 2770 /home/e-smith/files/tmp

chown admin:www /home/e-smith/files/tmp

mkdir -p /etc/e-smith/templates-custom/etc/php.ini

cp /etc/e-smith/templates/etc/php.ini/50PathsDirectories /etc/e-smith/templates-custom/etc/php.ini

echo upload_tmp_dir = \“/home/e-smith/files/tmp\” » /etc/e-smith/templates-custom/etc/php.ini

expand-template /etc/php.ini

sv t httpd-e-smith

source : https://pve.proxmox.com/mediawiki/index.php?title=SMEServer_PHP_upload_tmp_dir&action=edit

puis installer le wordpress (méthode user friendly)

-create ibay in server-manager

-download wordpress sur votre ordinateur et le décompresser

-transfer via ftp dans le répertoire de votre futur site (html) avec l'utilisateur qui va servir à organiser le futur wordpress

-créer votre base de donnée du site via phpmyadmin ou commande mysql sur le serveur directement

-allez sur votre http://yourdomain/wordpress pour démarrer l'install / “let's go” + info database + admin wordpress

une fois installé, tester l'upload photos, normalement vous ne pouvez toujours pas écrire dans wp-content, donner les permissions 775 à wp-content / soit via le ftp soit en ligne commande root :

chmod -Rf 775 wp-content

ensuite aucun probléme pour uploader des photos

-pour installer théme et plugin, veuillez utiliser le même utilisateur ftp que pour l'installation

et voilà!!!

Si le probleme persiste il y a cette solution qui consiste à attribuer le dossier tmp à son site web et inversement en créant les liens symboliques entre les deux :

db accounts setprop "ibayName" AllowOverride All
db accounts setprop "ibayName" FollowSymLinks enabled
db accounts setprop "ibayName" PHPBaseDir /home/e-smith/files/ibays/"ibayName"/:/tmp/
signal-event ibay-modify "ibayName"

En remplaçant “ibayName” par le nom de votre ibay

Constat du 26/11/2018 : une fois cette méthode utilisé, une nouvelle erreur apparaît http error quand on upload des images, méthode pour résoudre le problème : https://www.wpbeginner.com/wp-tutorials/how-to-fix-the-http-image-upload-error-in-wordpress/

rajouter cette ligne

define( 'WP_MEMORY_LIMIT', '256M' );

dans votre fichier de config wordpress - wp-config.php file

Autre solution décrite ici est de modifier votre fichier wp-config.php et d'inscrire tout à sa fin :

define('FS_METHOD','direct');

probléme rencontré avec install Dokuwiki

petit soucis d'install dokuwiki via ftp, pas les bonnes permission pour éditer, solution via console ssh

chown -R root:buro *

chown -R www:buro conf

chown -R www:buro data

wordpress et les malware / script injection

Nous avons réguliérement des problémes avec des zozos du réseau qui mettent des scripts de spam sur nos serveurs.

Les solutions les plus puissantes jusqu'à présent testé sont :

calmAV avec la commande suivante sur vos site web

clamscan -r --bell -i votrerépertoire

et test d'intrusion sur votre serveur

nmap -A adressIP ou DNS

pour les plugins wordpress nous sommes en train de faire le tour, beaucoup marche moyennement et demande des upgrade pro pour leur meilleurs solutions…

Antivirus permet de scanner les thémes, nous cherchons un outils de scan de l'ensemble des fichiers, peut-être allons nous écrire notre propre script.

ATTENTION!! nous avons découvert que le plugin “Vimeography” permettait d'injecter un malware sur votre serveur pour envoyer des spams via votre server/IP/Dns!! n'utilisez pas ce plugin.

continuité des problémes de malware

de nouveau script sont posés dans le upload d'un wordpress, changement de permission et petit clean

trés bon tuto pour scanner les répertoires pour trouver les scripts dégeu : http://www.gregfreeman.io/2013/how-to-tell-if-your-php-site-has-been-compromised/

ceux que nous avons appliqués :

find . -type f -name '*.php' -mtime -7

find . -type f -name '*.php' | xargs grep -l "eval *(" --color
find . -type f -name '*.php' | xargs grep -l "base64_decode *(" --color
find . -type f -name '*.php' | xargs grep -l "gzinflate *(" --color

Sinon test avec un scanner de vulnérabilité WPSCAN

install - https://blog.sucuri.net/2015/10/install-wpscan-wordpress-vulnerability-scan.html

utilisation - https://blog.sucuri.net/2015/12/using-wpscan-finding-wordpress-vulnerabilities.html

Problème URL wordpress

Parfois lorque l'on a plusieurs site web sur un serveur sme un nouveau site créé peut avoir des soucis de redirection URL.

Exemple :

On a un serveur avec un DNS principal

http://apo33.org

. On veut créer un ibay (un site secondaire) dont l'adresse web est

http://electropixel.org

.

Par défaut l'url ou adresse web du site

http://electropixel.org/

peut lorsque l'on va dans d'autres pages se retrouver sous la forme

http://apo33.org/electropixel/page12.php

et on veut qu'elle reste sous la forme

http://electropixel.org/pages12

Pour corriger cela il suffit de changer l'adresse url principale du site web :

Dans le menu Tools (Outils) Settings (Paramètres) comme ceci :

DKIM / SPF et DNS pour l'envois d'email

Suite à des problémes d'emails (gmail…etc) de nos serveurs, nous avons réalisé qu'il fallait être attentif à l'ensemble des infos qu'il faut déclarer pour bien expliciter que c'est nous qui envoyons les emails et pas un spammeurs ou d'autres personnes (notamment dans la cyberwar actuelle).

Pour notre serveur SME, il nous faudra naviguer à vue, sachant que tout n'a pas l'air de fonctionner à 100% quand on vérifie notre DNS sur différentes plateformes.

tout d'abord vérifier le MX de votre DNS/Serveur (envois email) : https://toolbox.googleapps.com/apps/checkmx/

la configuration de vos emails pour SME : https://wiki.koozali.org/Email#DKIM_Setup_-_qpsmtpd_version_.3E.3D_0.96

spécifiquement le DKIM : https://wiki.koozali.org/Qpsmtpd:dkim

tester votre email (3 test max / jour) : https://www.mail-tester.com/

un autre check de votre serveur : https://check.spamhaus.org/

dns spoofing & solution

un autre cas sur lequel nous avons travaillé est l'usurpation de DNS, ce que l'on appelle le spoofing

pour vous permettre d'envoyer des emails sans être rejeté par d'autres serveurs, veuillez suivre cette simple démarche :

-tester et trouver votre SPF : http://www.kitterman.com/spf/validate.html

Le SPF = (Sender Policy Framework), cela permet de vérifier sur votre DNS est bien lié à votre IP, si vous n'avez pas validé cela auprés de votre fournisseur de DNS, vous pouvez avoir des spoofing sur votre DNS, C'est une pratique courante, donc à résoudre à un moment donné.

une fois que vous avez récupérer votre SPF record, copié le en enregistré le sur votre gestionnaire de DNS sous cette forme :

“@ SPF “google-site-v … sPDNHfM0a6s” 3h”

suivre un tuto pour son implementation dans votre DNS, nous utilisons gandi : https://www.mail-tester.com/spf/gandi

SERVER SME 8 BACK ON TRACK!

ressources

bidouilles

install SME8 - test from scratch sur le mode “server-only mode”

télécharger la dernière version stable : http://wiki.contribs.org/SME_Server:Download / graver un cd et lancer l'installation sur votre machine.

Pourquoi?

Car dans la plupart des cas il est plus évident d'utiliser son modem comme firwall / router (gateway). Pour mettre e pied à l'étrier, il est préférable de s'attaquer à SME sous le mode du server web. Ce que nous allons faire!

l'installation :

Nous avons suivi les consignes affichés à l'installation et si vous avez un doute suivre la documentation de l'installation suivante : http://wiki.contribs.org/SME_Server:Documentation:Administration_Manual:Chapter5

post-install :

-créer un utilisateur :

-petit soucis avec le niveau de sécurité et le choix du mot de passe.

apparemment on peut réduire le niveau de sécurité avec la commande :

config setprop password strengh Users normal
 
config setprop password strengh Ibays normal

on peut changer de “strong” à “normal” à “none” dans notre cas cela n'a rien changé vis à vis du niveau de mot de passe, obligé de générer un password avec ce type de programme : http://strongpasswordgenerator.com/

rajouter un disque data en plus pour l'archivage

test fait à labsin : http://smeserver.fr/astuces.php?astuce=fs_add_hd

les outils

les DNS

créer son nom de domaine

Dans le server-manager de SME - voir gestion des domains / manage domains

rajout de son nom de domaine

en terme de DNS!!

-ne pas avoir de DNS! - IP public direct (idéal!) pas de suivis moteur de recherche comme gogole et difficulté à recevoir des emails - to be tested!

-http://www.noip.com/ –> http://www.noip.com/downloads.php?page=linux

-http://freedns.afraid.org/ –> ok ça marche directement : une IP fixe public, un sous domaine tata.mooo.com et voilà c'est en ligne en qques secondes - impressionant! / test à faire sur email

-autrement je teste https://pagekite.net qui passe par un tunnel à partir de n'importe quel machine/server/localhost

docs : Dynamic DNS : http://wiki.contribs.org/SME_Server:Documentation:Administration_Manual:Appendix#Dynamic_DNS_Services

FULL DNS virtual host : http://sysnotes.wordpress.com/2008/03/06/virtual-web-hosting-on-sme-server-with-ibays/

donner accès à l'ibays Primary

ouvrir un terminal

ssh adress_IP

chown -R username /home/e-smith/files/ibays/Primary

l'email

Dans server-manager voir email settings :

configuration du système de gestion des emails, avec anti-spam, anti-virus, pop/imap et webmail

le ftp et ssh

voir remote access dans security

en post-install/config :

ssh : allow public access / internet - control ssh à partir d'internet (ip fixe)

Ftp : allow public access / internet - accès ftp depuis votre client favoris

le wordpress

création d'une ibays (ou install dans le Primary si site principal du server) :

- dans collaboration : information bays - add i-bay

- information bay name : nom de votre ibay (myadress.com/ibay)

- description : blabla blala

- choose your group (c'est mieux de créer un groupe d'utilisateurs en amont, si multi-utisateur, voir groups dans collaboration)

- User access via file sharing or user ftp : en générale - write = group (si vous voulez avoir les users actifs dans leur ibay) et read=everyone

- Public access via web or anonymous ftp : en général si vous mettez en route un worpress c'est pour être vu, alors : entire internet (no password)

- Execution of dynamic content (CGI, PHP, SSI) : enabled

puis add

enfin le wordpress :

ouvrir un terminal - se loger en ssh sur son server

télécharger le latest : http://wordpress.org/download/

clique droit sur le paquet tar : http://wordpress.org/latest.tar.gz

cd /home/e-smith/files/ibays/nomibay/html
 
rm index.html
 
wget http://wordpress.org/latest.tar.gz
 
tar xvfz latest.tar.gz
 
cd wordpress
 
mv * ..
 
cd ..

ensuite, il faut créer un base de donnée pour le wordpress en question via mysql

toujours dans le terminal :

mysql
 
mysql> CREATE DATABASE mywordpress;
 
mysql> GRANT ALL ON mywordpress.* TO username@localhost IDENTIFIED BY 'motdepasse';
 
mysql> quit

puis éditer le fichier de config :

cp wp-config-sample.php wp-config.php
 
vi wp-config.php
 
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'mywordpress');
 
/** MySQL database username */
define('DB_USER', 'username');
 
/** MySQL database password */
define('DB_PASSWORD', 'motdepasse');
 
/** MySQL hostname */
define('DB_HOST', 'localhost');
 
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
 
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
 
:x

retour sur un navigateur :

http://myserver.com/ibay

suivre la configuration proposé par wordpress avec mot de pass admin…etc

et voilà!

le wiki

Il y a des dizaines de wiki différentes sur le web! Dans notre cas nous allons utiliser le dokuwiki un wiki sans base de donnée, extrêmement pratique car ultra-portable et jamais rien à faire avec les problèmes d'upgrade de server.

-même chose que pour le wordpress : add i-bay (voir plus haut)

-une fois l'ibay créer, télécharger la dernière version de Dokuwiki : http://www.splitbrain.org/projects/dokuwiki

se loger en ssh dans l'ibay créé (même méthode que pour le wordpress)

cd /home/e-smith/files/ibays/dokuwiki/html
 
rm index.html
 
wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2012-10-13.tgz
 
tar xvfz dokuwiki-2012-10-13.tgz
 
cd dokuwiki-2012-10-13
 
mv * ..
 
cd ..

si vous ouvrez un navigateur avec l'adresse http://myadress.com/dokuwiki vous devriez avoir une erreur de permissions.

La solution la plus fastidieuse et la plus sérieuse au niveau admin est celle du .htaccess : https://www.dokuwiki.org/security#web_access_security

à l'heure de où l'on réalise ce tuto, je n'ai pas le temps de passer sur ça (à venir dès que j'ai du temps) donc je fais un raccourci de fainéant : chmod -Rf 777 * dans le dossier du dokuwiki (ne faîtes pas ça si vous ne savez pourquoi vous le faîtes) ;-) DANGEROUS!!!

bref reloader la page et vous devriez avoir un fichier de configuration du wiki avec nom, mot de passe admin…etc suivre le processus.

l'archivage / diffusion

Subsonic - http://www.subsonic.org/pages/installation.jsp (suivre cette technique d'install) + start subsonic : /etc/init.d/subsonic start

acces public : http://sourceforge.net/apps/mediawiki/subsonic/index.php?title=FAQ

to test on local server!!

le server icecast

reprendre ce tuto : http://apo33.org/apotek/doku.php?id=serveurs:icecast2

installer icecast sur SME8

cd /usr/src 
 
yum install gcc - attention il install glibc et un nouveau kernel (à prendre avec des pincettes)
yum install SDL-devel
yum install vorbis-tools libvorbis-devel 
yum install SDL-devel
yum install vorbis-tools libvorbis-devel
yum install libtheora
yum install libxslt-devel
 
wget http://downloads.xiph.org/releases/icecast/icecast-2.3.3.tar.gz
 
tar xvfz icecast-2.3.3.tar.gz
 
cd icecast-2.3.3
 
./configure
make
make install

configuration du serveur

Dans le répertoire ./conf des sources de Icecast, sont disponibles plusieurs fichiers de configuration possible,copiez celui qui vous semble le mieux dans /etc et faites y en accords avec la doc de icecast vos modification

cd conf 
ls 
cp icecast.xml.dist /etc/icecast.xml

Faites la création d’un utilisateur qui lancera icecast et du repertoire de log :

groupadd icecast
adduser icecast -G icecast 
mkdir -p /var/log/icecast
chmod 664 /var/log/icecast
chown icecast:icecast /var/log/icecast

mais sur la mise à jour du tuto de sme7 vers sme8, voici ce que je rajouterai en plus : car par default le bin de icecast viens se loger dans /usr/local/bin et donc il cherche les log dans /usr/local/var/log/icecast donc il faut créer var, log et icecast puis error et access :

mkdir /usr/local/var
mkdir /usr/local/var/log/
mkdir /usr/local/var/log/icecast
vi error.log
vi access.log
chown -R icecast /usr/local/var
chmod -R 777 /usr/local/var

et modifiez le fichier de configuration, changez la fin en (pas de copier/coller, changer le fichier, probléme d'incrémentation en xml) :

<security>
        <chroot>0</chroot>
        <changeowner>
            <user>icecast</user>
            <group>icecast</group>
        </changeowner>
</security>

puis créer un utilisateur toto avec son password.

et démarrer le serveur icecast :

sudo -u toto icecast -c /etc/icecast.xml -b

intégrer le tout dans le rc.local (marche pas encore pour moi / à tester) : http://icecast.imux.net/viewtopic.php?t=28 et la doc pour icecast : http://www.icecast.org/docs/icecast-2.3.3/

UBUNTU 10.04 SERVER LTS

retour d'expérience & autres bidouilles

DNS ubuntu - virtual host

-start a website on your server : myserver.org/mysite

-take a dns at gandi (for example) : mysite.org

-configure DNS at Gandi (edit zone) - choose “A” for value and put the public IP of your server myserver.org (@ - www)

-for ubuntu server use webmin to set up a new virtual host in “servers” (sidebar) and then “web apache server” - create a new virtual host : the path “/var/www/mysite”, the dns name “mysite.org”

-once the virtual host created, something like “webmin.1351771546.conf” in /etc/apache2/sites-enabled then you could move to your own name “mv webmin.1351771546.conf mysite.conf”

-then edit mysite.conf and change <VirtualHost mysite:80> to <VirtualHost *:80> and add ServerName and ServerAlias.

-restart apache2 : /etc/init.d/apache2 restart

###############
 
<VirtualHost *:80>
DocumentRoot "/var/www/mysite"
ServerName www.mysite.org
ServerAlias mysite.org *.mysite.org
<Directory "/var/www/mysite">
allow from all
Options +Indexes
</Directory>
</VirtualHost>
 
###############

copie du server ubuntu 10.04

Etherpad sur ubuntu 10.04

suivre tuto : https://help.ubuntu.com/community/Etherpad-liteInstallation

19/09/12 : probléme avec démarrage, voir différence avec la version des dépôts

messagerie - liste

installer les services de bases

installer webmin : http://it.thelibrarie.com/weblog/?p=498

installer wordpress :

  • mettez vous a la racine de votre serveur web (pour ma par /var/www/)
wget http://fr.wordpress.org/wordpress-3.0.1-fr_FR.zip //# télécharger le répertoire de Wordpress//
unzip wordpress-3.0.1-fr_FR.zip //# décompresser l'archive//
  • créer une base de données wordpress (via phpmyadmin pour ubuntu serveur)
  • Dans votre navigateur internet taper l'URL: http:“IP DE VOTRE SERVEUR”/wordpress * Suiver ce qu'il vous dis! * Une fois arriver a une page d'erreur créer un fichier /var/www/wordpress/wp-config.php et copier le code qu'il vous donne dans votre nouveau fichier. * retaper l'URL: http:“IP DE VOTRE SERVEUR”/wordpress/ et hop en avant les sites…!

BIDOUILLE sme 7

mailman bricolage

en attendant de migrer le mailman, voici des combines / lignes de commande utiles

pour exporter les adresses des utilisateurs d'une mailing list :

cd /usr/lib/mailman/bin

./list_members nom_mailing_list > subscribers.txt

plus d'infos : http://www.asitis.org/mailman-export-list-users

PHP5 & consorts!

* mise à jour PHP5 & sélection ibays pour utilisation php5 : http://bricoles.du-libre.org/doku.php/sme:php5

* update dokuwiki - version utilisant php5

ouvrir un terminal

télécharger dernier dokuwiki dans le répertoire du dokuwiki à updater : http://www.splitbrain.org/projects/dokuwiki - wget

##################

 tar xvfz versiondokuwiki.tar.gz
 
 cd repertoire_dokuwiki
 
 tar cvfz /tmp/wiwi.tar.gz * (compression dans tmp)
 
 cd ..
 
 tar xvfz /tmp/wiwi.tar.gz
 
 ls -l
 
 chown -R www:www *
 
 chmod 777 data data/* conf

##################

Serveur: le Robot Communicant

ATTENTION CETTE DOCUMENTATION S'ARRETE SOUVENT A SME 6 !

Une nouvelle page par la sur http://bricoles.du-libre.org, ou je commence par SME 7.4

  • petits rappels de trucs et autres sur sme 7.4
    • yum : installer des paquets dans les règles de l'art
  • Openfire un serveur jabber sur SME
  • installation PHP5 sans problemes
  • Installer RubyOnRails sur SME
  • installer OpenStreetMap sur SME
  • Installer le serveur de liste mailman sur SME
  • …/…

Nous fairons deux cas qui je pense englobent plus justement des solutions à deux approches que j'ai constaté

1 Serveur et passerelle

Machine unique

Dans ce premier cas, l'idée est connecter une machine sur Internet, machine qui sera visible comme un site Internet pour les visiteurs exterieurs, et de pouvoir connecter autant de machine chez nous pour faire ce qu'on veut.

  • Cette machine sera autonome et ne nécessitera pas d'intervention directe.
  • Elle sera un bastion pour protéger notre réseau local
  • Elle sera une passerelle vers Internet pour toutes nos autres machines
  • Elle abritera tous les services et automates dont on aurait besoin

1 Serveur seul

 Plusieurs Machines

Dans ce deuxième cas, l'idée est de séparer les fonctions sur au moins deux machines .

  • Une machine connectée à Internet faisant bastion et passerelle
  • Une ou plusieurs autres comme serveurs pour nos sites web, messageries, scopitone, etc

Cela peut être une évolution du premier cas, le serveur passant derrière son bastion, mais c'est aussi une vision à envisager dès le début si vous ête déja structurer et qu'il y à une partie bureautique qui ne veut pas être géné par une autre plus experimentale, ne pas mélanger l'administration, la compta avec le streaming et les srcipts php débridés. En plus, mettre ses règles de sécurités et de routage sur un bastion séparé est un gage de facilité et de souplesse.

Passerelle Internet

Dans le cas d'un reseau plus structurer aller par la installer une passerelle/bastion

Serveurs

Etudions le cas d'une installation simple autour de 2 distributions , Free-eos et SME. Free-eos offre plus de service que SME car il est basé sur lui mais en contrepartie, des choix ont été fait qui ne seront pas forcement les votres …Donc il vous faut regarder les possibilités de free-eos, si cela vous suffi, il sera plus rapide à installer puisque tout près.

Pour la petite histoire, Free-eos est un dérivé de SME qui est une évolution de e-smith basée sur une Redhat epurée et Ipcop un dérivé de SmoothWall qui est maintenant en grande partie sous licence commerciale

La distribution GNU/GPL FREE-EOS

Extrait du site :

Le serveur Free-EOS est une solution de multi-serveurs/passerelle francisée dont la devise est “Vite, Simple et Bien”. Il vous offre la possibilité -et ce sans connaissance technique poussée- de :

  • Partager votre connexion internet (modem RTC, RNIS ou ADSL Ethernet),
  • Protéger votre réseau avec son firewall automatisé,
  • Partager vos imprimantes,
  • Gérer votre réseau que les stations soient sous Windows, Mac ou GNU/Linux,
  • Héberger vos sites web, email (avec antivirus et webmail), intranet, extranet,
  • Héberger un annuaire des utilisateurs
  • Installer des applications web (sites dynamiques tels des forum, gestion de projet, système de publication…)

En quelques clics,

  • Gérer des listes de discussion/diffusion,
  • Héberger un serveur de messagerie instantanée,
  • Sauvegarder et restaurer des images-disque des stations,

Et bien plus…

Le serveur Free-EOS s’installe sur une machine dédiée, pas forcément très puissante, et s’administre depuis votre poste de travail via une interface web simple et conviviale, avec votre navigateur habituel.

Caractéristiques du système:

  • serveur Web dynamique (CGI Perl, PHP)
  • serveur Web d’administration sécurisé
  • serveur de messagerie (SMTP, POP, IMAP)
  • serveur FTP
  • serveur NTP (serveur de synchronisation des postes clients)
  • serveur MySQL (serveur de base de données)
  • serveur LDAP (annuaire d’entreprise)
  • serveur de messagerie instantanée (via Jabber)
  • contrôleur de domaine Netbios (via Samba)
  • serveur PPTP (VPN pour une accès distant sécurisé au LAN)
  • administration distante par SSH
  • serveur DHCP
  • serveur mandataire (proxy) transparent
  • serveur DNS cache pour le LAN
  • pare-feux
  • routeur NAT pour les postes du LAN
  • serveur de stockage d’images disques (Partimage)
  • VPN IPSEC
  • gestion des comptes utilisateurs avec espace personnel
  • gestion des groupes avec espaces mutualisés
  • gestion d’applications Webs (LAMP) dédiées à un groupe
  • gestion des quotas disques
  • gestion des domaines virtuels
  • sauvegardes/restaurations sur bande ou poste de travail

il comprend des applications web comme :

  • spip (1.8) cms multilingue
  • ganesha (3.0.7) platedorme de télé-formation
  • phpbb (2.0.14) forum
  • moodle (1.4.4) cms orienté éducation
  • galette (0.62a)
  • webcalendar (1.0RC)
  • claroline (1.5.3) gestion de télé-formation
  • clamav (0.83) antivirus
  • application web GRR (Gestion de réservation de ressources)
  • application web agora-project (groupware)
  • application web phorum5 (forum)
  • application web mediawiki (le wiki de wikipedia)
  • application web dotclear (weblog)
  • nut (gestion d’onduleur)
  • lshw ressource système
  • bind gestion de DNS
  • apache gestionnaire de site
  • mysql gestion base de donnee
  • gestion de sauvegadre

La distribution GNU/GPL SME

Je reprends ici la page de contribs.org le site principal pour SME que je vous invite a compulser.

Le serveur SME, c’est quoi ?

* Le serveur SME est un serveur reseau simple d’utilisation, fiable, robuste et extensible. Les Avantages !

* Le serveur SME est un progiciel GPL qui, une fois installé sur un ordinateur PC-COMPATIBLE, le transforme en serveur de communications facile à utiliser, basé sur Linux. Quand vous reliez le serveur SME à l’Internet et à votre réseau, il vous fournit une suite complète de services essentiels de gestion de réseau pour les communications et la collaboration internes et externes.

* Le serveur SME est réellement une version modifiée de ’chapeau rouge’ (RedHat)Linux, un des systèmes d’expoitation les plus connus au monde.

* Cette distribution de Linux a été simplifiée en pré-configurant tous ses éléments, la sécurité, le disque dur, les modules … . La procédure d’installation a été automatisée, et facilitée au maximum, ne posant ’qu nombre minimal de questions.

* De plus, extrèmenet facile a utiliser et administrer, grace a son interface intégrée … également disponible en français !.

* En quelques minutes vous aurez un serveur Linux parfaitement configuré que vous pouvez administrer à partir de votre explorateur intenet.

* Vous n’avez besoin d’aucune formation spécialisée, vous serez plus rapidement opérationnel que ce que vous avez imaginé !.

* Ce serveur SME, peut être ajouté à n’importe quel réseau existant, compatible avec les machines de Microsoft Windows, de Macintosh ou de Linux/Unix.

* Le choix du système d’exploitation de vos stations de travail vous reste entier. Ce logiciel fonctionne sur n’importe quel PC de classe ’Pentium’, nouveau ou vieux.

* Le serveur SME est basé sur la même technologie de gestion de réseau que certaines des plus grandes sociétés du monde.

* C’est un produit robuste et fiable qui peut soutenir cinq utilisateurs ou 500.

Comment fonctionne-t’il ?

* Le serveur SME s’installe automatiquement sur un PC, le convertissant en serveur de communications d’un niveau industriel.

* Il fournit de façon standard les fonctionnalités suivantes :

  • Un serveur d’email à rendement élevé qui gére les mails de vos utilisateurs.
  • Haut niveau de sécurité qui réduit les risques d’intrusion.
  • Un serveur de fichiers central permettant l’échange d’informations entre des machines Windows, Macintosh ou Unix.
  • Un serveur Web complet, supportant le CGI et PHP.
  • Gestion administrative simple et cohérente pour ajouter de nouveaux comptes d’utilisateur, gerer les accès à distance, pour configurer des imprimantes, pour gérer des groupes de travail, pour relier des réseaux additionnels… .
  • Des services spéciaux qui gèrent les droits et l’accès d’Internet, améliorant le contrôle de votre réseau.
  • Un répertoire partagé d’adresses mail qui est maintenu automatiquement.
  • Un concept de ’ ibays ’ permettant un compartimentage qui rend facile la gestion des groupes de travail.

Je témoigne de la grande facilité d’installation de ces plateformes, le plus dur est de trouver un ordinateur qui fonctionne, les installations par CD prennent moins d’une heure !

SME

Mise à jour

SME évoluant vers une version 7 basée sur CenteOS , il est bon voir nécéssaire de mettre à jour la version SME 6.5 avec cette page

http://distro.ibiblio.org/pub/linux/distributions/smeserver/releases/6.5RC1/updates-testing-common/i386/

et une nouvelle documentation (anglais)

Des scripts tout faits pour SME

Sur un pc sur le reseau local vous pouvez vous connecter au serveur dans un terminal (console) grace à ssh par exemple si votre serveur est sur cet IP

ssh 192.168.0.1

, cela demande d'avoir sur votre pc de paquet open-ssh, ou si vous êtes encore sous winwin putty.exe

En plus de permetre de reconfigurer le serveur sans y coller d'écran avec /sbin/e-smith/console. Cela nous permet de modifier SME à notre guise.

listes des install:

  • anti-spam spamassassin
  • anti-virus clamav
  • mailing liste mailman
  • gestion de la bande passante QoS
  • statistique reseaux MRTG
  • controle de service SME
  • script de gestion de SME facile
  • statistique des sites awstats

Et si vous avez ouvert l'accès à l'extérieur dans le menu de e-smith-manager, vous pourez le faire d'internet :-)

ATTENTION CETTE DOCUMENTATION S'ARRETE SOUVENT A SME 6 !

#!/bin/sh
# scripts d'installation de contributions SME pour les grands fatigues
# merci a sme.swerts-knudsen.dk !!
 
##################
echo "installation de SpamAssassin"
 
cd /tmp
/bin/rm -rf spamfilter_install.sh
wget http://sme.swerts-knudsen.dk/downloads/SpamFilter/spamfilter_install.sh
sh spamfilter_install.sh
echo upgrade spamfilter rpms to norlug 3.0.1-3 versions
mkdir spam
cd spam
wget -nc http://mirror.datapipe.net/norlug/redhat-7.3/RPMS/perl-Mail-SpamAssassin-3.0.4-1.norlug.i386.rpm
wget -nc http://mirror.datapipe.net/norlug/redhat-7.3/RPMS/spamassassin-3.0.4-1.norlug.i386.rpm
wget -nc http://mirror.datapipe.net/norlug/redhat-7.3/RPMS/spamassassin-tools-3.0.4-1.norlug.i386.rpm
rpm -Uvh *.rpm
cd ..
 
################
echo "installation de Anti Virus"
 
cd /tmp
/bin/rm i-rf antivirus_install.sh
wget http://sme.swerts-knudsen.dk/downloads/AntiVirus/antivirus_install.sh
sh antivirus_install.sh
echo installation Qmail Queue Handel
cd /tmp
wget http://contribs.org/contribs/saco/contrib/e-smith-qmHandle/e-smith-qmHandle-1.0.0-7.noarch.rpm
rpm -Uvh e-smith-qmHandle-*.rpm
 
###############
echo "installation de Mailman"
 
cd /tmp
mkdir mailman
wget ftp://chaloner.ca/mailman-2.1.3.tar
tar xvfz mailman-2.1.3.tar
rpm -Uvh *.rpm
cd ..
echo "Mettre a jour le mot de passe des listes"
/opt/mailman/bin/mmsitepass
service mailman stop
service mailman start
 
##############
 
echo "installation de Lazy-admin-tools et userpanel contribs"
 
#http://www.contribs.org/contribs/mblotwijk/
cd /tmp
mkdir lat
cd /lat
wget -nc http://sme.swerts-knudsen.com/downloads/e-smith-lazy_admin_tools-0.9.0-1.noarch.rpm
wget -nc http://sme.swerts-knudsen.com/downloads/Userpanel/e-smith-userpanel-1.6.0-3.noarch.rpm
wget -nc http://sme.swerts-knudsen.com/downloads/Userpanel/perl-Unicode-IMAPUtf7-1.02-1.i386.rpm
wget -nc http://sme.swerts-knudsen.com/downloads/Userpanel/perl-Unicode-String-2.06-1.i386.rpm
rpm -Uvh *.rpm
cd ..
 
##############
echo " enlever le double bounce (contribs.org)"
 
cd /tmp
mkdir -p /etc/e-smith/templates-custom/var/qmail/alias/
touch /etc/e-smith/templates-custom/var/qmail/alias/.qmail-oblivion
echo "#" > /etc/e-smith/templates-custom/var/qmail/alias/.qmail-oblivion
mkdir -p /etc/e-smith/templates-custom/var/qmail/control/
touch /etc/e-smith/templates-custom/var/qmail/control/doublebounceto
echo "oblivion" > /etc/e-smith/templates-custom/var/qmail/control/doublebounceto
/sbin/e-smith/expand-template /var/qmail/alias/.qmail-oblivion
/sbin/e-smith/expand-template /var/qmail/control/doublebounceto
service qmail restart
 
###############
echo "installation de MRTG"
 
cd /tmp
ln -s /lib/libcrypto.so.0.9.6b /usr/lib/libcrypto.so.1
lat-ibays -a -c "mrtg | mrtg monitoring | admin | wr-admin-rd-group | global "
/bin/rm mrtg_install.sh
wget http://sme.swerts-knudsen.dk/downloads/MRTG/mrtg_install.sh
sh mrtg_install.sh
 
###############
echo "installation de QoS"
 
cd /tmp
wget http://sme.swerts-knudsen.dk/downloads/QoS/sme-QoS-1.0-6.noarch.rpm
rpm -Uvh sme-QoS-1.0-6.noarch.rpm
 
###############
echo "installation de ftp user chroot"
 
cd /tmp
wget http://www.dungog.net/sme/files/dungog-proftpd-chroot-0.1-5.noarch.rpm
rpm -Uvh dungog-proftpd-chroot-0.1-5.noarch.rpm
 
###############
echo " installation de service control"
 
cd /tmp
wget http://contribs.org/contribs/dmay/mitel/contrib/e-smith-service-control/e-smith-service-control-1.1.0-06.noarch.rpm
rpm -Uvh e-smith-service-control-1.1.0-06.noarch.rpm
###############
echo "Installation de awstats"
 
cd /tmp
lat-ibays -a -c "awstats | awstats monitoring | admin | wr-admin-rd-group | global "
wget -N http://sme.swerts-knudsen.dk/downloads/AwStats/install_awstats.sh
sh install_awstats.sh
 
###############
echo "installation d'un WebShare"
 
mkdir /tmp/webshare
cd /tmp/webshare
wget http://contribs.org/contribs/nightspirit/e-smith-htaccess/e-smith-htaccess-1.1-2.noarch.rpm
#wget ftp://ftp.pbone.net/mirror/ftp.redhat.com/pub/redhat/linux/7.1/en/DMA/CPAN/RPMS/perl-Apache-Htaccess-0.4-10.i386.rpm
wget ftp://ftp.pbone.net/mirror/dag.wieers.com/packages/perl-Apache-Htpasswd/perl-Apache-Htpasswd-1.5.9-1.0.rh7.rf.noarch.rpm
wget http://www.spox31.dyndns.org/portail/IMG/rpm/devinfo-mitel-webshare-0.0.1-3.noarch.rpm
#wget http://www.gatherum.org/downloads/downloads/phpfm.0.2.3.tar.gz
 
rpm -i e-smith-htaccess-1.1-2.noarch.rpm devinfo-mitel-webshare-0.0.1-3.noarch.rpm perl-Apache-Htpasswd-1.5.9-1.0.rh7.rf.noarch.rpm
 
 
 
###############
echo "Prise en compte des templates"
 
/sbin/e-smith/signal-event console-save
/sbin/e-smith/signal-event post-upgrade
/sbin/e-smith/signal-event reboot

D'autre scripts pour SME apt, mailman, icecast2, mldonkey

Installation du gestionnaire de paquet apt sur SME

Les base de paquets red-hat et leur gestion deviennent beaucoup plus simple avec apt!

rpm -Uvh ftp://ftp.pbone.net/mirror/ftp.freshrpms.net/pub/freshrpms/redhat/misc/apt/rh70-orig/apt-0.5.5cnc5-fr1.i386.rpm

apt-get update

modifiez le fichier /etc/apt/sources.list pour avoir la red-hat 8, en placant les # pour la mise en commentaire.

ensuite apt-get install gcc pour installer par exmeple ici le compilateur

ou apt-cache search SDL pour rechercher tout sur SDL

Mailman

Installation du serveur de mailing listes mailman sur SME 6 et 7 mailman

Icecast2 serveur de streaming audio-video

Mldonkey serveur P2P

Kplaylist media jukebox

Zina un JukeBox sur SME

Jinzora un NET JukeBox sur SME 7

http://www.jinzora.com/

  • Commencez par modifier le fichier /etc/e-smith/templates/etc/httpd/conf/httpd.conf/95AddType00PHP2ibays

pour pouvoir streamer de gros fichier avec les fonctions PHP.

  pico /etc/e-smith/templates/etc/httpd/conf/httpd.conf/95AddType00PHP2ibays
 
  my $status = $php{status} || 'disabled';
    if ($status eq 'enabled')
    {
    use esmith::AccountsDB;
    my $adb = esmith::AccountsDB->open_ro();
    foreach my $ibay ($adb->ibays)
    {
        local $dynamicContent = $ibay->prop('CgiBin') || 'disabled';
        if ($dynamicContent eq 'enabled')
        {
        $OUT .= "\n<Directory /home/e-smith/files/ibays/" . $ibay->key . "/html>\n";
        $OUT .= "    AddType application/x-httpd-php .php .php3 .phtml\n";
        $OUT .= "    AddType application/x-httpd-php-source .phps\n";
        # ajout APO33 pour le jukebox
        $OUT .= "    php_value  upload_max_filesize  50M\n";
        $OUT .= "    php_value  post_max_size  50M\n";
        #FIN APO33

        # Set the sandbox within which PHP is confined to play
        my $basedir = $ibay->prop('PHPBaseDir')
            || ("/home/e-smith/files/ibays/" . $ibay->key . "/");
        $OUT .= "    php_value open_basedir $basedir\n";
        $OUT .= "</Directory>\n";
        }
    }
    }
}
  • recuperez la derniere version de jinzora sur votre ibays crée pour cette occasion,

ici jukebox .que vous mettrez en visible avec PHP

cd /home/e-smith/files/ibays/jukebox/html
wget  http://www.jinzora.com/downloads/j2.3.6.tar.gz
tar xvfz j2.3.6.tar.gz
cd jinzora2
sh configure.sh
#creation d'une database pour jinzora
mysql

create database jinzora2;
grant all privileges on jinzora2.* to user-machin@localhost identified by 'motdepasse';
quit
  • ouvrez votre navigateur pour faire l'installation,

ca devrait se faire tout seul, les permissions sont faites par le configure , la base de donnée prète et les parametres php en place .

Webshare sur SME

Dokuwiki sur SME

DokuWiki sur SME

L'information du créateur est sur splitbrain.org

Comme toute les installations de base sur le SME: ouvrez un terminal sur un autre PC sur le reseau local , votre serveur etant sur l'adresse 192.168.1.1 par exemple

ssh root@192.168.1.1

ou pour ouvrir une console directement du moniteur branché sur le serveur: ALT-F2

cd /home/e-smith/files/ibays/Primary/html # ou le repertoire d’un ibays que vous avez precedement crée 
rm index.html                             # pour enlever le fichier defaut de l'ibays
wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2005-09-22.tgz?id=projects%3Adokuwiki&cache=cache

mv dokuwiki* Dokuwiki.tgz  # ou la derniere version 
tar xvfz Dokuwiki.tgz 
cd dokuwiki..truc.truc # attention au nom de version 
exit 0 # reprendre la ici
mv * .* .. 
cd ..
chown -R www:www *
touch data/changes.log
chmod 666 data/changes.log 

pico conf/local.php            # pour mettre a jour le nom du site et quelques trucs 
<?
/*
  This is an example of how a local.php coul look like.
  Simply copy the options you want to change from dokuwiki.php
  to this file and change them
 */


$conf['title']       = 'Apotek';        //what to show in the title

$conf['useacl']      = 1;                //Use Access Control Lists to restrict access?
$conf['superuser']   = 'toto';

Entrez dans le site avec votre navigateur en allant sur la page http://localhost/ pensez à changer les règles acl de gestion des autorisations . par exemple

# Access Control
#
# none   0
# read   1
# edit   2
# create 4
# upload 8
# grant  255 #not used yet

*       @ALL    1
*       admin   255
start   @ALL    1
start   admin   8
*       @user   8

et le fichier user.auth

# Userfile
#
# Format:
#
# user:MD5password:Real Name:email:groups,comma,seperated
#
admin:1c8abblablablabla:bretzel:bretzel@apo33.org:admin
toto:1c8ab1a65blablabla:toto:totol@truc.org:admin
untel:617fblablablablabla:untel:info@truc.org:user

un générateur de mot de passe md5, parmis d'autre, est disponible ICI

et pour finir, si vous désirez vraiment autoriser l'execution de code html ou php dans vos pages, ajoutez les lignes dans le fichier conf/local.php

$conf['htmlok']      = 1;     //may raw HTML be embedded? This may break layout and XHTML validity 0|1
$conf['phpok']       = 1;     //may PHP code be embedded? Never do this on the internet! 0|1

des outlis d'administration , encore ..

installer un chat simple en 2 minutes

dans le genre super facile à installer, simple (1 seule salle de chat) et qui n'utilise pas de base de donnée : PHPFreeChat est parfait!

* la procédure :

aller sur le site : http://www.phpfreechat.net/

1- Téléchargez le script d'installation auto-extractible : phpfreechat-x.x-setup.php (la dernière version de préférence)

2- Uploadez le script dans un répertoire accessible par votre navigateur (répertoire publique)

3- Lancez votre navigateur et exécutez le script d'installation que vous venez d'uploader, ceci devrait lancer une interface d'installation, suivez alors les étapes !

Astuce : supprimez le scripte d'installation une fois terminé pour des raisons de sécurité.

et voilà un chat rapidment monté ;-)

Trucs en Vrac

Documentation Qmail

Problemes d'affichage, de cache, d'un site utilisant mysql

Ce probleme vient peut etre d'un fichier mysql mal en point, j'ai observé apres un transfert à vif d'un site Wikini que les pages s'affichaient blanches, si on insiste, elle s'affichent correctement.

un des fichiers mysql avait un probleme, solution myisamchk , voici une manipulation à vif aussi mais qui peut fonctionner :

  • stoper le serveur apache si vous pouvez, cela arretera toute consultation sur tout vos sites .
/etc/init.d httpd stop
  • se rendre dans le répertoire mysql considéré, ici monwikini c'est la database utilsée par le site wiki, et faire une sauvegarde puis le check
cd /var/lib/mysql
tar cvfz /tmp/monwikini-mysql.tgz monwikini
cd monwikini
myisamchk --silent --force --fast --update-state \
-O key_buffer=64M -O sort_buffer=64M \
-O read_buffer=1M -O write_buffer=1M \
*MYI
  • vérifiez que les fichiers sont bons
myisamchk *MYI

ne donne aucune erreur, si vraiment tout est encore cassé, voir que c'est encore pire, vous avez la sauvegarde et

cd ..
tar xvfz /tmp/monwikini-mysql.tgz

remet tout comme avant … mais il va faloir trouver une autre solution ..

  • relancez le serveur apache , c'est terminé, vous n'aurez plus de page blanche .
/etc/init.d/httpd start

Une autre méthode, du genre, accroche toi au pinceau, j'enleve l'echelle, sur mabasemachin dans monsitetruc:

cd /var/lib/mysql/mabasemachin
mv /home/e-smith/files/ibays/monsitetruc/html /home/e-smith/files/ibays/monsitetruc/html.good
myisamchk --silent --force --fast --update-state \
-O key_buffer=64M -O sort_buffer=64M \
-O read_buffer=1M -O write_buffer=1M \
*MYI
myisamchk *MYI
mv /home/e-smith/files/ibays/monsitetruc/html.good /home/e-smith/files/ibays/monsitetruc/html

Backup and Restore MySQL Database Using Command Line

Methode 1 (Longue)

mysqldump -u USER -pPASSWORD DATABASE > filename.sql

copy the file to the new host and restore using

mysql -u USER -pPASSWORD DATABASE < filename.sql

Methode 2 (courte)

mysqldump –opt –compress –user=USERHERE –password=PWHERE
–host=SOURCE.HOST.HERE SOURCE_DB_NAME | mysql –user=USERHERE
–password=PWHERE –host=TARGET.HOST.HERE -D TARGET_DB_NAME -C
TARGET_DB_NAME

Device not managed - carte réseau disable - apodio13 - Xubuntu 20.10LTS

petit soucis à l'été 2021 avec une mise à jour xubuntu 20.10LTS Soudainement les carte réseaux eth0 ne fonctionnent plus… device not manage dans le network-manager… après de nombreux essais et tentative via des forums, ce qui a marché pour nous :

gedit /etc/NetworkManager/NetworkManager.conf

puis éditer la ligne suivante

[ifupdown]
managed=true (au lieu de false)

puis :

gedit /etc/NetworkManager/conf.d/10-globally-managed-devices.conf

rajouter cette ligne suivante et sauvegarder (le tout en root) :

[keyfile]
unmanaged-devices=*,except:type:wifi,except:type:wwan,except:type:ethernet

source : https://askubuntu.com/questions/71159/network-manager-says-device-not-managed

serveurs/serveurs_start.txt · Last modified: 2023/09/19 17:00 by julien