Merge branch 'master' of https://gitlab.com/garagenum/doc
This commit is contained in:
commit
ee6fc01441
@ -3,6 +3,7 @@
|
||||
Cette rubrique répertorie différentes procédures pour réaliser le travail administratif du Garage Numérique.
|
||||
|
||||
- [Recadrage des avis de paiement de l'asp](cadrage-asp)
|
||||
- [ Procédures de compta avec odoo](process-odoo)
|
||||
- [ Procédures des Ressources Humaines](rh)
|
||||
- [Procédures comptables](compta)
|
||||
- [Procédures de compta avec odoo](process-odoo)
|
||||
- [Procédures des Ressources Humaines](rh)
|
||||
- [Procédures comptables](compta)
|
||||
- [Procédures d'installation Windows](windows)
|
||||
49
docs/admin/windows/index.md
Normal file
49
docs/admin/windows/index.md
Normal file
@ -0,0 +1,49 @@
|
||||
# Installation et activation de produits Microsoft
|
||||
## Les sites
|
||||
Une communauté à privilégier pour l'activation de logiciels microsoft est ==r/Piracy==, sur reddit.
|
||||
Il existe aussi un "megathread" qui regroupe tout les outils et logiciels lié au piratage.
|
||||
[https://github.com/Shakil-Shahadat/awesome-piracy](https://github.com/Shakil-Shahadat/awesome-piracy).
|
||||
|
||||
Il faut éviter les sites comme ==ThePirateBay== qui contiennent enormement de virus.
|
||||
Il faut aussi éviter les ==recherches directes sur Google==.
|
||||
Les premiers liens sont souvant des virus, comme KMSPico.
|
||||
Les =="builds"== qui sont des logiciels avec une interface pour installer et activer les produits Microsoft sont aussi à éviter, il est très facile d'y inclure des virus et ils ne sont pas opensource.
|
||||
|
||||
**En général, la meilleure méthode est de télécharger le produit tel quel sur les serveurs Microsoft pour ensuite l'activer avec MAS, qui est un script disponible sur GitHub.**
|
||||
|
||||
## Outils
|
||||
#### [Microsoft Activation Scripts (MAS)](https://github.com/massgravel/Microsoft-Activation-Scripts/releases)
|
||||
Le meilleur activateur, licences Windows 10 et Office, il permet aussi de changer d'edition de Windows.
|
||||
Il s'execute dans un terminal en super-utilisateur.
|
||||
En plus de ça, grâce à sa nature de script, il est totalement transparent contrairement aux outils avec une interface.
|
||||
Il possible de l'executer directement à partir de powershell
|
||||
```powershell
|
||||
irm https://massgrave.dev/get | iex
|
||||
```
|
||||
#### [tb.rg-adguard.net](https://tb.rg-adguard.net)
|
||||
Un site pour télécharger directement les produits Microsoft depuis leurs serveurs.
|
||||
On peut aussi aller directement sur la [page de téléchargement de Windows](https://www.microsoft.com/fr-fr/software-download/windows10) mais cette page permet seulement de télécharger un outil de mise à jour quand on est déjà sur Windows et semble donner un lien vers les ISO uniquement ==depuis Linux==, il ne permet pas non plus de choisir une version précise.
|
||||
Il est possible de changer l'user-agent de son navigateur pour acceder à la version "linux" de cette page, ce que beaucoup de personne font.
|
||||
!!! warning "Avertissement de sécurité"
|
||||
Ne pas tenir compte du message d'avertissement au moment tu téléchargement, les serveurs de téléchargement de Microsoft sont toujours en HTTP, ce qui génère des alertes de sécurité...
|
||||
|
||||
## Activation
|
||||
L'activation d'un logiciel Microsoft est plutôt simple, voici une procedure complète en détail, pour Office :
|
||||
#### Téléchargement de Office
|
||||
Se rendre sur [tb.rg-adguard.net](https://tb.rg-adguard.net) et sélectionner la version souhaitée de Office.
|
||||
!!! warning "On ne peut selectionner qu'un seul logiciel de la suite office à la fois, pour avoir Word, Excel et Powerpoint par exemple, il faudra les télécharger un par un"
|
||||

|
||||
#### Installation de Office
|
||||
Les fichiers téléchargés sont au format ==iso==.
|
||||
En double-cliquant dessus Windows les montes dans un lecteur virtuel.
|
||||
Une fois montée il faut cliquer sur "
|
||||
Suivre les étapes d'installation
|
||||
Répeter ces étapes pour chaque logiciel.
|
||||
#### Activation de Office
|
||||
!!! info "Penser à installer tout les logiciels avant de les activer, le script permet de tous les activer en même temps"
|
||||
Il faut executer le script "MAS_AIO.cmd" qui se trouve dans "All-In-One-Version" ==en administrateur==.
|
||||
Une fois ce script éxecuté on a cette interface
|
||||

|
||||
Selectionner ==Online KMS== (2) puis ==KMS Activation== (1)
|
||||
Le script va chercher et activer tout les produits Microsoft sans licence (y compris la licence Windows).
|
||||
|
||||
BIN
docs/admin/windows/office-1.png
Normal file
BIN
docs/admin/windows/office-1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 285 KiB |
BIN
docs/admin/windows/office-2.png
Normal file
BIN
docs/admin/windows/office-2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
@ -36,7 +36,7 @@ git add fichier1 fichier2
|
||||
- Créer un enregistrement (une version) du code avec un commentaire:
|
||||
|
||||
```bash
|
||||
git commit -m "commentaire (exemple: modification du fichier1, ajout fonction test"
|
||||
git commit -m "commentaire (exemple: modification du fichier1, ajout fonction test)"
|
||||
```
|
||||
|
||||
- Pousser les changements vers le dépôt distant (Gitlab ou Github par exemple):
|
||||
@ -63,6 +63,18 @@ git branch nom-nouvelle-branche
|
||||
git push origin nom-nouvelle-branche
|
||||
```
|
||||
|
||||
- Effacer une branch locale:
|
||||
|
||||
```bash
|
||||
git branch -d branche-a-effacer
|
||||
```
|
||||
|
||||
- Effacer une branche du dépôt distant:
|
||||
|
||||
```bash
|
||||
git push origin --delete branche-a-effacer
|
||||
```
|
||||
|
||||
## Workflow
|
||||
|
||||
### Cloner un dépôt distant en local, l'éditer puis pousser les changement
|
||||
@ -135,13 +147,21 @@ git push origin main # ou le nom de la branche
|
||||
|
||||
## Autres commandes utiles
|
||||
|
||||
- Savoir sur quelle branche on se trouve:
|
||||
- Récupérer localement les changements du dépôt distant:
|
||||
|
||||
```bash
|
||||
git pull
|
||||
```
|
||||
|
||||
:warning: Si des changements ont été effectués localement depuis le git clone ou depuis le dernier git pull, git vous avertira qu'il faut remiser les changements (annuler) ou les valider (pousser les changements vers le dépôt distant) pour ne pas écraser ceux-ci avec la version du code se trouvant sur le dépôt distant.
|
||||
|
||||
- Savoir sur quelle branche on se trouve et les branches disponibles localement:
|
||||
|
||||
```bash
|
||||
git branch
|
||||
```
|
||||
|
||||
- Créer une nouvelle branche:
|
||||
- Créer une nouvelle branche et basculer vers la nouvelle branche:
|
||||
|
||||
```bash
|
||||
git checkout -b nom-nouvelle-branche
|
||||
@ -175,6 +195,7 @@ sudo nano ~/.bashrc
|
||||
git_branch() {
|
||||
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
|
||||
}
|
||||
export PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]:\[\033[38;5;5m\]\$(git_branch)\[\033[00m\]\$ "
|
||||
```
|
||||
|
||||

|
||||
|
||||
@ -623,9 +623,11 @@ Nous avons besoin de créer les fichiers suivants pour qu'ils soient utilisés p
|
||||
```
|
||||
#### Création des dossiers pour les volumes permanents
|
||||
|
||||
sudo mkdir /data/nextcloud/{data,config,apps,mysql} -p
|
||||
sudo chown -R www-data:root /data/nextcloud
|
||||
sudo chown -R 999:root /data/nextcloud/mysql
|
||||
```bash
|
||||
sudo mkdir /data/nextcloud/{data,config,apps,mysql} -p
|
||||
sudo chown -R www-data:root /data/nextcloud
|
||||
sudo chown -R 999:root /data/nextcloud/mysql
|
||||
```
|
||||
|
||||
### Fichiers de configuration pour Redis
|
||||
|
||||
@ -639,7 +641,7 @@ Nous avons besoin de créer les fichiers suivants pour qu'ils soient utilisés p
|
||||
#### redis.config.php
|
||||
|
||||
??? note "redis.config.php"
|
||||
```
|
||||
```php
|
||||
<?php
|
||||
if (getenv('REDIS_HOST')) {
|
||||
$CONFIG = array (
|
||||
@ -666,7 +668,7 @@ Nous avons besoin de créer les fichiers suivants pour qu'ils soient utilisés p
|
||||
Nous allons compiler une image d'etherpad en suivant les instructions de **Dockerfile**:
|
||||
|
||||
??? info "Dockerfile"
|
||||
```
|
||||
```Dockerfile
|
||||
# Etherpad Lite Dockerfile
|
||||
#
|
||||
# https://github.com/ether/etherpad-lite
|
||||
@ -725,7 +727,7 @@ Nous allons compiler une image d'etherpad en suivant les instructions de **Docke
|
||||
|
||||
### Copie du projet etherpad sur github
|
||||
|
||||
```
|
||||
```bash
|
||||
git clone https://github.com/ether/etherpad-lite.git
|
||||
```
|
||||
|
||||
@ -734,7 +736,7 @@ git clone https://github.com/ether/etherpad-lite.git
|
||||
Ce fichier de configuration va déployer une image docker de nextcloud avec collabora et etherpad, avec la base de données mariadb, redis et coturn.
|
||||
|
||||
??? info "docker-compose.yml"
|
||||
```
|
||||
```yaml
|
||||
version: '3.7'
|
||||
|
||||
services:
|
||||
@ -765,7 +767,7 @@ Ce fichier de configuration va déployer une image docker de nextcloud avec coll
|
||||
- ncdata-data:/data
|
||||
- ncdata-config:/var/www/html/config
|
||||
- ncdata-apps:/var/www/html/custom_apps
|
||||
# - ./Internal.php:/var/www/html/lib/private/Session/Internal.php
|
||||
# - ./Internal.php:/var/www/html/lib/private/Session/Internal.php
|
||||
networks:
|
||||
- default
|
||||
- back
|
||||
@ -877,20 +879,21 @@ Ce fichier de configuration va déployer une image docker de nextcloud avec coll
|
||||
```
|
||||
|
||||
Il ne reste plus qu'à démarrer les conteneurs:
|
||||
```
|
||||
```bash
|
||||
docker-compose up --build -d
|
||||
```
|
||||
|
||||
## Installation de SSL pour Nginx avec Let's Encrypt
|
||||
|
||||
Let's encrypt est un service qui permet de générer gratuitement un certificat SSL pour le domaine de notre choix.
|
||||
```
|
||||
```bash
|
||||
sudo apt install python3-acme python3-certbot python3-mock python3-openssl python3-pkg-resources python3-pyparsing python3-zope.interface
|
||||
sudo apt install python3-certbot-nginx
|
||||
sudo certbot certonly -d nextcloud.mondomaine.fr
|
||||
sudo certbot certonly -d collabora.mondomaine.fr
|
||||
sudo certbot certonly -d pad.mondomaine.fr
|
||||
```
|
||||
|
||||
**Les certificats sont alors crés dans `/etc/letsencrypt/nextcloud.mondomaine.fr`!**
|
||||
|
||||
## Configuration du **Server Bloc Nginx ** pour nextcloud.mondomaine.fr
|
||||
@ -900,7 +903,7 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
??? info "nextcloud.mondomaine.fr.conf"
|
||||
```
|
||||
upstream nextcloud{
|
||||
server 127.0.0.1:8889;
|
||||
server 127.0.0.1:8889;
|
||||
}
|
||||
|
||||
server {
|
||||
@ -909,56 +912,54 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
} # managed by Certbot
|
||||
|
||||
|
||||
listen 80;
|
||||
server_name nextcloud.mondomaine.fr;
|
||||
location /.well-known {
|
||||
listen 80;
|
||||
server_name nextcloud.mondomaine.fr;
|
||||
location /.well-known {
|
||||
alias /var/www/nextcloud.mondomaine.fr/.well-known;
|
||||
}
|
||||
location / {
|
||||
}
|
||||
location / {
|
||||
rewrite ^/(.*)$ https://$host/$1 permanent;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name nextcloud.mondomaine.fr;
|
||||
proxy_read_timeout 720s;
|
||||
proxy_connect_timeout 720s;
|
||||
proxy_send_timeout 720s;
|
||||
listen 443 ssl;
|
||||
server_name nextcloud.mondomaine.fr;
|
||||
proxy_read_timeout 720s;
|
||||
proxy_connect_timeout 720s;
|
||||
proxy_send_timeout 720s;
|
||||
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
|
||||
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
|
||||
|
||||
# Upload limit and security
|
||||
client_max_body_size 10000m;
|
||||
server_tokens off;
|
||||
proxy_set_header Host $host;
|
||||
|
||||
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
|
||||
|
||||
# Upload limit and security
|
||||
client_max_body_size 10000m;
|
||||
server_tokens off;
|
||||
|
||||
# SSL parameters
|
||||
ssl on;
|
||||
# SSL parameters
|
||||
ssl on;
|
||||
ssl_certificate /etc/letsencrypt/live/nextcloud.mondomaine.fr/fullchain.pem; # managed by Certbot
|
||||
ssl_certificate_key /etc/letsencrypt/live/nextcloud.mondomaine.fr/privkey.pem; # managed by Certbot
|
||||
ssl_session_timeout 30m;
|
||||
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||
ssl_session_timeout 30m;
|
||||
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||
# ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
|
||||
# ssl_prefer_server_ciphers on;
|
||||
|
||||
# log
|
||||
access_log /var/log/nginx/nextcloud.access.log;
|
||||
error_log /var/log/nginx/nextcloud.error.log;
|
||||
# log
|
||||
access_log /var/log/nginx/nextcloud.access.log;
|
||||
error_log /var/log/nginx/nextcloud.error.log;
|
||||
|
||||
# Redirect requests to nextcloud backend server
|
||||
location / {
|
||||
proxy_redirect off;
|
||||
proxy_pass http://nextcloud;
|
||||
}
|
||||
# Redirect requests to nextcloud backend server
|
||||
location / {
|
||||
proxy_redirect off;
|
||||
proxy_pass http://nextcloud;
|
||||
}
|
||||
rewrite ^/.well-known/webfinger /public.php?service=webfinger last;
|
||||
location /.well-known/carddav {
|
||||
return 301 $scheme://$host/remote.php/dav;
|
||||
@ -973,17 +974,15 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
# location ^/(.*\.php(/.*)?$ {
|
||||
# proxy_pass fcgi://127.0.0.1:6379/var/www/html/$1;
|
||||
# }
|
||||
# common gzip
|
||||
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
|
||||
gzip on;
|
||||
|
||||
# common gzip
|
||||
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
|
||||
gzip on;
|
||||
}
|
||||
|
||||
|
||||
```
|
||||
|
||||
Pour activer ce fichier de configuration, on créé un lien symbolique vers le dossier sites-enabled:
|
||||
|
||||
```
|
||||
```bash
|
||||
sudo ln -s /etc/nginx/sites-available/wordpress.mondomaine.fr.conf /etc/nginx/sites-enabled/
|
||||
```
|
||||
|
||||
@ -1015,10 +1014,8 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
proxy_set_header X-Forwarded-Host $server_name;
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
server {
|
||||
if ($host = pad.mondomaine.fr) {
|
||||
return 301 https://$host$request_uri;
|
||||
@ -1035,7 +1032,8 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
return 404; # managed by Certbot
|
||||
}
|
||||
|
||||
```
|
||||
```
|
||||
|
||||
Pour activer ce fichier de configuration, on créé un lien symbolique vers le dossier sites-enabled:
|
||||
|
||||
```
|
||||
@ -1108,14 +1106,14 @@ On peut maintenant créer le fichier de configuration nginx dans /etc/nginx/sit
|
||||
```
|
||||
Pour activer ce fichier de configuration, on créé un lien symbolique vers le dossier sites-enabled:
|
||||
|
||||
```
|
||||
```bash
|
||||
sudo ln -s /etc/nginx/sites-available/collabora.mondomaine.fr.conf /etc/nginx/sites-enabled/
|
||||
```
|
||||
|
||||
|
||||
On recharge la configuration de Nginx:
|
||||
|
||||
```
|
||||
```bash
|
||||
sudo systemctl reload nginx.service
|
||||
```
|
||||
|
||||
@ -1133,3 +1131,56 @@ Il est nécessaire de récupérer la API KEY générée par etherpad:
|
||||
cat APIKEY.txt
|
||||
|
||||
On la saisit ensuite dans Nextcloud: `Settings > Administration > Additional settings`
|
||||
|
||||
## Mise à jour de l'image Docker Nextcloud
|
||||
|
||||
#### Vérifier la version en production
|
||||
|
||||
> Avant chaque update checker dans les paramètres de base si des indices de table bdd manques ou autre.
|
||||
|
||||
> L'update s'éffectue par palier de versions (20 vers 21 puis 21 vers 22, etc...)
|
||||
|
||||
#### étapes
|
||||
|
||||
- stopper la stack:
|
||||
|
||||
```bash
|
||||
docker-compose down
|
||||
```
|
||||
|
||||
- editer le tag de l'image Nextcloud dans le docker-compose.yaml:
|
||||
|
||||
```bash
|
||||
nano docker-compose.yml
|
||||
```
|
||||
|
||||
- Modifier la version d'image vers la version immédiatement supérieure dans le docker-compose.yml
|
||||
> Exemple: 20 -> 21
|
||||
|
||||
- relançer la stack:
|
||||
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
> Finir l'update via l'interface web
|
||||
|
||||
Une fois la mise à jour des applications éffectuée, se connecter et vérifier avec un compte administrateur dans Paramètres -> Vue d'ensemble si certaines tables de la base de donnée ont besoin d'être modifié via une commande explicitement décrite:
|
||||
|
||||
Exemple:
|
||||
|
||||
```bash
|
||||
docker exec --user www-data -it nextcloud /var/www/html/occ db:add-missing-indices
|
||||
```
|
||||
|
||||
##### Commande générique pour ajouter des colonnes manquantes à certaines tables de la BDD
|
||||
|
||||
```bash
|
||||
docker exec --user www-data -it <NOM_DU_CONTAINER> /var/www/html/occ <COMMANDE-DB>
|
||||
```
|
||||
|
||||
??? "Crontab (pour nettoyer Nextcloud régulierement)"
|
||||
```bash
|
||||
crontab -e
|
||||
*/5 * * * * docker exec -u www-data <NOM_DU_CONTAINER> php -f cron.php
|
||||
```
|
||||
|
||||
@ -172,5 +172,7 @@ nav:
|
||||
- "Clôture d'exercice": admin/process-odoo/odoo-cutoff.md
|
||||
- "Recrutement": admin/process-odoo/odoo-recrutement.md
|
||||
- "Immobilisations": admin/process-odoo/odoo-immo.md
|
||||
- Windows:
|
||||
- "Installation": admin/windows/index.md
|
||||
|
||||
- "Test": raw_test.md
|
||||
# - "Test": raw_test.md
|
||||
|
||||
5
pyvenv.cfg
Normal file
5
pyvenv.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
home = /usr/bin
|
||||
include-system-site-packages = false
|
||||
version = 3.11.2
|
||||
executable = /usr/bin/python3.11
|
||||
command = /usr/bin/python3 -m venv /home/greg/workspace/doc
|
||||
Loading…
x
Reference in New Issue
Block a user