Nowy komponent do zabezpieczeń Joomla - za darmo
Wyniki 1 do 3 z 3

Temat: Nowy komponent do zabezpieczeń Joomla - za darmo

  1. #1
    Nowicjusz Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    22
    Punkty
    6

    Domyślny Nowy komponent do zabezpieczeń Joomla - za darmo

    Dziś mam przyjemność Wam zaprezentować nowy komponent do zabezpieczeń Joomla - DudoniSecure. Zrobiłem go ze względu na to, że są płatne tego typu komponenty, a mój udostępniam Wam zupełnie za darmo. Rozwijam go od lutego 2019. Aktualna wersja to 1.7. Komponent posiada tylko dwa widoki w panelu i jest lekki. Można np. usunąć dodatkowo nie potrzebne pliki, które instalują się wraz z Joomla mi. pliki graficzne w folderze images. Przesyłanie Flasha powinno być wyłączone. Ostrzeżenie, że nie posiadasz certyfikatu ssl i wiele innych usprawnień i zabezpieczeń. Jest ich razem 19.
    Proszę was o przetestowanie i sugestie co można byłoby dodać/zmienić w nowych wersjach. Nie testowany na Joomla 2.5

    dudonisecure_v1.7.zip
    Na forum pomagam bezpłatnie, ale nie koniecznie

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #2
    Wiarus siristru awatar
    Dołączył
    28-05-2009
    Skąd
    Szczecin
    Wpisy
    1 884
    Punkty
    207

    Domyślny

    Dzięki za wkład, super, że się podjąłeś.

    Na gorąco zajrzałem do kodu i chce się podzielić kilkoma uwagami:

    1. Dobrą praktyką jest używać języka angielskiego w nazewnictwie zmiennych czy funkcji
    2. Używaj stałych językowych - nie hardkoduj tekstów
    3. Stała DS jest deprecated od Joomla 1.6 należy używać slasha (https://docs.joomla.org/Potential_ba..._Platform_12.2 )
    Tak wiem użyłeś:
    Kod PHP:
    if (!defined('DS')) define('DS'DIRECTORY_SEPARATOR); 
    Tylko to jest nie potrzebne.

    4. Netykieta - nie używaj kapitalików jako tekstu na przyciskach.

    5. "Konfiguracja pamięci podręcznej Joomla powinna być włączona" - dlaczego "powinna"? Włącza ten kto potrzebuje.

    6. "Raportowanie błędów powinno być ustawione na Brak" dlaczego powinno być na "Brak"? Raczej właśnie powinno być na "Default" bo jak się pojawi błąd to przynajmniej go zobaczę. "Brak" tylko w przypadku gdy ktoś ma na serwerze źle skonfigurowane wyświetlanie błędów.

    7. "Captcha powinna być włączona w konfiguracji, a także powinien być opublikowany plugin "CAPTCHA - reCAPTCHA"" dlaczego "powinna"? A jak na stronie nie ma rejestracji ani formularzy? Komponent "Kontakty" jest wyłączony?

    8. "Występują nie potrzebne pliki". Lista "niepotrzebnych" plików jest dość kontrowersyjna:

    Kod PHP:
    if (file_exists($path '/.drone.yml')) unlink($path '/.drone.yml');
                if (
    file_exists($path '/robots.txt.dist')) unlink($path '/robots.txt.dist');
                if (
    file_exists($path '/web.config.txt')) unlink($path '/web.config.txt');
                if (
    file_exists($path '/joomla.xml')) unlink($path '/joomla.xml');
                if (
    file_exists($path '/build.xml')) unlink($path '/build.xml');
                if (
    file_exists($path '/LICENSE.txt')) unlink($path '/LICENSE.txt');
                if (
    file_exists($path '/README.txt')) unlink($path '/README.txt');
                if (
    file_exists($path '/htaccess.txt')) unlink($path '/htaccess.txt');
                if (
    file_exists($path '/LICENSES.php')) unlink($path '/LICENSES.php');
                if (
    file_exists($path '/configuration.php-dist')) unlink($path '/configuration.php-dist');
                if (
    file_exists($path '/CHANGELOG.php')) unlink($path '/CHANGELOG.php');
                if (
    file_exists($path '/COPYRIGHT.php')) unlink($path '/COPYRIGHT.php');
                if (
    file_exists($path '/CREDITS.php')) unlink($path '/CREDITS.php');
                if (
    file_exists($path '/INSTALL.php')) unlink($path '/INSTALL.php');
                if (
    file_exists($path '/LICENSE.php')) unlink($path '/LICENSE.php');
                if (
    file_exists($path '/CONTRIBUTING.md')) unlink($path '/CONTRIBUTING.md');
                if (
    file_exists($path '/phpunit.xml.dist')) unlink($path '/phpunit.xml.dist');
                if (
    file_exists($path '/README.md')) unlink($path '/README.md');
                if (
    file_exists($path '/.travis.yml')) unlink($path '/.travis.yml');
                if (
    file_exists($path '/travisci-phpunit.xml')) unlink($path '/travisci-phpunit.xml');
                if (
    file_exists($path '/images/banners/osmbanner1.png')) unlink($path '/images/banners/osmbanner1.png');
                if (
    file_exists($path '/images/banners/osmbanner2.png')) unlink($path '/images/banners/osmbanner2.png');
                if (
    file_exists($path '/images/banners/shop-ad-books.jpg')) unlink($path '/images/banners/shop-ad-books.jpg');
                if (
    file_exists($path '/images/banners/shop-ad.jpg')) unlink($path '/images/banners/shop-ad.jpg');
                if (
    file_exists($path '/images/banners/white.png')) unlink($path '/images/banners/white.png');
                if (
    file_exists($path '/images/headers/blue-flower.jpg')) unlink($path '/images/headers/blue-flower.jpg');
                if (
    file_exists($path '/images/headers/maple.jpg')) unlink($path '/images/headers/maple.jpg');
                if (
    file_exists($path '/images/headers/raindrops.jpg')) unlink($path '/images/headers/raindrops.jpg');
                if (
    file_exists($path '/images/headers/walden-pond.jpg')) unlink($path '/images/headers/walden-pond.jpg');
                if (
    file_exists($path '/images/headers/windows.jpg')) unlink($path '/images/headers/windows.jpg');
                if (
    file_exists($path '/images/joomla_black.gif')) unlink($path '/images/joomla_black.gif');
                if (
    file_exists($path '/images/joomla_black.png')) unlink($path '/images/joomla_black.png');
                if (
    file_exists($path '/images/joomla_green.gif')) unlink($path '/images/joomla_green.gif');
                if (
    file_exists($path '/images/joomla_logo_black.jpg')) unlink($path '/images/joomla_logo_black.jpg');
                if (
    file_exists($path '/images/powered_by.png')) unlink($path '/images/powered_by.png');
                if (
    file_exists($path '/images/sampledata/fruitshop/apple.jpg')) unlink($path '/images/sampledata/fruitshop/apple.jpg');
                if (
    file_exists($path '/images/sampledata/fruitshop/bananas_2.jpg')) unlink($path '/images/sampledata/fruitshop/bananas_2.jpg');
                if (
    file_exists($path '/images/sampledata/fruitshop/fruits.gif')) unlink($path '/images/sampledata/fruitshop/fruits.gif');
                if (
    file_exists($path '/images/sampledata/fruitshop/tamarind.jpg')) unlink($path '/images/sampledata/fruitshop/tamarind.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/180px_koala_ag1.jpg')) unlink($path '/images/sampledata/parks/animals/180px_koala_ag1.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/180px_wobbegong.jpg')) unlink($path '/images/sampledata/parks/animals/180px_wobbegong.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/200px_phyllopteryx_taeniolatus1.jpg')) unlink($path '/images/sampledata/parks/animals/200px_phyllopteryx_taeniolatus1.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/220px_spottedquoll_2005_seanmcclean.jpg')) unlink($path '/images/sampledata/parks/animals/220px_spottedquoll_2005_seanmcclean.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/789px_spottedquoll_2005_seanmcclean.jpg')) unlink($path '/images/sampledata/parks/animals/789px_spottedquoll_2005_seanmcclean.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/800px_koala_ag1.jpg')) unlink($path '/images/sampledata/parks/animals/800px_koala_ag1.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/800px_phyllopteryx_taeniolatus1.jpg')) unlink($path '/images/sampledata/parks/animals/800px_phyllopteryx_taeniolatus1.jpg');
                if (
    file_exists($path '/images/sampledata/parks/animals/800px_wobbegong.jpg')) unlink($path '/images/sampledata/parks/animals/800px_wobbegong.jpg');
                if (
    file_exists($path '/images/sampledata/parks/banner_cradle.jpg')) unlink($path '/images/sampledata/parks/banner_cradle.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/120px_pinnacles_western_australia.jpg')) unlink($path '/images/sampledata/parks/landscape/120px_pinnacles_western_australia.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/120px_rainforest_bluemountainsnsw.jpg')) unlink($path '/images/sampledata/parks/landscape/120px_rainforest_bluemountainsnsw.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/180px_ormiston_pound.jpg')) unlink($path '/images/sampledata/parks/landscape/180px_ormiston_pound.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/250px_cradle_mountain_seen_from_barn_bluff.jpg')) unlink($path '/images/sampledata/parks/landscape/250px_cradle_mountain_seen_from_barn_bluff.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/727px_rainforest_bluemountainsnsw.jpg')) unlink($path '/images/sampledata/parks/landscape/727px_rainforest_bluemountainsnsw.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/800px_cradle_mountain_seen_from_barn_bluff.jpg')) unlink($path '/images/sampledata/parks/landscape/800px_cradle_mountain_seen_from_barn_bluff.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/800px_ormiston_pound.jpg')) unlink($path '/images/sampledata/parks/landscape/800px_ormiston_pound.jpg');
                if (
    file_exists($path '/images/sampledata/parks/landscape/800px_pinnacles_western_australia.jpg')) unlink($path '/images/sampledata/parks/landscape/800px_pinnacles_western_australia.jpg');
                if (
    file_exists($path '/images/sampledata/parks/parks.gif')) unlink($path '/images/sampledata/parks/parks.gif'); 
    Zgoda, ze pliki "sample" nie są w sumie potrzebne bo to dane demonstracyjne. Ale pliki informacyjne? Licencja? szablony plików htaccess.txt czy robots.txt.dist sa nawet potzrebne jak ktoś namiesza w swoich. Tak samo configuration.php-dist. Raczej nie usuwałbym tych plików.

    Generalnie komponent jest fajną check listą dla początkujących i faktycznie moze pomóc. Ale w obecnej formie moze też nieco zepchnać na manowce sugerując, ze coś "powinno" być kiedy to zależy od danej sytuacji i potrzeby.

    Sugerowałbym podzielenie listy na:

    Krytyczne
    Ważne
    Zalecane

    I uszeregować konkretne ustawienia (odpowiednio też ikonki w kolorach by nie straszyć czerwonym x)
    Na Forum pomagam bezpłatnie ad maiorem Joomla gloriam
    Mimo pomocy na forum nie dajesz rady? Potrzebujesz by ekspert "zrobił to" za Ciebie?
    Napisz do mnie na PW. Argentum et Aurum nie zawsze jest konieczne ;)

  4. #3
    Nowicjusz Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    22
    Punkty
    6

    Domyślny

    Takie sugestie właśnie potrzebuje. Wiele usprawnień już poprawiłem. Poniżej kolejna wersja. Doszła jedna pozycja, a także dodałem trzecią ikonę, która pokazuje ustawienia ważne.

    dudonisecure_v1.8.zip
    Na forum pomagam bezpłatnie, ale nie koniecznie

Podobne tematy

  1. Odpowiedzi: 14
    Ostatni post/autor: 28-01-2014, 17:18
  2. Sobi 2 i błędny certyfikat zabezpieczeń
    przez grzybiarz na forum Rozszerzenia - problemy z obsługą, zarządzaniem
    Odpowiedzi: 0
    Ostatni post/autor: 24-01-2012, 19:56
  3. Odpowiedzi: 9
    Ostatni post/autor: 05-07-2011, 08:58
  4. Joomla Tags gdzie pobrać za darmo?
    przez kurtzzz na forum Zasoby, plikownie,
    Odpowiedzi: 6
    Ostatni post/autor: 06-06-2010, 20:08

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •