Compare commits

...

73 Commits

Author SHA1 Message Date
35c46449fa fix: fixed multiple issues in the values.yaml of peertube package 2023-05-10 16:47:13 +02:00
575a2fa87a fix: added s-adm to resolv.conf for s-peertube 2023-05-10 11:26:27 +02:00
Elam Monnot
30b74c50e2 fix: edites dns entries and peertube role 2023-05-10 11:02:40 +02:00
597ff383f7 feat: tried to add peertube domain entry in CNAME 2023-05-10 09:08:03 +02:00
c482540de6 fix: removed peertube from dns rev file 2023-05-10 08:51:57 +02:00
ce37973f9d feat: added s-infra to peertube role 2023-05-10 08:45:11 +02:00
andgel sassignol
a2c1636a0f correction bug Arnoux 2023-04-30 20:27:14 +02:00
Anthony Arnoux
d107c26449 délais dhcp r-int dhcp 2023-04-28 09:39:52 +02:00
Elam Monnot
d0efb480c8 feat: specified k3s install on enp0s8 2023-04-28 09:00:47 +02:00
Elam Monnot
be47dbabd2 fix: fixed peertube ingress and dns record 2023-04-26 11:09:42 +02:00
24d8892b4c Mise à jour de 'roles/fog/tasks/main.yml' 2023-04-23 17:47:58 +02:00
Elam Monnot
2c828574ef fix: dhcp start correctly on r-int 2023-04-07 09:50:59 +02:00
Elam Monnot
a5f0d258a5 feat: peertube work 2023-04-07 08:49:45 +02:00
Elam Monnot
52b9f3af87 feat: changed ingress for peertube 2023-04-06 11:39:09 +02:00
8dc1f9a891 Ajout creation utilisateur nextcloud Windows 2023-04-06 10:58:52 +02:00
Anthony Arnoux
0d3860211b readme wireguard-l était bancal 2023-04-06 10:48:27 +02:00
Anthony Arnoux
7a2311ae25 readme wireguard-l 2023-04-06 10:43:54 +02:00
Anthony Arnoux
ebcd50bf69 elam qui fait nimporte quoi encore une fois ! 2023-04-06 09:19:45 +02:00
Elam Monnot
30eeabb58b feat: added nginx ingress 2023-04-06 09:15:43 +02:00
Anthony Arnoux
542978fd75 correctif filtrage r-vp2 2023-04-06 08:42:14 +02:00
b7d8e6e9d4 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-04-05 17:22:11 +02:00
5526eab214 Ajout intégration AD Nextcloud 2023-04-05 17:20:26 +02:00
Elam Monnot
ea4ecb2fae feat: changed the way the playbook behave 2023-04-05 17:17:15 +02:00
Elam Monnot
58f4556a53 fix: tried to make peertube role work 2023-04-05 16:54:11 +02:00
Elam Monnot
86e7124f24 fix: edited values.yaml so postfix will work 2023-04-05 16:39:02 +02:00
Elam Monnot
c99642eae3 fix: made cluster finally reachable 2023-04-05 16:35:35 +02:00
Elam Monnot
5b759a24c9 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-04-05 10:57:07 +02:00
Elam Monnot
a64004d713 feat: added dns records for peertube 2023-04-05 10:56:43 +02:00
root
dd6d34986b fw filtrage int ok 2023-04-05 10:49:31 +02:00
root
cf6f6096d6 fw filtrage interne ok 2023-04-05 10:44:58 +02:00
root
99ed9d3b27 r-vp2 delais dhcp 2 seconde lancement 2023-04-05 10:25:44 +02:00
Elam Monnot
3e98f7149f fix: changed services names in values.yaml 2023-04-04 10:43:31 +02:00
root
d29c428c46 ajout rvp2-fw 2023-04-04 10:32:42 +02:00
Johan Largy
c446f35aed changement 2023-04-04 10:25:52 +02:00
Elam Monnot
41bd6ac61e feat: changed the way peertube role is handled 2023-04-04 10:24:41 +02:00
Elam Monnot
7ce68f6293 fix: misleading docs by redhat ;p 2023-04-04 09:38:16 +02:00
Elam Monnot
bac2f067a9 fix: sychronized roles for peertube 2023-04-04 09:27:12 +02:00
Elam Monnot
d6d4991c16 fix: edited postfix configuration 2023-04-04 09:20:33 +02:00
Elam Monnot
2f7544c3a1 fix: changed order of task in main.yaml 2023-04-04 09:01:02 +02:00
Elam Monnot
c83ba7c977 fix: changed the way peertube is installed for better comprehension 2023-04-04 08:56:47 +02:00
root
1532c8bdd0 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-04-04 08:42:51 +02:00
Elam Monnot
08c73d0416 fix: cluster reacheable during install process 2023-04-04 08:41:40 +02:00
root
083b112d03 push ferm.conf 2023-04-04 08:41:20 +02:00
Elam Monnot
252618618b fix: mispelling in main.yaml for peertube 2023-04-04 08:33:55 +02:00
Elam Monnot
34f3adb117 feat: peertube role changes resolv.conf 2023-04-04 08:24:52 +02:00
Elam Monnot
3565d85543 fix: fixed l3s cluster being unreacheable 2023-04-04 08:13:55 +02:00
Elam Monnot
de757a6b55 fix: changed default playbook for peertube 2023-04-03 11:53:43 +02:00
Elam Monnot
e38f8c6da5 fix: mispelling in peertube mail.yaml 2023-04-03 11:45:47 +02:00
Elam Monnot
40eadcc37a fix: needed helm repos to use peertube 2023-04-03 11:24:36 +02:00
Johan Largy
68c05b0794 correction port 2023-04-03 11:22:58 +02:00
Elam Monnot
b36505bf78 fix: needed to add repos with helm 2023-04-03 11:08:53 +02:00
Johan Largy
2546430f94 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-04-03 11:05:13 +02:00
Johan Largy
0624f3da72 modification 2023-04-03 11:04:13 +02:00
Elam Monnot
40c8aeccd9 fix: changed paths in peertube role 2023-04-03 11:00:19 +02:00
Elam Monnot
5c21400e29 fix: wrong cp path in role 2023-04-03 10:47:41 +02:00
Elam Monnot
33a9c5e8f6 fix: try to solve an issue 2023-03-30 11:21:59 +02:00
Elam Monnot
6f25e4caa4 fix: wrong shell command 2023-03-30 11:14:41 +02:00
Elam Monnot
289877ce89 feat: add peertube repo part2 2023-03-30 11:09:48 +02:00
Elam Monnot
08afef422c feat: add peertube repo part1 2023-03-30 10:47:17 +02:00
Elam Monnot
47d6805612 fix: set default route for k3s 2023-03-30 09:53:03 +02:00
Elam Monnot
57780388e7 fix: fixed k3s not starting at boot 2023-03-30 09:38:27 +02:00
Johan Largy
8c3fc380fa ajout regle iptables 2023-03-30 09:22:59 +02:00
Elam Monnot
b5abdda49d fix: swapped ansible modules in the peertube role 2023-03-30 09:06:55 +02:00
Elam Monnot
2b5fc38edb fix: added peertube to mkvm 2023-03-30 08:41:17 +02:00
Elam Monnot
dd8bb815cc feat: added peertube with mkvm 2023-03-30 08:36:20 +02:00
Elam Monnot
a35048dc9f feat: added peertube role 2023-03-30 08:21:21 +02:00
Elam Monnot
fe0629d1c3 fix: needed resolv.conf from last commit 2023-03-29 16:41:18 +02:00
Elam Monnot
1371b6b970 fix: nfs share working now 2023-03-29 16:34:50 +02:00
Anthony Arnoux
2bffbbedc0 nagios parents 2023-03-29 14:57:11 +02:00
root
272ef9ac07 modification 2023-02-07 17:02:52 +01:00
Johan Largy
81478df279 modif 2023-02-03 09:51:32 +01:00
Johan Largy
75126890b3 incrémentation des modif 2023-02-03 09:37:13 +01:00
root
851543db0a ajout ferm vpn 2023-02-03 09:21:56 +01:00
58 changed files with 452 additions and 188 deletions

