Nowy komponent do zabezpieczeń Joomla - za darmo
Strona 1 z 2 12 OstatniOstatni
Wyniki 1 do 10 z 14

Temat: Nowy komponent do zabezpieczeń Joomla - za darmo

  1. #1
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    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

    <usunięto starą wersję>
    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
    Wyga siristru awatar
    Dołączył
    28-05-2009
    Skąd
    Szczecin
    Wpisy
    3 238
    Punkty
    302

    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
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    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.

    <usunięto starą wersję>
    Na forum pomagam bezpłatnie, ale nie koniecznie

  5. #4
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Wyszła kolejna stabilna wersja komponentu
    <usunięto starą wersję>
    Na forum pomagam bezpłatnie, ale nie koniecznie

  6. #5
    Senior Bazyl awatar
    Dołączył
    02-08-2008
    Skąd
    Skierniewice
    Wpisy
    7 693
    Punkty
    574

    Domyślny

    Fajnie.
    Czy masz gdzieś opisaną listę zmian?

  7. #6
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Do wersji 1.9 jest w zakładce "Informacje o wersji", ale do 2.0 nie umieściłem jeszcze bo tam było kilka niedociągnięć w pliku językowym. Tutaj pominąłem wersje 1.9 tylko i nie umieściłem jej do pobrania.
    Na forum pomagam bezpłatnie, ale nie koniecznie

  8. #7
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Wyszła nowa wersja, która ma 7 nowych zabezpieczeń. Razem jest już 28. Proszę o przetestowanie na większej liczbie instalacji Joomla. Podobne rozwiązanie ma strona manage.mysites.guru, ale trzeba instalować jakieś ich dodatki, które łączą się z twoją stroną.
    Oto załącznik <usunięto starą wersję>
    Na forum pomagam bezpłatnie, ale nie koniecznie

  9. #8
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Nowsza wersja <usunięto starą wersję>
    Na forum pomagam bezpłatnie, ale nie koniecznie

  10. #9
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Najnowsza wersja <usunięto starą wersję>
    Na forum pomagam bezpłatnie, ale nie koniecznie

  11. #10
    Bywalec Frodoo awatar
    Dołączył
    26-08-2018
    Skąd
    Łódź
    Wpisy
    176
    Punkty
    18

    Domyślny

    Zmiany w nowej wersji

    Dodanie funkcji, która naprawia zgody na przetwarzanie danych osobowych
    Dodanie języka angielskiego
    Powstała strona https://secure.dudoni.pl, na której można pobrać komponent
    Uwaga! Włączenie cache w Joomla w ustawieniach powoduje nie nanoszenie zmian w widoku komponentu
    Przycisk do przywracania zmian
    Aktualizacje w panelu
    Teraz zmieniane są prawa do pliku przed zmianami configuration.php i przywracane są do 444
    Na forum pomagam bezpłatnie, ale nie koniecznie

Strona 1 z 2 12 OstatniOstatni

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, 09:58
  4. Joomla Tags gdzie pobrać za darmo?
    przez kurtzzz na forum Zasoby, plikownie,
    Odpowiedzi: 6
    Ostatni post/autor: 06-06-2010, 21: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
  •