x

Fő fejezetek

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. LimeSurvey Cloud – Rövid útmutató
  3. Telepítés - LimeSurvey CE
  4. Hogyan készítsünk egy jó felmérést (útmutató)
  5. Elkezdeni
  6. A LimeSurvey adminisztrálása
  7. Felmérések - bevezető
  8. Felmérés beállításai
  9. Felmérés menü
  10. Felmérés szerkezete
  11. Kérdések – bevezetés
  12. Kérdéscsoportok - bevezetés
  13. Felmérések - menedzsment
  14. A felmérés eszköztárának beállításai
  15. Többnyelvű felmérés
  16. ExpressionScript Engine – Gyors üzembe helyezési útmutató
  17. Nem kategorizált és speciális funkciók
  18. Általános GYIK
  19. Hibaelhárítás
  20. Megoldások
  21. Engedély
  22. Verzióváltoztatási napló
  23. Bővítmények – haladó
 Actions

Telepítési biztonsági tanácsok

From LimeSurvey Manual

Előfordulhat, hogy ez az oldal gépi fordítással készült, és hibákat tartalmaz. Angol eredeti megjelenítése · A fordítás javítása
This page is a translated version of the page Installation security hints and the translation is 100% complete.

Általános

Felhívjuk figyelmét, hogy a biztonsági kérdéseket nagyon komolyan vesszük, és gyorsan reagálunk. Ezért ha a LimeSurvey-ben bármilyen biztonsági problémáról tud, kérjük, jelezze felénk hibajelentés megnyitásával a hibakövetőnkben (kérjük, a hibát jelölje „security” súlyossággal vagy kategóriával).

További részletekért kérjük, tekintse meg a biztonsági problémák/sebezhetőségek bejelentésére vonatkozó biztonsági szabályzatunkat.

Webszerver korlátozása

A LimeSurvey .htaccess fájlokat tartalmaz, amelyek blokkolják a webes hozzáférést azokhoz a fájlokhoz és könyvtárakhoz, amelyeket csak a szerver használ. Ha Apache-ot használ, győződjön meg arról, hogy ezek a fájlok engedélyezettek az AllowOverride All beállítással, és hogy a mod_rewrite be van kapcsolva.

Más webszerverek, például az nginx vagy az IIS figyelmen kívül hagyják a .htaccess fájlokat, ahogy az Apache is az AllowOverride None beállítással. Ebben az esetben a webszerver konfigurációjában tiltsa le a webes hozzáférést a következőkhöz:

  • az application, vendor, docs, locale, modules és tmp/runtime könyvtárak
  • a conf, core, doc, integration, lang, lib és tpl könyvtárak az assets/packages/kcfinder könyvtárban
  • a setdebug.php és az open-api-gen.php fájlok
  • a fejlesztési fájlok a LimeSurvey gyökérkönyvtárában: composer.json, composer.lock, package.json, yarn.lock, gulpfile.js, phpunit.xml, psalm*.xml, phpci.yml, phpcs.ruleset.xml, publiccode.yml, manifest.yml, CONTRIBUTING.md, README.md és SECURITY.md
  • a rejtett fájlok és könyvtárak (a nevük ponttal kezdődik), a .well-known kivételével
  • a naplófájlok (*.log)
  • a kérdőív résztvevői által feltöltött fájlok: az fu_ előtaggal kezdődő fájlok az upload/surveys könyvtárban és annak alkönyvtáraiban

Gondoskodjon arról is, hogy az upload könyvtárban lévő szkriptek soha ne legyenek futtathatók, például a PHP-, Perl-, Python- vagy shell-szkriptek.

A LimeSurvey csomag tartalmazza a beépített könyvtárak dokumentációját, példáit és teszteit is, például a vendor és a docs könyvtárakban. Ne törölje ezeket a fájlokat: a következő frissítés visszahozza őket. Ehelyett tiltsa le a webes hozzáférést ezekhez a könyvtárakhoz a fent leírtak szerint.

Az nginx-re vonatkozó példát a LimeSurvey nginx példakonfiguráció oldalon találhatja meg.

Linux fájlengedélyek

Ha Linux-kiszolgálót használ, a LimeSurey telepítésének biztonságához a fájljogosultságok megfelelő beállítása szükséges.

