diff --git a/group_vars/reverseproxy.yml b/group_vars/reverseproxy.yml
index 5387c9ba9c042912cc61b51238246a85c5548057..2eef7bea85ccb32b6d8e6606fa03e018198700ec 100644
--- a/group_vars/reverseproxy.yml
+++ b/group_vars/reverseproxy.yml
@@ -19,19 +19,16 @@ nginx:
 
   reverseproxy_sites:
     # Services web Crans
-    #    - {from: lutim.crans.org, to: 10.231.136.69}
-    #    - {from: ftps.crans.org, to: 10.231.136.98}
     #    - {from: re2o.crans.org, to: 10.231.136.9}
     #    - {from: intranet.crans.org, to: 10.231.136.9}
     #    - {from: grafana.crans.org, to: "10.231.136.102:3000"}
+    - {from: ftps.crans.org, to: 172.16.10.30}
     - {from: webmail.crans.org, to: 172.16.10.108}
     - {from: webirc.crans.org, to: "172.16.10.31:9000"}
     - {from: horde.crans.org, to: 172.16.10.108}
     - {from: framadate.crans.org, to: 172.16.10.109}
     - {from: stream.crans.org, to: 172.16.10.118}
     - {from: cas.crans.org, to: 172.16.10.120}
-    - {from: auth.crans.org, to: 172.16.10.120}
-    - {from: login.crans.org, to: 172.16.10.120}
     - {from: phabricator.crans.org, to: 172.16.10.116}
     - {from: trackerusercontent.crans.org, to: 172.16.10.116}
     - {from: wiki.crans.org, to: 172.16.10.161}
diff --git a/hosts b/hosts
index a87d64d941832666d8b2f336040a0c12ec8d1f67..ae16dbc0a3391f261358828ab8a9bd9e63608f29 100644
--- a/hosts
+++ b/hosts
@@ -126,7 +126,7 @@ virtu
 #belenios.adm.crans.org
 bigbluebutton.adm.crans.org
 #boeing.adm.crans.org
-#casouley.adm.crans.org
+cas.adm.crans.org
 codichotomie.adm.crans.org
 #ethercalc-srv.adm.crans.org
 fluxx.adm.crans.org
diff --git a/plays/cas.yml b/plays/cas.yml
index 9fe922239ecbe709d4b9ad91adaaa953f107783c..f9006c6cf4186c14f1da7080eceda2b6892cf5c1 100755
--- a/plays/cas.yml
+++ b/plays/cas.yml
@@ -2,8 +2,9 @@
 ---
 # Django CAS server
 
-- hosts: casouley.adm.crans.org
+- hosts: cas.adm.crans.org
   vars:
     cas_secret_key: "{{ vault_cas_secret_key }}"
     cas_ldap_password: "{{ vault_cas_ldap_password }}"
+    cas_database_password: "{{ vault_cas_database_password }}"
   roles: ["django-cas"]
diff --git a/roles/django-cas/tasks/main.yml b/roles/django-cas/tasks/main.yml
index 6472c51592559c133f0e63190258335c8e3f952c..1d3b919ade3e0b821b30f3b26161c16d8a56175c 100644
--- a/roles/django-cas/tasks/main.yml
+++ b/roles/django-cas/tasks/main.yml
@@ -9,19 +9,11 @@
       - python3-django
       - python3-django-cas-server
       - python3-psycopg2
+      - python3-ldap3
   register: apt_result
   retries: 3
   until: apt_result is succeeded
 
-- name: Upgrade to Bullseye Django CAS
-  apt:
-    deb: http://mirror.adm.crans.org/debian/pool/main/d/django-cas-server/python3-django-cas-server_1.1.0-2_all.deb
-  register: apt_result
-  retries: 3
-  until: apt_result is succeeded
-  when:
-    - ansible_lsb.codename == 'buster'
-
 - name: Clone Django CAS project repository
   git:
     repo: http://gitlab.adm.crans.org/nounous/django-cas.git
@@ -34,6 +26,7 @@
     src: cas/settings_local.py.j2
     dest: /var/local/django-cas/cas/settings_local.py
     mode: 0600
+    owner: www-data
   notify: Restart uwsgi
 
 - name: Configure NGINX site
diff --git a/roles/django-cas/templates/cas/settings_local.py.j2 b/roles/django-cas/templates/cas/settings_local.py.j2
index aaaebe11076ed23d0a186999007ec5b7b1afbe25..5ae99cf1907ee9c966dd6e89f3d97046a5b2a044 100644
--- a/roles/django-cas/templates/cas/settings_local.py.j2
+++ b/roles/django-cas/templates/cas/settings_local.py.j2
@@ -7,3 +7,14 @@ CAS_LDAP_SERVER = "172.16.10.90"
 CAS_LDAP_USER = "cn=cas,ou=service-users,dc=crans,dc=org"
 CAS_LDAP_PASSWORD = "{{ cas_ldap_password }}"
 CAS_LDAP_BASE_DN = "cn=Utilisateurs,dc=crans,dc=org"
+
+# Database
+DATABASES = {
+    'default': {
+        'ENGINE': 'django.db.backends.postgresql_psycopg2',
+        'NAME': 'cas',
+        'HOST': 'pgsql.adm.crans.org',
+        'USER': 'cas',
+        'PASSWORD': '{{ cas_database_password }}',
+    }
+}