====== 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 [[https://wiki.contribs.org/SME_Server:9.2|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) {{:serveurs:exportmysql.png?800|}} -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!! {{:serveurs:importmysql.png?800|}} -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 : Welcome to Example.com!

Success! The example.com server block is working!

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) ServerName cloud.monpetit.domaine ServerAdmin webmaster@localhost DocumentRoot /var/www/nextcloud ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined -- 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 Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload" AllowOverride All 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 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 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 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 [[http://www.hongkiat.com/blog/update-wordpress-without-ftp/| 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 : {{:serveurs:wordpresspermalinks.png?600|}} ==== 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 ===== théorique : http://www.logiciel-libre.org/book/export/html/282 le site ressource en FR : http://smefr.free.fr/index.php le site contrib "of course" : http://wiki.contribs.org/SME_Server_8 avec la partie admin : http://wiki.contribs.org/SME_Server:Documentation:Administration_Manual:Chapter13 ===== 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. {{serveurs:server_only_mode.jpg|}} **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) : 0 icecast icecast 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 to and add ServerName and ServerAlias. -restart apache2 : /etc/init.d/apache2 restart ############### DocumentRoot "/var/www/mysite" ServerName www.mysite.org ServerAlias mysite.org *.mysite.org allow from all Options +Indexes ############### ==== copie du server ubuntu 10.04 ==== __de chez ubuntu directement :__ http://doc.ubuntu-fr.org/serveur#sauvegarde __avec clonezilla :__ http://clonezilla.org/clonezilla-SE/ une méthode : http://ubuntuforums.org/showthread.php?t=1216081 __en mode backup :__ http://ubuntuforums.org/showthread.php?t=35087 __avec remastersys :__ http://www.geekconnection.org/remastersys/ubuntu.html __avec G4L :__ http://sourceforge.net/projects/g4l/ ==== 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 ==== how to messagerie / email : http://doc.ubuntu-fr.org/serveur#courrier_electronique ==== 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 ==== {{serveurs:server_and_gateway_mode.jpg|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 ==== {{serveurs:server_only_mode.jpg| 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 [[serveurs:passerelle|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 [[http://free-eos.org/|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 [[http://www.contribs.org|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 ====== **Page de liens SME**: * [[http://www.contribs.org/|contribs.org]] * [http://smeserver.sourceforge.net/HomePage]] * [[http://www.sme-fr.homelinux.net/|Gran'Pa]] * [[http://sme.swerts-knudsen.dk/||swerts-knudsen]] * [[http://dungog.net/sme/|dungog.net]] * [[http://www.tech-geeks.org/|tech-geek.org]] * [[http://smerp.free.fr/liens.html|liens chez smerp]] * [[http://www.vanhees.cc/]] * [[http://www.apo33.org/raccorps/rubrique.php3?id_rubrique=4|la page sur apo33/raccorps]] en passant sur SME7 * http://www.raber.homelinux.net/index.php?option=com_frontpage&Itemid=1 ===== 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 [[http://smeserver.sourceforge.net/sme70/Manual|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 [[serveurs:mailman]] ==== Icecast2 serveur de streaming audio-video==== [[serveurs:Icecast2|Installation du serveur Icecast2]] ==== Mldonkey serveur P2P ==== [[serveurs:mldonkey|Installation de mldonkey sur SME ]] ==== Kplaylist media jukebox ==== [[serveur:kplaylist|Kplaylist jukebox]] ==== Zina un JukeBox sur SME ==== [[serveurs:zina|Zina 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 .= "\nkey . "/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 .= "\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 ==== [[serveurs:webshare|webshare sur SME]] ==== Dokuwiki sur SME ==== DokuWiki sur SME L'information du créateur est [[ http://wiki.splitbrain.org/wiki%3AInstall| 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 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 [[ http://www.phpbbhacks.com/md5.php|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 .. ==== [[http://smeserver.pialasse.com/index.php/Monitoring]] [[http://smeserver.pialasse.com]] ==== 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 : [[http://sourceforge.net/project/showfiles.php?group_id=158880|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 === [[http://www.culte.org/projets/doc/qmail/v0.4/]] === 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