Mikä on ja kuinka estämme käyttäjäagentin (bot tai selaimen) pääsyn verkkosivustolla [nginx -vinkkejä]

Ensinnäkin katsotaan laajasti, mikä tämä Internet-selaimen käyttäjäagentti on ja mihin sitä käytetään.

Mikä on User Agent (tai User-Agent)?

Kaikissa Internet-selaimissa (Internet Explorer, Safari, Opera, Firefox, Chrome jne.) on agenttiohjelmisto, joka on vuorovaikutuksessa vierailemasi verkkosivuston kanssa isäntäpalvelintasolla. Tämä ohjelmisto muodostaa Internet-yhteyden verkkosivustoon, ymmärtää, tarkistaa ja näyttää avatun sivun sisällön. Lyhyesti sanottuna se varmistaa vuorovaikutuksen käyttäjän ja isäntäpalvelimen välillä, joka palvelee käyttäjälle pyydettyjä verkkosivuja käyttämällä tiettyä URL-osoitetta HTTP / HTTPS-protokollassa.
User Agent sisältää palvelimelle toimitetussa otsikossa tietoja, jotka liittyvät käyttäjän käyttämiin ohjelmistoihin, käyttöjärjestelmään, selainohjelmistopaketin versioon. Esimerkiksi Google Chromen käyttäjäagentti palauttaa palvelimelle tiedot käytetystä Google Chromen versiosta ja käyttäjän käyttöjärjestelmästä.

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3163.100 Safari/537.36 

Yllä oleva user-agent-otsikko tarkoittaa, että versio Google Chrome 70 tietokoneella prosessori AMD, 64-bittinen arkkitehtuuri käyttöjärjestelmän kanssa Windows 10.
Todennäköisesti kysyt itseltäsi miksi Mozilla näkyy Chromen käyttäjäagenttina. Tämä on eräänlainen Googlen (ja Microsoftin IE:ssä) käyttämä temppu helpottaakseen Chromen käyttäjien pääsyä kaikille Mozillan ja Safarin kanssa yhteensopiville sivustoille. Applewebkit on sisällön renderöintimoottori.

Verkkovastaavat tai verkkopalvelimen järjestelmänvalvojat voivat estää tiettyjen käyttäjäagenttien pääsyn isännöidyillä verkkosivustoilla. Useimmiten tämä rajoitus on asetettu web-robotit (webbotteja) jotka käyttävät kaoottisesti tai liikaa verkkosivuston verkkosivuja. Onneksi näillä boteilla on erityinen käyttäjäagentti, ja ne voidaan havaita erittäin helposti verkkopalvelimen lokeista.

Kuinka estää käyttäjäagentin pääsy verkkopalvelimelle NGINX:n avulla

Otetaan tilanne, jossa emme enää halua sallia pääsyä verkkosivustolle käyttäjille, joilla on Windows XP -käyttöjärjestelmä ja Mozilla Firefox 5.0 -internet-selain.

Lisäämme alla olevan koodin nginx-määritystiedostoon “palvelin” lohko:

  if ($http_user_agent = "Mozilla/5.0 (Windows NT 5.1; rv:52.0) Gecko/20100101 Firefox/52.0"){
 return 403;
 }

Tallenna nginx.conf-tiedosto tai verkkosivustokohtainen tiedosto, jos käytät mukautettua kokoonpanoa (kuten sivustot-käytettävissä). käynnistä NGINX-palvelu uudelleen.
Kaikki käyttäjät, joilla on Firefox 5.0 (mukaan lukien kaikki versiot 5.9 asti) Windows XP:ssä, ohjataan osoitteeseen virhe 403 (Kielletty).

En valinnut tätä esimerkkiä sattumalta. Firefox 52.9.0:sta alkaen Mozilla lopetti tuen Windows XP- ja Windows Vista -käyttäjille. Käyttöjärjestelmät, joiden tuen Microsoft lopetti vuonna 2014 ja 2017 Windows Vistalle.

Intohimoinen tekniikasta, kirjoitan mielihyvällä stealthsetts.com -sivustosta alkaen vuodesta 2006. Minulla on rikas kokemus käyttöjärjestelmistä: macOS, Windows ja Linux, mutta myös ohjelmointikielissä ja bloggaamisalustoissa (WordPress) ja verkkokaupoissa (WooCommerce, Magento, Presashop).

Koti IT -oppaat, hyödylliset vinkit ja uutiset. Mikä on ja kuinka estämme käyttäjäagentin (bot tai selaimen) pääsyn verkkosivustolla [nginx -vinkkejä]
Jätä kommentti