View File

@ -53,7 +53,7 @@ On utilsera le script (bash) **mkvm** ou (PowerShell) **mkvm.ps1** pour créeer
```shell ```shell
gsb2023> gsb2023>
cd pre cd scripts
$ mkvm -r s-adm $ mkvm -r s-adm
``` ```

View File

@ -7,7 +7,7 @@ Ce document décrit les divers élements du projet GSB du BTS SIO utilisé pour
Le projet GSB décrit les diférents playbooks permttant d'installer les Le projet GSB décrit les diférents playbooks permttant d'installer les
machines du projet GSB machines du projet GSB
Les répertoires : Les répertoires :
- roles : les roles - roles : les roles
- goss : les outils de test - goss : les outils de test

13
r-vp1-fw.yml Normal file
View File

@ -0,0 +1,13 @@
---
- hosts: localhost
connection: local
vars:
- ip1: 192.168.0.51
- remip: 192.168.0.52
- mynet: 192.168.1.0
- remnet: 172.16.128.0
roles:
- fw-ferm

View File

@ -12,10 +12,8 @@
- base - base
- goss - goss
# - snmp-agent # - snmp-agent
# - firewall-vpn-r
- post - post
- wireguard-r - wireguard-r
- fw-ferm
- ssh-cli - ssh-cli
- syslog-cli - syslog-cli

12
r-vp2-fw.yml Normal file
View File

@ -0,0 +1,12 @@
---
- hosts: localhost
connection: local
vars:
- ip1: 192.168.0.52
- remip: 192.168.0.51
- mynet: 172.16.128.0
- remnet: 192.168.1.0
roles:
- fw-ferm

View File

