diff --git a/group_vars/all/vault_archweb.yml b/group_vars/all/vault_archweb.yml
index b4e47115cbc8aa0ab34efa58f85b6c56de0a637b..0ef8f69d36e8f14d873817d10dc316a2075c695c 100644
--- a/group_vars/all/vault_archweb.yml
+++ b/group_vars/all/vault_archweb.yml
@@ -1,24 +1,27 @@
 $ANSIBLE_VAULT;1.1;AES256
-63306162336566643630366662653265303939376338636235616239653937363131383434386333
-3734623331386639396165313166646164393166623931360a353338386437346366316132643337
-66643535396164623932656236633232316135623530613862393666333866663030336433336161
-3033306130646265370a316130353338393766623761653035633633623834653439336161616561
-32666462313961323664393735643434336162306363626335373235666334626337346130386561
-32386337316433393731656632646662346130356535396434376363356261663332376637323839
-36666232393564346337616566393336623566643334383835346230333938636135383039633861
-37616265396261313237363837346236616331383662636462336263356366383064333532656361
-34653735316365366637386561663939336363633763316564646263303136346232396639383437
-35663666303562626339343765613563346663326433323162396165653533626239316434356137
-32356430323766393061356234643133623439306437373164363339393866616338616462383338
-30376365326232386161336366353763323632303964336466353834643561366465353562353664
-38383466326533353630663962396662616438303939333434303430623836373164323136333761
-62613466356662316461373033643630333734313135613061346130303761636262633033323639
-66373737353865316665363737633037393163323166363261383466363530363366356566343166
-31396530396662323565393863663336333866313839636266363239636364376130343634613165
-39623039383435353639343664656337323330623231663036376131323934393236623531303437
-35323565623638643930393362613336303533353561643661613739343239653666666462643238
-66303566353465663933396361306135616331643436323565333362353434623530326534346364
-65656466623231323366646537383264303966376139616634646334663332383037636163323032
-33636265626565373761666538623866313566633833663136663466333237326462643431336438
-65316130303535653461643461306261303139386563323530346232366133656165306362613633
-666239353561336532623835653935663734
+34373565336261636435623037626134306239363436343463363062633131333864373165363031
+3037393931396437633135326630333366626537663061350a346136346130343132386434366333
+64356266373637616535656531306161393332653036633136393234336436303562636235383535
+6366303962643064620a653863646433333539336239656531626134323032643832356165396563
+30313261373931343066356132616363653663373339343364313563343332646565363561393562
+37633334613931373964323537633361663230343434386565316432393336363263343164353933
+35636235663466613562306432383333663066356632613039353962356337333737353439386537
+31313439326237366639323230343961393330623633333737353063613963373766363734343064
+32316661646437643663323134663762653636383563396562353533613566656662336566393536
+31636533343561393534663233663030393363663837363965663038343966353830633764386339
+30646163383731376130636462346235616633316161623135303264633332633063633362356638
+33306138633064613463386438386365643063616537616666393266336136636530353662636161
+66646631613031653339356236356233343936626439396539306462376566306230363933663235
+33356362316264383733313437326437636566323263383062343066393435616663306336613465
+62373965616134643830313562386437396437353036323038353439613833316233653962663265
+36663763393636376138663938643761346434396331336637313034323838393361636135316637
+63306630653264366639663031666135343564636564613639333432363431393737376464383263
+31343434383331363937323833376232353335626132353332373835303363646562393039636235
+30313239656135626539386437626630626162646262336638646435633639356461653935653234
+30376266383464623561633139303164376565373761323535616332313630323732396533363730
+38353561373937623961343464633465306566616266633038653231653534323533623562376335
+31623638643336663637356331656363333633663730316635326133376633303933346461373838
+39326537376338313161376537303738376139613631316332663739313266366434323465313335
+61323964396331626365363737373566336565333438303935623534626433363130316133626236
+64656535613435326464633561343065313865313437366365316162323534666430393234383163
+3663353632333065383764313531303631386335646363636363
diff --git a/roles/archweb/templates/local_settings.py.j2 b/roles/archweb/templates/local_settings.py.j2
index ba5077cb8c0b64ff26fa5bed6b2d7d39cd788189..d145d3ddd63cebcd5575d9eb490a84111a888b9a 100644
--- a/roles/archweb/templates/local_settings.py.j2
+++ b/roles/archweb/templates/local_settings.py.j2
@@ -71,4 +71,7 @@ ALLOWED_HOSTS = [{% for host in archweb_allowed_hosts %}'{{ host }}', {% endfor
 
 PGP_SERVER = 'keyserver.ubuntu.com'
 
+TIER0_MIRROR_DOMAIN = 'repos.archlinux.org'
+TIER0_MIRROR_SECRET = '{{ vault_archweb_x_sent_from_secret }}'
+
 # vim: set ts=4 sw=4 et:
diff --git a/roles/dbscripts/templates/nginx.d.conf.j2 b/roles/dbscripts/templates/nginx.d.conf.j2
index 2a960a1626e8a94be70ae676235c655486b50d7f..2f8526830fe6c7001486caec182b7c390444c509 100644
--- a/roles/dbscripts/templates/nginx.d.conf.j2
+++ b/roles/dbscripts/templates/nginx.d.conf.j2
@@ -1,3 +1,5 @@
+proxy_cache_path  /var/lib/nginx/cache levels=1:2 keys_zone=auth_cache:5m inactive=60m;
+
 server {
     listen       80;
     listen       [::]:80;
@@ -22,9 +24,29 @@ server {
     }
 
     location / {
-        auth_basic            "Restricted";
-        auth_basic_user_file  auth/dbscripts.htpasswd;
+        auth_request /devel/mirrorauth/;
 
         autoindex  on;
     }
+
+    location = /devel/mirrorauth/ {
+        internal;
+
+        # Do not pass the request body, only http authorisation header is required
+        proxy_pass_request_body off;
+        proxy_set_header        Content-Length "";
+
+        # Proxy headers
+        proxy_set_header        Host                    "archlinux.org";
+        proxy_set_header        X-Sent-From             "{{ vault_archweb_x_sent_from_secret }}";
+
+        # Cache responses from the auth proxy
+        proxy_cache             auth_cache;
+        proxy_cache_key         "$scheme$proxy_host$request_uri$http_authorization";
+
+        # Authentication to archweb
+        proxy_pass https://archlinux.org;
+	proxy_ssl_verify on;
+	proxy_ssl_trusted_certificate /etc/ssl/certs/ca-certificates.crt;
+    }
 }