diff --git a/poetry.lock b/poetry.lock
index c59e83eb77511d6917a7a9579d7daa0b5a5eaeab..4323350ad6af0410d6e193cd4d5421bf471441f3 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -49,7 +49,7 @@ reference = "gitlab"
 
 [[package]]
 name = "aleksis-core"
-version = "2.1.dev0+20211029200519.5fe08a48"
+version = "2.0+20211029195856.5f016bc6"
 description = "AlekSIS (School Information System) — Core"
 category = "main"
 optional = false
@@ -65,7 +65,7 @@ colour = ">=0.1.5,<0.2.0"
 Django = ">=3.2.5,<4.0.0"
 django-allauth = ">=0.45.0,<0.46.0"
 django-any-js = ">=1.1,<2.0"
-django-auth-ldap = {version = ">=3.0,<4.0", optional = true, markers = "extra == \"ldap\""}
+django-auth-ldap = {version = ">=2.2,<3.0", optional = true, markers = "extra == \"ldap\""}
 django-bleach = ">=0.8.0,<0.9.0"
 django-cachalot = ">=2.3.2,<3.0.0"
 django-cache-memoize = ">=0.1.6,<0.2.0"
@@ -123,7 +123,7 @@ Whoosh = ">=2.7.4,<3.0.0"
 
 [package.extras]
 s3 = ["boto3 (>=1.17.33,<2.0.0)", "django-storages (>=1.11.1,<2.0.0)"]
-ldap = ["django-auth-ldap (>=3.0,<4.0)"]
+ldap = ["django-auth-ldap (>=2.2,<3.0)"]
 
 [package.source]
 type = "legacy"
@@ -645,7 +645,7 @@ django = "*"
 
 [[package]]
 name = "django-auth-ldap"
-version = "3.0.0"
+version = "2.4.0"
 description = "Django LDAP authentication backend."
 category = "main"
 optional = false
@@ -2685,7 +2685,7 @@ pycryptodome = "*"
 [metadata]
 lock-version = "1.1"
 python-versions = "^3.9"
-content-hash = "565acd864016e0764cfe6765021e8f3bb6661ba10993ecc62d2b9823b6864945"
+content-hash = "bbd6567a0e07f8cb7e585bb9a43ea23d787366dad72921d7177458866418e44a"
 
 [metadata.files]
 alabaster = [
@@ -2697,8 +2697,8 @@ aleksis-builddeps = [
     {file = "AlekSIS_Builddeps-4-py3-none-any.whl", hash = "sha256:02a93e503f5810e6c93a8bc829bc8cbda735ccbf78b91954d2f6507dfea3d01f"},
 ]
 aleksis-core = [
-    {file = "AlekSIS-Core-2.1.dev0+20211029200519.5fe08a48.tar.gz", hash = "sha256:ae637b217b6018848370ff036a62e106d94270e9963490bbbbb1ef925e75e7b7"},
-    {file = "AlekSIS_Core-2.1.dev0+20211029200519.5fe08a48-py3-none-any.whl", hash = "sha256:038ae370a9464fd6533278c0069163733b446bebe8a38efb2c9ca10a1dec9ee5"},
+    {file = "AlekSIS-Core-2.0+20211029195856.5f016bc6.tar.gz", hash = "sha256:922cee561ccaf24640e0e61b0c6c5d77506f56f953afdf1815dce4eb9665509b"},
+    {file = "AlekSIS_Core-2.0+20211029195856.5f016bc6-py3-none-any.whl", hash = "sha256:2b88be51c11665ac6537aa8c4737681bddfbf0b643feebc0d320077614c208cf"},
 ]
 amqp = [
     {file = "amqp-5.0.6-py3-none-any.whl", hash = "sha256:493a2ac6788ce270a2f6a765b017299f60c1998f5a8617908ee9be082f7300fb"},
@@ -2960,8 +2960,8 @@ django-appconf = [
     {file = "django_appconf-1.0.5-py3-none-any.whl", hash = "sha256:ae9f864ee1958c815a965ed63b3fba4874eec13de10236ba063a788f9a17389d"},
 ]
 django-auth-ldap = [
-    {file = "django-auth-ldap-3.0.0.tar.gz", hash = "sha256:1f2d5c562d9ba9a5e9a64099ae9798e1a63840a11afe4d1c4a9c74121f066eaa"},
-    {file = "django_auth_ldap-3.0.0-py3-none-any.whl", hash = "sha256:19ee19034f344d9efd07ed88d3187e256ec33ae39d6a47222083b89f7d35c5f6"},
+    {file = "django-auth-ldap-2.4.0.tar.gz", hash = "sha256:60fcbfc3141c99c3c49d3ccd7311a3992a231c319d94b6d2c143968f63676676"},
+    {file = "django_auth_ldap-2.4.0-py3-none-any.whl", hash = "sha256:2d869955da8a0c9a4448671bd9826b9f87458f6a9fc20278e84de8a81200a2be"},
 ]
 django-bleach = [
     {file = "django-bleach-0.8.0.tar.gz", hash = "sha256:42a83ad8a3306e081facb7ef405883035ea23a35204aea7c2502391f3911f821"},
diff --git a/pyproject.toml b/pyproject.toml
index bcd6957c632a6e8941e5b028f21c3000ad7ff359..8aa0150f29d145cdf43eaae155845ebed9ed35a6 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -33,7 +33,7 @@ secondary = true
 python = "^3.9"
 django-ldapdb = "^1.4.0"
 tqdm = "^4.44.1"
-aleksis-core = {version = "^2.0rc", extras = ["ldap"]}
+aleksis-core = {version = "^2.0", extras = ["ldap"]}
 python-magic = "^0.4.22"
 
 [tool.poetry.dev-dependencies]