Alapvető tények a Linux/*nix fájlengedélyekről

A Linux/*nix operációs rendszer többfelhasználós. Ez azt jelenti, hogy az Ön személyes fiókján kívül más felhasználói fiókok is létezhetnek a rendszerben, és Önnek gondoskodnia kell arról, hogy milyen engedélyeket ad más felhasználóknak.

A Tipp: fájlengedélyek beállítása különösen fontos a kritikus adatokat, például jelszavakat tartalmazó konfigurációs fájlok biztonsága érdekében.

'Ne feledje, hogy a 'root' fiók mindig megkapja a hozzáférési engedélyt a fájlokhoz (függetlenül attól, hogy milyen fájlengedélyeket állít be), mivel ez a szuper-admin felhasználó.

A webszerver (amely a LimeSurvey-t futtatja) szintén adott identitás (felhasználó) alatt fut. Linuxon ez általában a „www”, „www-data” (Debian/Ubuntu), „apache” vagy „nobody” felhasználó. Egyes hosting cégek azonban olyan rendszereket (például suexec) használnak, amelyek lehetővé teszik a LimeSurvey szkriptek futtatását az Ön személyes felhasználójával. Természetesen a webszerver felhasználójának rendelkeznie kell a LimeSurvey fájlok olvasásának jogával. Azonban a LimeSurvey alkönyvtárak csak egy kis részhalmazát írhatja a webszerver felhasználója.

Tipp: nagyon hasznos visszavonni a webszerver-felhasználó írási engedélyét ezekbe a LimeSurvey alkönyvtárakba, amelyekhez nincs szükség rá. Valójában még ha a LimeSurvey biztonsági rését felfedezik is, a fő fájlok továbbra is védettek lesznek a tiltott módosításokkal szemben, köszönhetően a fájlrendszer engedélyeinek.

Fájlengedélyek beállítása egy önállóan kezelt Linux rendszeren

Ha Ön kezeli a webszerverét és az operációs rendszer konfigurációját (Ön a fizikai szerver tulajdonosa, vagy olyan virtuális szervert bérel, amelyhez root hozzáféréssel rendelkezik), fontolóra veheti az alábbi ajánlásokat.

Először beállíthatja a LimeSurvey-fájlok tulajdonosát és csoportját, hogy ez megkönnyítse a fájlengedélyek beállítását. Egy lehetséges stratégia az, hogy a LimeSurvey fájlok tulajdonosát a személyes felhasználónevére, a LimeSurvey fájlok csoportját pedig a webszerver csoportra állítja. Általában ez a webszerver-csoport csak a webszerver-fiókot (és esetleg egy másik webmester-fiókot) tartalmazza. Például, ha az Ön felhasználóneve „myaccount”, és a webszerver felhasználója „apache” az „apache” csoportban, akkor shell-hozzáférésből a következő parancsot használhatja: $ chown -R myaccount:apache limesurvey/ . Ezt követően állítsa be a fájl és az alkönyvtárak engedélyeit.

A szkript megfelelő működéséhez bizonyos könyvtárakhoz írási hozzáférésre van szükség:

  • A /limesurvey/application/config könyvtár Read & Write-t igényel az alkalmazás konfigurációs beállításainak mentéséhez
  • A /limesurvey/ A tmp könyvtár és alkönyvtárai az importáláshoz/feltöltéshez használatosak, és a webszervernél Olvasás és Írás értékre kell állítani
  • A feltöltési/könyvtárnak és minden alkönyvtárának is be kell állítania az Olvasás értéket. & Írási engedélyek a képek és médiafájlok feltöltésének engedélyezéséhez
  • Az összes többi könyvtár és fájl „Csak olvasható” értékűre állítható

Fájlengedélyek beállítása egy hosztolt webszerveren

Figyelembe véve a webalkalmazások hosztolt környezetben való biztonságossá tételére szolgáló szabványos eljárás nehézségeit, ez meglehetősen nehéz, mivel a hosztolt környezetek sok tekintetben különböznek egymástól.

A felügyelt szerver esetében a kiszolgálónak írási hozzáférésre van szüksége néhány könyvtárhoz a szkript megfelelő működéséhez:

  • A /limesurvey/tmp könyvtárat az importáláshoz/feltöltéshez használják, és Olvasás és Írás értékre kell állítani. ' az Ön webszerveréhez
  • A feltöltési/könyvtárnak és minden alkönyvtárának rendelkeznie kell az Olvasás és írás funkcióval is a webszerverhez, hogy engedélyezze a képek és médiafájlok feltöltését
  • A többi könyvtár, ill. a fájlokat "Csak olvasható" értékre kell állítani
Tipp:
  • A webszerver konfigurációjától függően módosítania kell az írható mappák jogait 755-re vagy 777-re, hogy írható legyen a weben szerver. Először próbálja meg a 755-öt, ha nem működik, 'frissítsen' 777-re
  • Megpróbálhatja eltávolítani más felhasználók olvasási hozzáférését a config.php fájlhoz, ha ennek a fájlnak a jogosultságait 750-re állítja - ha nem működik, frissítse 755-re

Windows fájlengedélyek

Ha Windows kiszolgálót használ, gondoskodnia kell arról, hogy az adminisztrációs mappa lehetővé tegye a webszerver folyamat tulajdonosa számára, hogy fájlokat írjon ebbe a könyvtárba. A többi fájl csak olvasható és végrehajtható.

Egyéb biztonsági problémák

Az alábbiak csak ajánlások. A LimeSurvey általában nagyon biztonságos ezen kiegészítő intézkedések nélkül. Ha azonban rendkívül érzékeny adatokat gyűjt, egy kis további biztonság segíthet:

SSL használat

Általában javasoljuk az SSL használatát a kényes felmérési adatokhoz. Az SSL-t általában a webszerver megfelelő konfigurálásával és SSQL-tanúsítvány használatával engedélyezi. Ha engedélyezte az SSL-t, akkor a LimeSurvey globális beállításaiból folyamatosan érvényesítenie kell az SSL-t. Ezenkívül csak a „biztonságos” cookie-k használatát állíthatja be, ha módosítja a config.php fájl megfelelő beállítását.

A config.php fájl elérése

Template:Figyelmeztetés

Az /application/config/config.php fájl egy felhasználónevet és jelszót tartalmaz az adatbázis-kiszolgálóhoz. Ez bizonyos biztonsági problémákat vet fel, különösen, ha olyan bejelentkezést használ, amely magas szintű rendszergazdai hozzáféréssel rendelkezik az adatbázishoz. Abban az esetben, ha hiba történik a PHP-fájl tartalmának a felhasználó böngészőjébe való visszaküldése során, az adatbázis jelszava és egyéb adatok veszélybe kerülhetnek (ez azonban nagyon valószínűtlen forgatókönyv). A kockázat minimalizálásának legjobb módja egy olyan bejelentkezés beállítása, amely csak a LimeSurvey adatbázishoz rendelkezik meghatározott jogokkal.

Egy másik módja ennek az információnak az, hogy az /application/config/config.php fájlból származó információkat egy nem webes könyvtárba helyezzük, azaz az Apache felhasználók számára ez a htdocs (más néven public_html vagy www) mappa feletti könyvtár. . Alapvetően a config.php-t fogja használni, de van benne egy sor – egy sor, amely tartalmazza a fájlt a VALÓS konfigurációs információkkal (pl.:<?php return include("/home/hostfolder/safedata/configreal.php"); ?> ). Távolítson el minden tényleges konfigurációs információt a /application/config/config.php fájlból, és illessze be a másik fájlba (configreal.php), amely a /application/config/config.php fájlban szerepel. Ennek a másik fájlnak egy nem webes könyvtárban kell lennie. Ekkor az /application/config/config.php nem tartalmaz adatbázisjelszavakat stb. – csak annak a fájlnak a nevét, amely VAN tartalmazza az adatbázis-információkat.

Ezzel elkerülhető, hogy módosítania kelljen az összes többi fájlt, amely tartalmazza a /application/config/config.php fájlt, mivel a config.php „átirányítja őket” a nem webes könyvtárban található konfigurációs fájlhoz, amely az összes valós konfigurációs információt tartalmazza.

Továbbá ne használja az „admin” vagy az „administrator” nevet alapértelmezett felhasználóként. Nyissa meg a MySQL adatbázist (vagy azt, amelybe a LimeSurvey-t telepítette), és módosítsa az alapértelmezett „admin” felhasználónevet tetszőlegesre (pl. „admin_xyz”). Így sokkal nehezebb lesz kitalálni a kérdőívkezelő új felhasználónevét. Ne feledje, ez az egyik a két változó közül, amelyet a behatolók a hozzáféréshez felhasználhatnak. A másik változó a kérdőívkezelő jelszava. Ezért mindkettőt rendkívül körültekintően válassza meg.

Tartalombiztonsági szabályzat (CSP)

NYILATKOZAT – Az itt megadott CSP csak példa, és nem szó szerint használható. Kiindulópontnak szánja, és az Ön igényeihez KELL igazítania és alaposan tesztelnie kell. <IfModule mod_headers.c> A fejléc mindig beállítva: Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' "nem biztonságos inline"; base-uri 'none '; form-action 'self'; keret-elődök 'self'; upgrade-insecure-requests" "expr=%{CONTENT_TYPE} =~ m#text\/(html|javascript)|application\/pdf|xml#i " </IfModule>