[PHP] Krijg foutmelding op Socket-Create - Root rechten

Pagina: 1
Acties:

Onderwerpen


  • aard01
  • Registratie: Augustus 2006
  • Laatst online: 18:32
Op mijn Synology diskstation heb ik een PHP progje gemaakt met oa het volgende hierin:

$socket = socket_create(AF_INET, SOCK_RAW, 1);

Ik krijg echter de volgende foutmelding:

''Warning: socket_create(): Unable to create socket [1]: Operation not permitted in /volume1/web/test.php on line 78 ''

Ik heb blijkbaar geen rechten om een socket aan te maken.

Kan ik in de Synology ergens opgeven dat ik root-user rechten heb? Ik lees ergens dat ik dan een httpd bestand moet aanpassen? Moet dit via Telnet?

Wie kan mij verder helpen?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 26-12-2025

NMe

Quia Ego Sic Dico.

Weet je zeker dat je hiermee wil rommelen? Root rechten aan PHP of Apache geven is doorgaans een slecht plan (in elk geval als die server web-facing wordt) en ik weet niet of het wel een goed idee is om in configfiles te gaan klooien als je in de eerste instantie al niet zeker weet dat je SSH moet gebruiken om in te loggen op je NAS om die config aan te passen.

Dat gezegd hebbende: is de oplossing zoals die hier omschreven is geen optie?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • SoulWar1
  • Registratie: Augustus 2004
  • Laatst online: 10-01 16:00
Andere type sockets zoals SOCK_STREAM hebben geen root rechten nodig. Heb je SOCK_RAW nodig? Wat probeer je ermee te bereiken?

Know Thyself


  • aard01
  • Registratie: Augustus 2006
  • Laatst online: 18:32
Nog wat meer info:

Ik heb recent zonnepanelen op mijn dak geinstalleerd. Om gegevens te kunnen loggen kan ik met deze omvormer communiceren. Ik heb wat voorbeeld progjes kunnen achterhalen en ben me nu een beetje aan het inlezen.

Om te communiceren met de omvormer moet ik een socket creeren. Vandaar.

Als voorbeeld heb ik hier gekeken:
http://www.php.net/manual....socket-create.php#101012

Als het aan mij ligt rommel ik zo weinig mogelijk met de rechten...

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Je snapt dat die comment je niet laat "communiceren", maar alleen een simpele 'ping' uitvoert om te kijken of de host antwoord teruggeeft? (Wat om meerdere redenen kan gebeuren natuurlijk, misschien pingt die omvormer van jou helemaal niet terug.)

  • aard01
  • Registratie: Augustus 2006
  • Laatst online: 18:32
Klopt, maar hierna gaat het gelukkig nog verder. Ik dacht 'laat ik eerst maar eens pingen voordat ik verder ga kijken'. Maar dat is blijkbaar al een brug te ver (voor mij althans??).

Vanaf de commandline krijg ik overigens gewoon een antwoord als ik mijn omvormer ping.

[ Voor 25% gewijzigd door aard01 op 05-08-2012 16:37 ]


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Grote kans dat je voor dat "verder kijken" géén rootrechten nodig hebt, aangezien je dan waarschijnlijk via een ander protocol werkt ;)

Het programmaatje `ping` heeft dan ook niet voor niets suid-rechten onder Linux om überhaupt als non-root-user te kunnen pingen. Het programmaatje `telnet` echter heeft dat níet nodig. :)

gerjan@server ~ $ ls -l /bin/ping    
-rw[b][u]s[/][/]--x--x 1 root root 34628 Apr  7 19:07 /bin/ping
gerjan@server ~ $ ls -l /usr/bin/telnet 
-rw[b][u]x[/][/]r-xr-x 1 root root 87876 Oct 16  2011 /usr/bin/telnet
gerjan@server ~ $ 

[ Voor 70% gewijzigd door Osiris op 05-08-2012 17:04 ]


  • aard01
  • Registratie: Augustus 2006
  • Laatst online: 18:32
Thanx, ik ga eens een ander protocol proberen...

  • aard01
  • Registratie: Augustus 2006
  • Laatst online: 18:32
Pffffff!! Ik heb het gevonden. In de Synology omgeving (configuratiescherm/webservices/PHP instellingen) is een optie die ik uit moet vinken...

Deze optie heet ''PHP safe_mode_exec_dir toegangsbeperking inschakelen''

Spreekt voor zich, toch? |:(

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 26-12-2025

NMe

Quia Ego Sic Dico.

Eigenlijk wel ja. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1