Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zabezpieczenie aby móc uruchomić skrypt www tylko na jednej maszynie., Jak uniemozliwić uruchomienie skryptu dla innych osób w przeglądarce ?
Sajrox
post 14.10.2009, 18:21:56
Post #1





Grupa: Zarejestrowani
Postów: 254
Pomógł: 7
Dołączył: 9.10.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

Otóż mam dziwny problem.

Posiadam na serwerze przykladowy skrypt http://--moja-strona--/zrob_cos.php który generuje plik XML
Chciałbym aby możliwość uruchomienia skryptu była tylko dla jednej maszyny. Tak aby inny nie mogł widzieć co jest na stronie.

Skrypt będą uruchamiał przy pomocy cURL i chciałbym aby inna osoba np. haker który by chciał mieć dostep do tego skryptu przez cURL nie mial już takiej mozliwość.

Zależy aby to było bezpieczne.

Jak myślicie jak można to rozwiązać ?
Go to the top of the page
+Quote Post
Dumdas
post 14.10.2009, 18:28:17
Post #2





Grupa: Zarejestrowani
Postów: 65
Pomógł: 7
Dołączył: 8.10.2009
Skąd: Lubin

Ostrzeżenie: (0%)
-----


Da się np. dla jednej przeglądarki - ustawić jeden raz niegasnące ciastko. Na ile to jest bezpieczne - nie wiem.
A dla jednej maszyny, to jak masz stałe ip, to $_SERVER['remote_addr'] porównujesz ze swoim. Jak == to działa, jak nie - nie działa.
Go to the top of the page
+Quote Post
Sajrox
post 14.10.2009, 18:46:16
Post #3





Grupa: Zarejestrowani
Postów: 254
Pomógł: 7
Dołączył: 9.10.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Też myślalem po adresie IP.
Generalnie skrypt będę uruchamiał cronem która zn\jadzie się na moim innym serwerze. Jednak nie chciał bym, aby ktoś inny mógł odczytać zawartość skryptu bez dostępu do serwera na którym stoi mój CRON który odwołuje się do zabezpieczonego skryptu.

Chodzi o to że klient ma sklep na serwerze AAA. Tam chce umieścić mój skrypt który będzie coś robi na bazie danych tego sklepu.
Skrypt będe uruchamiał co jakiś czas z mojego serwera BBB np metodą cURL.

Chce uniknąć tego aby ktoś inny na serwerze CCC, DDD itp także mógł dostać się do skryptu, dostęp do niego może tylko mój serwer BBB. Wszystkie inne odpadają.
Go to the top of the page
+Quote Post
Lk_hc
post 15.10.2009, 13:07:25
Post #4





Grupa: Zarejestrowani
Postów: 36
Pomógł: 1
Dołączył: 12.06.2006

Ostrzeżenie: (0%)
-----


Po IP i masz bezpieczniutkie rozwiązanie

  1. if ($_SERVER['remote_addr'] == BBB)
  2. {
  3. //działasz
  4. }
  5. else()
  6. {
  7. die ("won");
  8. }


Ten post edytował Lk_hc 15.10.2009, 13:09:15
Go to the top of the page
+Quote Post
Dumdas
post 15.10.2009, 13:16:34
Post #5





Grupa: Zarejestrowani
Postów: 65
Pomógł: 7
Dołączył: 8.10.2009
Skąd: Lubin

Ostrzeżenie: (0%)
-----


Dla lepszego efektu użyj $_SERVER['HTTP_X_FORWARDED_FOR'] gdzie nawet jak ktoś by się łączył przez BBB, to nie może dizłać ze swojego komputera, bo bd porównywać jego IP. rozbuduj warunek o porównywanie jeszcze tego z operatorem AND i bd dobrze winksmiley.jpg
Go to the top of the page
+Quote Post
phpion
post 15.10.2009, 13:22:14
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Taaa, bo pod dowolny adres IP nie można się podszyć, prawda?

Jedyne sensowne i pewne (!) rozwiązanie to przenieść skrypt wywoływany przez crona poza katalog dostępny z poziomu przeglądarki. Wówczas w cronie odpalasz ten skrypt poprzez interpreter PHP, np.:
Kod
/sciezka/do/interpretera/php /sciezka/do/skryptu/php

Z zewnątrz nikt Ci tego wówczas nie odpali.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.08.2025 - 15:18