@ -15,10 +15,7 @@
- dns-agence - dns-agence
- ssh-root-access - ssh-root-access
# - snmp-agent # - snmp-agent
# - firewall-vpn-l
- wireguard-l - wireguard-l
# - x509-l - post
- fw-ferm
- ssh-cli - ssh-cli
- syslog-cli - syslog-cli
- post

View File

@ -28,7 +28,7 @@
192.168.99.103 s-lb-web3.gsb.adm 192.168.99.103 s-lb-web3.gsb.adm
192.168.99.112 r-vp1.gsb.adm 192.168.99.112 r-vp1.gsb.adm
192.168.99.102 r-vp2.gsb.adm 192.168.99.102 r-vp2.gsb.adm
192.168.99.120 s-peertube.gsb.adm
192.168.99.8 syslog.gsb.adm 192.168.99.8 syslog.gsb.adm

View File

@ -27,6 +27,6 @@
192.168.99.103 s-lb-web3.gsb.adm 192.168.99.103 s-lb-web3.gsb.adm
192.168.99.112 r-vp1.gsb.adm 192.168.99.112 r-vp1.gsb.adm
192.168.99.102 r-vp2.gsb.adm 192.168.99.102 r-vp2.gsb.adm
192.168.99.120 s-peertube.gsb.adm
192.168.99.8 syslog.gsb.adm 192.168.99.8 syslog.gsb.adm

View File

@ -1,23 +0,0 @@
// 0.2 - putconf - vendredi 12 avril 2013, 08:54:33 (UTC+0200)
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
172.16.0.1;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};

View File

@ -1,4 +0,0 @@
---
- name: restart bind9
service: name=bind9 state=restarted

View File

@ -1,11 +0,0 @@
---
- name: Installation bind9
apt: name=bind9 state=present update_cache=yes
- name: Copie named.conf.options
copy: src=named.conf.options dest=/etc/bind
notify:
- restart bind9

View File

