Skocz do zawartości

Polecane posty

Witam,
od jakiegoś czasu na stronę znajomej dochodzi do częstych ataków w wyniku których OVH blokuje hosting. Aby temu zapobiec zrobiłem subdomenę i tam przeniosłem strone opartą na Wordpressie. Zabezpieczyłem ją hasłem poprzez htaccess i htpasswd. Znajoma wchodzi na tą subdomenę tam edytuje to co chce i generuje pliki html które zapisują się w miejscu głównej domeny.
Tutaj pojawił się problem bo wtyczka która generuje pliki html nie może uzyskać dostępu do strony gdy jest założone na nie hasło przez htaccess.
Próbowałem odblokować dostęp lokalnie dla serwera, ale coś nie chce zadziałać, może ktoś coś doradzić co robię nie tak?
'AuthUserFile' /home/NAZWA_UŻYTKOWNIKA/www/edycja/.htpasswd
'AuthGroupFile' /dev/null
'AuthName' "Dostep zastrzezony"
'AuthType' Basic


require local
require valid-user

Kod poniżej też nie działa:

'AuthUserFile' /home/NAZWA_UŻYTKOWNIKA/www/edycja/.htpasswd
'AuthGroupFile' /dev/null
'AuthName' "Dostep zastrzezony"
'AuthType' Basic


require ip 127.0.0.1
require valid-user

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Osobiście zabezpieczyłbym stronę inaczej.

 

Przeniósłbym pliki wp do podkatalogu w katalogu domeny, plus wcześniejsza konfiguracja wordpressa tak by url był do katalogu głównego domeny, a ścieżka do plików do tego utworzonego. Następnie kopiujesz index.php wordpressa do katalogu głównego domeny i zmieniasz ścieżkę do ładowanych plików.

Teraz wyciąłeś 90% szkodników które sprawdzają jedynie ścieżkę mojadome.pl/wp-admin bo żeby zalogować się do panelu musisz wpisać moja.domena.pl/nazwafolderu/wp-admin.

Ostatni etap jeśli problem nadal występuje to ewentualnie założenie hasła w htaccess dla wp-admin. Logujesz się jak wyżej ale musisz dodatkowo podać hasło. Nawet jak coś będzie próbowało złamać hasło to wygeneruje mniejsze obciążenie niż gdyby łamało hasło do wordpressa bo teraz nie wczytywane są jeszcze pliki php.

 

To z takich prostszych rozwiązań. Najlepsze dałoby gdyby całkowicie ukryć wordpressa plus przeniesienie jego plików do podkatalogu. Da się to zrobić, ale nie jest łatwe, a te łatwe sposoby nie są darmowe.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Dzięki za pomysł, zastanowię się nad jego wprowadzeniem jeżeli nie uda mi się zrobić tego tylko z tym rozwiązaniem które opisałem powyżej.


Wersja HTML wygenerowanej strony zajmuje tylko 11 MB. Znajoma wrzuca tam raz na kwartał jakieś ogłoszenia, a strona jest o grupie osób walczących z rakiem, dlatego chcę jej to zrobić jak najmniejszym kosztem, sam za pomoc nic od niej nie biorę. Także wole pozostać przy tych prostych rozwiązaniach :)


Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie wiem, czy/ i jaka tam wersja Apache jest, ale spróbuj czegoś takiego

 

AuthUserFile ...
AuthGroupFile ...
AuthName ...
AuthType ...
 
Allow from 127.0.0.1
Allow from adres.ip.serwera
require valid-user
Satisfy any

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Alternatywnie można by przerobić tę wtyczkę, coby podawała login i hasło.

Przykładowo, jeśli wtyczka korzysta z cURL, to należałoby w odpowiednim miejscu dodać coś na kształt:

 

curl_setopt($resource, CURLOPT_USERPWD, "USERNAME:PASSWORD");

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
@kafi: próbowałem zrobić tak jak napisałeś, ale dostęp do strony był dozwolony dla wszystkich bez podania hasła.


@Piotr GRD: Ta wtyczka nazywa się Simply Static i wydaje mi się że korzysta z cURL. Znalazłem temat (https://wordpress.org/support/topic/generate-static-files-with-htpasswd-restriction) w którym ktoś miał podobny problem, autor wtyczki polecił mu także rozwiązanie z dodaniem IP serwera do htaccess.

Jutro spojrzę w kod wtyczki, może uda mi się coś wskórać. Dzięki za pomysł! :)


Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zabezpieczenie robisz na poziomie webservera, więc powinieneś również na poziomie webservera (htaccess) robić odpowiednią logikę dla swoich aplikacji, a nie w kodzie PHP na sztywno hardcodować usera i hasło. Tym bardziej, że htaccess bardzo ładnie wspiera allowy zarówno z tej samej maszyny, sieci lokalnej jak i konkretnego IP, więc wystarczy po prostu tego mechanizmu użyć, a nie modyfikować działający kod, który powinien mieć w czterech literach to na jakiej logice działa webserver.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×