Zdalne tworzenie użytkowkników, grup i udziałów sieciowych

Dyskusja w 'Serwer WEB i aplikacje (PHP oraz bazy danych SQL)' rozpoczęta przez użytkownika Belisarius, 22 Kwiecień 2010.

Ładowanie...
  1. Belisarius
    Offline

    Belisarius Nowy użytkownik Noobie

    Dołączył:
    21 Kwiecień 2010
    Wiadomości:
    5
    Local Time:
    02:58
    Oceny:
    +0 / 0 / -0
    Followers:
    0
    Witam,
    Na początku się przywitam, gdyż to mój pierwszy post tutaj;

    Posiadam serwer plików QNAP TS-509, cały czas działa w porządku, poprzez aplikację webową QNap Turbo Nas idzie tworzyć wymagane przeze mnie rzeczy czyli:
    - użytkowników
    - grupy użytkowników
    - udziały sieciowe.

    Piszę teraz aplikację w PHP, której jednym z zadań ma być utworzenie tych właśnie rzeczy na QNap. Aplikacja będzie stacjonować na innym serwerze w sieci z QNAP-em.

    Czy jest jakaś możliwość, jak mam to zrobić?
    Może ktoś już takie coś robił?
    Może informacje o userach i udziałach znajdują się w jakiejś bazie danych na qnapie?
    Jeśli tak, to czy mogę jakoś uzyskać do niej dostęp?
    Czy aplikacja PHP postawiona na Qnapie może mieć taką możliwość??

    Pozdrawiam
     
  2. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    01:58
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    Możesz napisać własny system dodawania użytkowników(nie korzystającego z panelu). Który sam musiałby dodać danego użytkownika osobno do ftpa, samby itd.(każdy ma swój plik). chyba że dokładnie zanalizujesz panel(potrzebna wiedza dodatkowo AJAXa), i korzystając z curla dodawać tych użytkowników poprzez ten panel.
     
  3. jarlath
    Offline

    jarlath Moderator Contributor

    Dołączył:
    12 Grudzień 2008
    Wiadomości:
    246
    Miejscowość:
    Poland, Gliwice
    Local Time:
    01:58
    Oceny:
    +14 / 0 / -0
    Followers:
    1
    QNAP:
    TS-x59 Pro
    Ethernet:
    1 GbE
    TS-x59 Pro 1 GbE
    Witam,
    Możesz też przy użyciu SSH wykonywać odpowiednie polecenia bezpośrednio w QNAP'ie - gdzieś kiedyś widziałem takie rozwiązanie (ale nie na QNAPie), więc na 100% się da... SSH jest więc powinno dać rade. Można jeszcze kilkoma prostszymi sposobami, ale nie są one zbyt bezpieczne (np "buforowanie" poleceń w pliku i wykonywanie ich ze skryptu na QNAP). No i ewentualnie napisanie własnego skryptu PHP z niezbędnymi funkcjami, nadanie stosownych praw i wtedy obsługa za pomocą url... , ale jak już wspomniałem dwa ostatnie niezbyt bezpieczne...
     
  4. Belisarius
    Offline

    Belisarius Nowy użytkownik Noobie

    Dołączył:
    21 Kwiecień 2010
    Wiadomości:
    5
    Local Time:
    02:58
    Oceny:
    +0 / 0 / -0
    Followers:
    0
    W php idzie obsłużyć SSH, tylko, czy bezpieczne jest przesyłanie haseł admina po łączu? Można by użyć https, ale czy to wystarczające?
    Jeśli bym założył, że taka możliwość istnieje, to jakimi poleceniami mogę tworzyć to co chce? Jest jakiś manual z poleceniami w powłoce QNap?

    Jak wysłać taki plik?
    Aplikacja ma działać na innym serwerze w sieci, można by stworzyć drugą aplikację php na qnapie która by odbierała plik? Dobrze rozumiem?
    Tylko jak wtedy uruchomić lokalnie skrypt z pliku. Czy aplikacja php, która jest zainstalowana na QNap ma dostęp do powłoki?

    Czyli coś podobnego jak wyżej?

    Gdybym wykorzystał https do przesyłu informacji?
     
  5. Belisarius
    Offline

    Belisarius Nowy użytkownik Noobie

    Dołączył:
    21 Kwiecień 2010
    Wiadomości:
    5
    Local Time:
    02:58
    Oceny:
    +0 / 0 / -0
    Followers:
    0
    Czy php ma możliwość dostępu do powłoki?

    Czy jest jakaś dokumentacja mówiąca o strukturze tych plików?? Gdzie te pliki się znajdują??

    z tym ciężko bo:
    1. Trza by być expertem w AJAX,
    2. Funkcje tam działające działają lokalnie, a nie zdalnie, więc samo pobranie ich nic by nie dało.
     
  6. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    01:58
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    Widze że jesteś mocno początkującym w php.
    Zbyt dużo pytań xD
    Miałem na myśli kod w php, który miałby za zadanie min:
    1. Połaczyć się z qnapem przez ssh2.
    Żadna powłoka... ? Przecież jak chcesz połączyć się z innego serwera, to nie wywołasz komend z poziomu lokalnego php (exec()) ...
    SSH2 jest bezpieczne w równym stopniu co shttp bo wykorzystywane są prawie te same zabezpieczenia.
    2. Wywołać odpowiednie komendy.
    Jaka dokumentacja? to jest linux !
    Tak jak na zwykłym linuxie, jest zainstalowany ftp,samba, struktura jest niemal że identyczna !
    W internecie jest pełno "tutoriali" xD

    Jeśli chodzi o przesyłanie plików, to przecież przez ssh2 można - scp, w php również zaimpletowane(prosisz o dokumentacje z struktury plików w QNAPie, a nawet z dokumentacji php nie korzystasz).

    Pytanie, którą drogę wybrać ?
    Żeby być pewnym, lepiej samemu przeanalizować system, strukture folderów, panel, komendy a może jednak QNAP przewidział to i zostawił dla nas miła niespodziankę gdzieś w strukturze systemu ? xD
    może usprawnili jakąś podstawową komende, typu adduser? sprawdź ;)

    P.S Co do ajaxa , bym się nie zgodził(pkt 2) :p
     
  7. Belisarius
    Offline

    Belisarius Nowy użytkownik Noobie

    Dołączył:
    21 Kwiecień 2010
    Wiadomości:
    5
    Local Time:
    02:58
    Oceny:
    +0 / 0 / -0
    Followers:
    0
    To akurat źle widzisz :p W php siedzę już wystarczająco długo, ale za to można powiedzieć że jestem początkującym w linuksie.

    Pamiętaj! że kluczem do sukcesu jest poznanie problemu od różnych stron = zadawanie wielu pytań.

    Wiem i to właśnie chcę zrobić. Przechodzenie przez panel w moim przypadku jest nie do przyjęcia.

    Oczywiście że wywołam.

    To jest jedno z wyjść i doskonale go rozumiem. To że szukam innych rozwiązań nie oznacza że tego nie kumam.

    I TU MNIE MASZ. Z linuksa jestem totalny laik.
    Rozumiem, z tego co piszesz, że wszystko to mogę zrobić normalnie z konsoli? I że to są podstawowe polecenia?

    O tym wiedziałem.
     
  8. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    01:58
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    Nie da rady ! exec wydaje polecenia na lokalnym serwerze, na którym jest wywoływany skrypt php !
    Więc funkcją exec() lub shell_exec() nie wywołasz komend w wierszu polecenia zdalnie na innym serwerze(chyba że wykonasz drugi taki skrypt na nim, który będzie odbierał innym sposobem polecenia i je wywoływał poprzez exec() ale to droga na około)
    Ale jak mówiłem można to obejść korzystając z ssh2 ...

    Pewnie, kto pyta nie błądzi, ale czasami wystarczy chęci by samemu wpaść na pomysł.
    Jakby tak każdy pytał np: jak wysłać plik na serwer, byłby ogromny spam na forach(i tak jest xD), a wystarczy wyszukać np: w google ?
    Lub właśnie to co sprawia największy problem - korzystać z dokumentacji i własnego intelektu :)
    tak więc nie zgodziłbym się do końca z twoimi założeniami(druga część zdania :)).
    Jeśli chodzi o programistów, to jeśli jeden ma z czymś problem, inny stara się go nakierować.
    Ale jeśli na forum o serwerach QNAP pytasz jak w php przesłać plik ? to coś świadczy o twoich umiejętnościach ...
    wybacz, widocznie zbyt pochopnie oceniłem ciebie.
     
  9. Belisarius
    Offline

    Belisarius Nowy użytkownik Noobie

    Dołączył:
    21 Kwiecień 2010
    Wiadomości:
    5
    Local Time:
    02:58
    Oceny:
    +0 / 0 / -0
    Followers:
    0
    O tym właśnie na początku myślałem. Z drugiej strony nie zgodzę się z Tobą, że tak całkiem na około.
    Bo tak:
    1. Czy mogę połączyć się przez ssh2 na innym użytkowniku niż admin? Z tego co wiem to nie.
    2. Czy bezpieczniejszym będzie przesłanie loginu(admin) i hasła(*****) admina między serwerami, czy wysłanie pliku z komendami i lokalnie na qnap wywołać go z admina?
    3. Zastanawiałem się, czy php postawiony na serwerze qnap ma jakąś inną "furtkę" niż SSH? (więc wiesz już po co moje pytanie o przesłanie pliku php - qnap)

    No to teraz możesz mnie nakierować :D
    Aby w ogóle SSH miało sens, muszę wiedzieć jak na tym linuksie przejść przez wszystkie potrzebne mi kroki z założenia tematu.
    1. Połączyłem się się z serwerem.
    2. Utworzyłem użytkownika. (jest widoczny w Webowej aplikacji qnap)
    3. Utworzyłem grupę. (też jest widoczna w WEB)
    4. Utworzyłem katalog w /share/MD0_DATA/Users/ (tam tworzą się katalogi gdy zakładam udział sieciowy przez WEB)
    5. Ustawiłem uprawnienia na takie jakie są gdy utworzę go przez WEB
    6. Utworzyłem dowiązanie symboliczne w /share/ do katalogu z pkt 4 (też takie się tworzy przez WEB)
    7. Uprawnienia są OK.

    Po tych czynnościach dalej w WEB nie widzę tego katalogu w 'Shared Folders' (Udziały sieciowe). Czy gdzieś jeszcze coś muszę dodać? (czy może ma jakąś bazę z tymi folderami? może jakiś plik podobny do pliku z userami linuxa czy grupami)

    edit.
    Może jest jakaś usługa, którą należy zrestartować aby katalog był widoczny:>??
     
  10. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    01:58
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    po co ?
    Tak czy owak, parametry te będziesz musiał jakoś wysłać, tak więc może to być ssh2, a może być zwykły GET ze skryptem-serwerem w php. Co w przypadku drugim będziesz musiał dodatkowo dodać własne zabezpieczenia. Nie widzisz tego ? Metodą SSH będzie efektywniej, bezpieczniej a przede wszystkim bez dużego nakładu pracy i nie potrzebnego kombinowania ...

    SSH to nie php. Na qnapie jest zainstalowany normalny php(może nieco okrojony). Nie rozumie ?
    Tak jak mówiłem SSH jest jedną z metod "łączenia się".
    Sam jestem w trakcie pisania rozbudowanego systemu hostingu serwerów gier i do komunikacji z serwerami korzystam właśnie z ssh2.

    Niestety możliwe że nie pojawiają się te informacje w panelu(ma swój system sprawdzania, może ma wlasna baze, tego nie wiemy), bo tak naprawde po co ci potrzebne to że ich widać w panelu ? Ale lepiej dążyć do perfekcji, więc może nie dodałeś wszystkich folderów z nazwą lub informacji do usług, które są związane z udziałem sieciowym(między innymi samba). Bądź nie zrestartowałeś tych usług. Może gdzieś jest plik konfiguracyjny z "bazą" spróbuj poszukać ;)
     
    • Lubię to! Lubię to! x 1

Poleć tę stronę