@ -5,7 +5,7 @@
; ;
$TTL 604800 $TTL 604800
@ IN SOA s-infra.gsb.lan. root.s-infra.gsb.lan. ( @ IN SOA s-infra.gsb.lan. root.s-infra.gsb.lan. (
2023012500 ; Serial 2023051000 ; Serial
7200 ; Refresh 7200 ; Refresh
86400 ; Retry 86400 ; Retry
8419200 ; Expire 8419200 ; Expire
@ -35,4 +35,6 @@ s-web1 IN A 192.168.101.1
s-web2 IN A 192.168.101.2 s-web2 IN A 192.168.101.2
s-lb.gsb.lan IN A 192.168.100.10 s-lb.gsb.lan IN A 192.168.100.10
ns IN CNAME s-infra.gsb.lan. ns IN CNAME s-infra.gsb.lan.
wpad IN CNAME s-infra.gsb.lan. wpad IN CNAME s-infra.gsb.lan.
s-peertube IN A 192.168.100.20
peertube IN CNAME s-peertube

View File

@ -5,7 +5,7 @@
; ;
$TTL 604800 $TTL 604800
@ IN SOA s-infra.gsb.lan. root.s-infra.gsb.lan. ( @ IN SOA s-infra.gsb.lan. root.s-infra.gsb.lan. (
2023012500 ; Serial 2023040501 ; Serial
7200 ; Refresh 7200 ; Refresh
86400 ; Retry 86400 ; Retry
8419200 ; Expire 8419200 ; Expire
@ -27,5 +27,4 @@ $TTL 604800
100.10 IN PTR s-lb.gsb.lan 100.10 IN PTR s-lb.gsb.lan
11.0 IN PTR s-elk.gsb.lan. 11.0 IN PTR s-elk.gsb.lan.
17.0 IN PTR s-gestsup.lan 17.0 IN PTR s-gestsup.lan
254.0 IN PTR r-int.gsb.lan. 254.0 IN PTR r-int.gsb.lan.

View File

@ -22,5 +22,5 @@
command: "cp /root/tools/ansible/roles/fog/files/fogsettings /opt/fog/" command: "cp /root/tools/ansible/roles/fog/files/fogsettings /opt/fog/"
- name: fichier fogsettings en .fogsettings - name: fichier fogsettings en .fogsettings
command: "mv /opt/fog/fogsettings /opt/fog/.fogsettings" command: "mv /opt/fog/fogsettings /opt/fog/.fogsettings"

View File

@ -4,10 +4,12 @@
@def $DEV_PRIVATE = enp0s8; @def $DEV_PRIVATE = enp0s8;
@def $DEV_WORLD = enp0s9; @def $DEV_WORLD = enp0s9;
@def $DEV_WORLD = enp0s9;
@def $DEV_VPN= wg0;
@def $NET_PRIVATE = 172.16.0.0/24; @def $NET_PRIVATE = 172.16.0.0/24;
table filter { table filter {
chain (INPUT OUTPUT){ chain (INPUT OUTPUT){
# allow VPN # allow VPN
proto udp dport 51820 ACCEPT; proto udp dport 51820 ACCEPT;
@ -28,28 +30,29 @@ table filter {
# allow SSH connections from the private network and from some # allow SSH connections from the private network and from some
# well-known internet hosts # well-known internet hosts
saddr ($NET_PRIVATE 81.209.165.42) proto tcp dport ssh ACCEPT; saddr ($NET_PRIVATE) proto tcp dport ssh ACCEPT;
# we provide DNS and SMTP services for the internal net # we provide DNS and SMTP services for the internal net
interface $DEV_PRIVATE saddr $NET_PRIVATE { interface $DEV_PRIVATE saddr $NET_PRIVATE {
proto (udp tcp) dport domain ACCEPT; proto (udp tcp) dport domain ACCEPT;
proto udp dport bootps ACCEPT; proto udp dport bootps ACCEPT;
}
# interface réseau
interface $DEV_WORLD {
} }
# the rest is dropped by the above policy # the rest is dropped by the above policy
}#FIN INPUT }#FIN INPUT
# outgoing connections are not limited # outgoing connections are not limited
chain OUTPUT policy ACCEPT;
chain OUTPUT {
policy ACCEPT;
}#FIN OUTPUT
chain FORWARD { chain FORWARD {
policy ACCEPT; policy ACCEPT;
proto icmp icmp-type echo-request ACCEPT;
# connection tracking # connection tracking
mod state state INVALID DROP; mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT; mod state state (ESTABLISHED RELATED) ACCEPT;
@ -58,6 +61,9 @@ table filter {
# internal nets are allowed # internal nets are allowed
interface $DEV_PRIVATE ACCEPT; interface $DEV_PRIVATE ACCEPT;
interface $DEV_VPN daddr $NET_PRIVATE {
proto tcp dport ssh DROP;
}
# the rest is dropped by the above policy # the rest is dropped by the above policy
} }
} }

View File

@ -4,7 +4,7 @@
@def $DEV_PRIVATE = enp0s9; @def $DEV_PRIVATE = enp0s9;
@def $DEV_WORLD = enp0s8; @def $DEV_WORLD = enp0s8;
@def $DEV_VPN= wg0;
@def $NET_PRIVATE = 172.16.0.0/24; @def $NET_PRIVATE = 172.16.0.0/24;
table filter { table filter {
@ -27,7 +27,7 @@ table filter {
# allow SSH connections from the private network and from some # allow SSH connections from the private network and from some
# well-known internet hosts # well-known internet hosts
saddr ($NET_PRIVATE 81.209.165.42) proto tcp dport ssh ACCEPT; saddr ($NET_PRIVATE) proto tcp dport ssh ACCEPT;
# we provide DNS and SMTP services for the internal net # we provide DNS and SMTP services for the internal net
interface $DEV_PRIVATE saddr $NET_PRIVATE { interface $DEV_PRIVATE saddr $NET_PRIVATE {
@ -35,6 +35,7 @@ table filter {
proto udp dport bootps ACCEPT; proto udp dport bootps ACCEPT;
} }
# interface réseau # interface réseau
interface $DEV_WORLD { interface $DEV_WORLD {
@ -44,11 +45,13 @@ table filter {
}#FIN INPUT }#FIN INPUT
# outgoing connections are not limited # outgoing connections are not limited
chain OUTPUT policy ACCEPT; chain OUTPUT {
policy ACCEPT;
}
chain FORWARD { chain FORWARD {
policy ACCEPT; policy ACCEPT;
proto icmp icmp-type echo-request ACCEPT;
# connection tracking # connection tracking
mod state state INVALID DROP; mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT; mod state state (ESTABLISHED RELATED) ACCEPT;
@ -57,6 +60,9 @@ table filter {
# internal nets are allowed # internal nets are allowed
interface $DEV_PRIVATE ACCEPT; interface $DEV_PRIVATE ACCEPT;
interface $DEV_VPN daddr $NET_PRIVATE {
proto tcp dport ssh DROP;
}
# the rest is dropped by the above policy # the rest is dropped by the above policy
} }
} }

View File

@ -1,47 +0,0 @@
# -*- shell-script -*-
@def $DEV_VPN= wg0;
table filter {
chain INPUT {
policy DROP;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# allow local connections
interface lo ACCEPT;
interface $DEV_VPN{
# respond to ping
proto icmp icmp-type echo-request ACCEPT;
# disallow ssh
saddr proto tcp dport ssh DROP;
}
}#FIN INPUT
# outgoing connections are not limited
chain OUTPUT {
policy ACCEPT;
interface $DEV_VPN{
# allow ssh
daddr proto tcp dport ssh ACCEPT;
# respond to ping
proto icmp icmp-type echo-request ACCEPT;
}
}#FIN OUTPUT
chain FORWARD {
policy ACCEPT;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# connections from the internal net to the internet or to other
# internal nets are allowed
interface $DEV_VPN ACCEPT;
# the rest is dropped by the above policy
}#FIN FO
}

View File

@ -13,16 +13,3 @@
apt: apt:
name: nfs-common name: nfs-common
state: present state: present
- name: montage nfs pour word press
blockinfile:
path: /etc/fstab
block: |
192.168.102.253:/home/wordpress /var/www/html nfs soft,timeo=5,intr,rsize=8192,wsize=8192,wsize=8192 0 0
#- name: monte export wordpress
# ansible.posix.mount:
# path: /var/www/html
# state: mounted
# fstype: nfs
# src: 192.168.102.253:/exports/wordpress

View File

@ -26,6 +26,7 @@ define host {
host_name localhost host_name localhost
alias localhost alias localhost
address 127.0.0.1 address 127.0.0.1
parents r-int
} }

View File

@ -9,5 +9,6 @@ define host{
host_name s-adm host_name s-adm
alias debian-servers alias debian-servers
address 192.168.99.99 address 192.168.99.99
parents r-int
} }

View File

@ -9,5 +9,6 @@ define host{
host_name s-appli host_name s-appli
alias debian-servers alias debian-servers
address 172.16.0.3 address 172.16.0.3
parents r-int
} }

View File

@ -9,5 +9,6 @@ define host{
host_name s-backup host_name s-backup
alias serveur proxy alias serveur proxy
address 172.16.0.4 address 172.16.0.4
parents r-int
} }

View File

@ -9,6 +9,7 @@ define host{
host_name s-fog host_name s-fog
alias serveur proxy alias serveur proxy
address 172.16.0.16 address 172.16.0.16
parents r-int
} }

View File

@ -9,5 +9,6 @@ define host{
host_name s-infra host_name s-infra
alias debian-servers alias debian-servers
address 172.16.0.1 address 172.16.0.1
parents r-int
} }

View File

@ -9,6 +9,7 @@ define host{
host_name s-itil host_name s-itil
alias serveur proxy alias serveur proxy
address 172.16.0.9 address 172.16.0.9
parents r-int
} }

View File

@ -9,5 +9,6 @@ define host{
host_name s-nxc host_name s-nxc
alias debian-servers alias debian-servers
address 172.16.0.7 address 172.16.0.7
parents r-int
} }

View File

@ -9,6 +9,7 @@ define host{
host_name s-proxy host_name s-proxy
alias serveur proxy alias serveur proxy
address 172.16.0.2 address 172.16.0.2
parents r-int
} }

View File

@ -9,6 +9,7 @@ define host{
host_name s-win host_name s-win
alias serveur proxy alias serveur proxy
address 172.16.0.6 address 172.16.0.6
parents r-int
} }

View File

@ -35,3 +35,24 @@ Nextcloud est alors fonctionnel avec le proxy inverse **traefik** assurant la re
ATTENTION : Après avoir relancé la VM, executez le script "nxc-start.sh" afin d'installer les piles applicatives. ATTENTION : Après avoir relancé la VM, executez le script "nxc-start.sh" afin d'installer les piles applicatives.
Une fois le script terminé, le site est disponible ici : https://s-nxc.gsb.lan Une fois le script terminé, le site est disponible ici : https://s-nxc.gsb.lan
## 5. Ajout authentification LDAP
Pour ajouter l'authentification LDAP au Nextcloud, il faut :
* Une fois l'installation de Nextcloud terminé, cliquez sur le profil et Application
* Dans vos applications, descendre et activer "LDAP user and group backend"
* Puis cliquer sur le profil, puis Paramètres d'administration et dans Administration cliquer sur Intégration LDAP/AD
* Une fois sur la page d'intégration LDAP/AD :
* Dans Hôte mettre :
> ldap://s-win.gsb.lan
* Cliquer sur Détecter le port (normalement le port 389 apparait)
* Dans DN Utilisateur mettre :
> CN=nextcloud,CN=Users,DC=GSB,DC=LAN
* Mot de passe :
> Azerty1+
* Et dans Un DN de base par ligne :
> DC=GSB,DC=LAN
* Après la configuration passe OK
* Une fois la configuration finie, cliquer 3 fois sur continuer
* Une fois arrivé sur Groupes, vous pouvez vous déconnecter du compte Admin et vous connecter avec un compte qui est dans l'AD.

View File

View File

@ -0,0 +1,22 @@
---
- name: mise a jour de resolv.conf...
copy:
src: /root/tools/ansible/gsb2023/roles/peertube/files/resolv.conf
dest: /etc/
mode: '0644'
- name: installation de docker...
shell: curl https://releases.rancher.com/install-docker/20.10.sh | sh
- name: attente de l'installation de docker...
wait_for:
timeout: 30
host: localhost
- name: installation de k3s...
shell: curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--node-ip=192.168.100.20 --flannel-iface=enp0s8" sh -s - --docker
- name: attente de l'installation de k3s...
wait_for:
timeout: 25
host: localhost

0
roles/peertube/README.md Normal file
View File

View File

@ -0,0 +1,9 @@
MYHOST=peertube.gsb.lan;
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml;
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.cert -subj /CN="${MYHOST}"/O="${MYHOST}" -addext "subjectAltName = DNS:${MYHOST}";
kubectl create secret tls tls-peertube --key tls.key --cert tls.cert;
helm repo add postgresql https://charts.bitnami.com/bitnami;
helm repo add redis https://charts.bitnami.com/bitnami;
helm repo add mail https://bokysan.github.io/docker-postfix;
helm install --create-namespace -n peertube peertube-gsb /root/tools/peertube/helm/ ;
kubectl config view --raw > ~/.kube/config

View File

@ -0,0 +1,4 @@
domain gsb.lan
search gsb.lan
nameserver 172.16.0.1
nameserver 192.168.99.99

View File

@ -0,0 +1,139 @@
replicaCount: 1
image:
repository: chocobozzz/peertube
pullPolicy: IfNotPresent
tag: "v5.0.1-bullseye"
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: false
annotations: {}
name: ""
podAnnotations: {}
podSecurityContext: {}
securityContext: {}
service:
type: ClusterIP
port: 9000
nginxPort: 9001
## default config for postgresql should work, but feel free to modify it if required.
# must stay consistent with peertube configuration, otherwise peertube will crash
postgresql:
enabled: true
primary:
persistence:
enabled: true
existingClaim: "pvc-postgres"
global:
postgresql:
auth:
postgrePassword: "admin"
username: "user"
password: "user"
database: "peertube"
## the main list of variables tha will be applied in the peertube container
# any error or misconfiguration will make peertube crash.
peertube:
env:
dbUser: user # must be consistent with postgresql configuration
dbPasswd: user # must be consistent with postgresql configuration
dbSsl: false # disabled by default WARNING: ssl connection feature not tested, use at your own risk
dbHostname: peertube-gsb-postgresql # must be consistent with postgresql configuration
webHostname: peertube.gsb.lan # must be changed to your local setup
secret: b2753b0f37444974de0e81f04815e6a889fcf8960bd203a01b624d8fa8a37683
smtpHostname: peertube-gsb-mail # must be consistent with mail configuration
smtpPort: 587 # must be consistent with mail configuration
smtpFrom: noreply@lan.lan # not configured by default, add something meaningfull if you want
smtpTls: false # disabled by default WARNING: tls connection feature not tested, use at your own risk
smtpDisableStartTls: false # unless crashes related to tls/ssl, this should be unchanged
adminEmail: root@localhost.lan # use this if you want peopleto be able to reach you
redisHostname: peertube-gsb-redis-master # must be consistent with redis configuration
redisAuth: peertube # must be consistent with redis configuration
app:
userCanRegister: true # control if people can register by themselves
rootPasswd: rootroot # CHANGE THIS! the default admin username is 'root' this variable define the password
## the next section configure at wich quality videos will be transcoded
transcoding360: true
transcoding480: true
transcoding720: true
transcoding1080: false
transcoding2160: false
## the configuration of the postfix server called 'mail' here
# change these settings if you know what you are doing
mail:
enbled: true
config:
general:
ALLOWED_SENDER_DOMAINS: "yes"
DKIM_AUTOGENERATE: "yes"
opendkim:
RequireSafeKeys: "no"
postfix:
smtp_tls_security_level: "secure" # works by default, any other tls level is untested
persistence:
enabled: false
service:
port: 587
## the configuration of the redis server
redis:
master:
persistence:
enabled: true
existingClaim: "pvc-redis"
replica:
persistence:
enabled: true
existingClaim: "pvc-redis"
auth:
enbled: true
password: "peertube"
## ingress configuration is very specific this part must be configured or else you'll get 503 or 404 errors
ingress:
enabled: true
className: ""
annotations:
kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/proxy-body-size: 6G # this caps the size of imported videos, if set low this might prevent you from uploading videos
# kubernetes.io/tls-acme: "true"
hosts:
- host: peertube.gsb.lan
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: tls-peertube
- hosts:
- peertube.gsb.lan
resources: {}
autoscaling:
enabled: false
minimumReplicas: 3
maximumReplicas: 20
targetCPUUtilizationPercentage: 90
targetMemoryUtilizationPercentage: 75
windowSeconds: 120
minCPUPercentage: 20
minMemoryPercentage: 30
## this section should be configured to match your needs and available ressources
persistence:
enabled: true
reclaimPolicy: Retain
redisVolumeStorage: 1Gi
peertubeVolumeStorage: 5Gi
postgresqlVolumeStorage: 1Gi
accessMode: ReadWriteOnce
nodeSelector: {}
tolerations: []
affinity: {}

View File

@ -0,0 +1,28 @@
---
- name: création du répertoire du dépot peertube...
file:
path: /root/tools/peertube
state: directory
mode: '0755'
- name: clonage du dépot peertube...
git:
repo: https://github.com/Elam-Monnot/Peertube-helm.git
dest: /root/tools/peertube
clone: yes
force: yes
- name: copie de values.yaml...
copy:
src: /root/tools/ansible/gsb2023/roles/peertube/files/values.yaml
dest: /root/tools/peertube/helm/
mode: '0644'
- name: copie du script finish...
copy:
src: /root/tools/ansible/gsb2023/roles/peertube/files/finish
dest: /root
mode: '0644'
- name: installation de helm...
shell: curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

7
roles/post-lb/README.md Normal file
View File

@ -0,0 +1,7 @@
# Rôle Post
Le rôle "post" copie la configuration des interfaces des cartes réseaux nécessaires selon la machine sur laquelle on exécute le rôle. Il place cette configuration dans /etc/network/interfaces.
Ensuite, on copie le fichier "resolv.conf" dans /etc/ lorsque que la machine qui exécute le rôle n'est pas "s-adm", "s-proxy" ou "r-vp2".
Cependant, si la machine qui exécute le rôle est "s-proxy", on copie le fichier "resolv.conf.s-proxy" dans /etc/resolv.conf

View File

@ -0,0 +1,21 @@
### 0.2 - putconf - jeudi 7 janvier 2016, 16:18:49 (UTC+0100)
# The loopback network interface
auto lo
iface lo inet loopback
# carte n-adm
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.99.101/24
# Réseau n-dmz-lb
allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.101.1/24
# réseau n-dmz-db
allow-hotplug enp0s9
iface enp0s9 inet static
address 192.168.102.1/24
post-up mount -o rw 192.168.102.253:/home/wordpress /var/www/html

View File

@ -0,0 +1,21 @@
### 0.2 - putconf - jeudi 7 janvier 2016, 16:18:49 (UTC+0100)
# The loopback network interface
auto lo
iface lo inet loopback
# carte n-adm
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.99.101/24
# Réseau n-dmz-lb
allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.101.1/24
# réseau n-dmz-db
allow-hotplug enp0s9
iface enp0s9 inet static
address 192.168.102.1/24
post-up mount -o rw 192.168.102.253:/home/wordpress /var/www/html

View File

@ -0,0 +1,4 @@
search gsb.lan
domain gsb.lan
nameserver 172.16.0.1

View File

@ -0,0 +1,24 @@
---
- name: Copie interfaces
copy: src=interfaces.{{ ansible_hostname }} dest=/etc/network/interfaces
- name: Copie resolv.conf
copy: src=resolv.conf dest=/etc/
when: ansible_hostname != "s-adm" and ansible_hostname != "s-proxy"
- name: pas de chgt resolv.conf pour r-vp2
meta: end_play
when: ansible_hostname == "r-vp2"
- name: Copie resolv.conf pour s-proxy
copy: src=resolv.conf.s-proxy dest=/etc/resolv.conf
when: ansible_hostname == "s-proxy"
#- name: Confirm
# prompt: "<Entree> pour redemarrer ..."
#- name: Reboot
# shell: reboot

View File

@ -34,4 +34,4 @@ iface enp0s10 inet static
allow-hotplug enp0s16 allow-hotplug enp0s16
iface enp0s16 inet static iface enp0s16 inet static
address 172.16.0.254/24 address 172.16.0.254/24
post-up sleep 10 && systemctl restart isc-dhcp-server

View File

@ -1,26 +0,0 @@
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
#auto lo
#iface lo inet loopback
#cote N-adm
allow-hotplug enp0s3
iface enp0s3 inet dhcp
# reseau entre vpn
allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.0.51
netmask 255.255.255.0
# reseau interne n-linkv
allow-hotplug enp0s9
iface enp0s9 inet static
address 192.168.1.2
netmask 255.255.255.0
up route add -net 172.16.128.0/24 gw 192.168.1.2
up route add default gw 192.168.1.1
# post-up /bin/bash /root/iptables-vpn
post-up /etc/init.d/ipsec restart

View File

@ -1,25 +0,0 @@
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
#auto lo
#iface lo inet loopback
# cote N-adm
allow-hotplug enp0s3
iface enp0s3 inet dhcp
# cote Agence
allow-hotplug enp0s8
iface enp0s8 inet static
address 172.16.128.254
netmask 255.255.255.0
# cote VPN
allow-hotplug enp0s9
iface enp0s9 inet static
address 192.168.0.52
netmask 255.255.255.0
up route add -net 192.168.1.0/24 gw 172.16.128.254
# post-up /bin/bash /root/iptables-vpn
post-up /etc/init.d/ipsec restart

View File

@ -0,0 +1,17 @@
### 0.1 - putconf - jeudi 30 mars 2023, 8:11:30 (UTC+0100)
# The loopback network interface
auto lo
iface lo inet loopback
# carte n-adm
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.99.120/24
gateway 192.168.99.99
# Réseau n-dmz
allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.100.20/24
post-up systemctl start k3s

View File

@ -21,4 +21,3 @@
#- name: Reboot #- name: Reboot
# shell: reboot # shell: reboot

View File

@ -17,3 +17,13 @@
#- name: extraction fog.tar.gz #- name: extraction fog.tar.gz
#unarchive: src=/tmp/fog.tar.gz dest=/var/www/ copy=no #unarchive: src=/tmp/fog.tar.gz dest=/var/www/ copy=no
#- name: delais 2 secondes isc-dhcp-service
# become: yes
# lineinfile:
# path: /etc/init.d/isc-dhcp-server
# insertafter: '^\s+start\)$'
# line: " sleep 2"
# firstmatch: yes
# state: present
# backup: yes

View File

@ -1,5 +1,5 @@
#ajout du sleep 5 # ajout du sleep 5
éditer "/etc/init.d/isc-dhcp-server" ~~éditer "/etc/init.d/isc-dhcp-server"~~
aller au "case \"$1\" in" et rajouter "sleep 5" avant le "if" ~~aller au "case \"$1\" in" et rajouter "sleep 5" avant le "if"~~

View File

@ -14,7 +14,15 @@
name: wireguard-tools name: wireguard-tools
state: present state: present
- name: delais 2 secondes isc-dhcp-service
become: yes
lineinfile:
path: /etc/init.d/isc-dhcp-server
insertafter: '^\s+start\)$'
line: " sleep 2"
firstmatch: yes
state: present
backup: yes
#- name: renommage du fichier de configuration #- name: renommage du fichier de configuration
# command: "mv /etc/wireguard/wg0-b.conf /etc/wireguard/wg0.conf" # command: "mv /etc/wireguard/wg0-b.conf /etc/wireguard/wg0.conf"

View File

@ -4,7 +4,7 @@
roles: roles:
- base - base
- post - post-lb
- lb-web - lb-web
- snmp-agent - snmp-agent
- ssh-cli - ssh-cli

View File

@ -4,7 +4,8 @@
roles: roles:
- base - base
- post - post-lb
- lb-web - lb-web
- snmp-agent - snmp-agent
- ssh-cli - ssh-cli

11
s-peertube.yml Normal file
View File

@ -0,0 +1,11 @@
---
- hosts: localhost
connection: local
roles:
- base
- post
- snmp-agent
- ssh-cli
- peertube-k3s
- peertube

18
scripts/addint.s-peertube Executable file
View File

@ -0,0 +1,18 @@
#!/bin/bash
nom=s-peertube
# N-adm (enp0s3)
VBoxManage modifyvm $nom --nic1 intnet
VBoxManage modifyvm $nom --intnet1 "n-adm"
VBoxManage modifyvm $nom --nictype1 82540EM
VBoxManage modifyvm $nom --cableconnected1 on
VBoxManage modifyvm $nom --nicpromisc1 allow-all
# N-dmz (enp0s8)
VBoxManage modifyvm $nom --nic2 intnet
VBoxManage modifyvm $nom --intnet2 "n-dmz"
VBoxManage modifyvm $nom --nictype2 82540EM
VBoxManage modifyvm $nom --cableconnected2 on
VBoxManage modifyvm $nom --nicpromisc2 allow-all

View File

@ -110,6 +110,8 @@ elif [[ "${vm}" == "s-lb-bd" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-db" create_if "${vm}" "n-adm" "n-dmz-db"
elif [[ "${vm}" == "s-nas" ]] ; then elif [[ "${vm}" == "s-nas" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-db" create_if "${vm}" "n-adm" "n-dmz-db"
elif [[ "${vm}" == "s-peertube" ]] ; then
./addint.s-peertube
elif [[ "${vm}" == "r-vp1" ]] ; then elif [[ "${vm}" == "r-vp1" ]] ; then
./addint.r-vp1 ./addint.r-vp1
elif [[ "${vm}" == "r-vp2" ]] ; then elif [[ "${vm}" == "r-vp2" ]] ; then

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
#recuperation du fichier de config #recuperation du fichier de config
wget http://r-vp1.gsb.adm:8800/wg0-b.conf wget http://r-vp1.gsb.adm:8000/wg0-b.conf
#renomage fichier et mv #renomage fichier et mv
mv ./wg0-b.conf /etc/wireguard/wg0.conf mv ./wg0-b.conf /etc/wireguard/wg0.conf
#activation interface wg0 #activation interface wg0

View File

@ -1,3 +1,4 @@
@echo off
net group gg-backup /ADD net group gg-backup /ADD
call mkusr uBackup "u-backup" gg-backup call mkusr uBackup "u-backup" gg-backup
icacls "C:\gsb\partages\public" /Grant:r uBackup:M /T icacls "C:\gsb\partages\public" /Grant:r uBackup:M /T

View File

@ -1,4 +1,5 @@
@echo off
call mkusr aDupont "Albert Dupon" gg-compta call mkusr aDupont "Albert Dupon" gg-compta
call mkusr cSeum "Claire Seum" gg-compta call mkusr cSeum "Claire Seum" gg-compta
call mkusr nPaul "Nicolas Paul" gg-compta call mkusr nPaul "Nicolas Paul" gg-compta
call mkusr atour "Alexandre Tour" gg-compta call mkusr atour "Alexandre Tour" gg-compta

View File

@ -0,0 +1,2 @@
@echo off
call mkusr nextcloud "nextcloud" nextcloud