per http ein programm auf dem server ausführen

Das hat nix mit dem Ablegen von Daten zu tun. Wenn du, und nur du, Zugriff auf den Server von außen haben willst, dann rate ich dir, z.B. mit VPN zu arbeiten. Dann hast nur du Zugriff und kannst dich von außen in dein Netz einbinden und auf deinen Webserver zugreifen.

Meist geht es darum, dass Server ungeschützt im Netz sind und dann relativ leicht gehackt werden können, um dann eben böse Software zu installieren => Missbrauchsgefahr für Viren/Spamversand. Und dann musst du haften und ggf. bezahlen.

Aber ich denke du hast das schon eingesehen. Probiere soviel wie möglich und schau die vor allem das Thema Sicherheit an. Mit FreeBSD hast du ja schonmal den richtigen Schritt getan ;)
 
so ricchtig will das ganze eh noch nicht mus ich für die datei die ich per script aufrufe auch noch die rechte erhöhen ? bekomme folgende fehlermeldung im Browser:
The server encountered an internal error or
misconfiguration and was unable to complete
your request

mein script sie so aus wie von Blue-dev

#!/usr/bin/ perl -w
use CGI::Carp qw(fatalsToBrowser);
system("mb_tcpclient 192.168.0.137 502 255 write_coil 0 1");

<?php geht nicht da meldet er:
cannot open ?php: No su file or directory

gehe von aus das php nicht im grunssystem drin ist und per ports nachinstalliert werden müste oder ?
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Das hat nix mit dem Ablegen von Daten zu tun. Wenn du, und nur du, Zugriff auf den Server von außen haben willst, dann rate ich dir, z.B. mit VPN zu arbeiten. Dann hast nur du Zugriff und kannst dich von außen in dein Netz einbinden und auf deinen Webserver zugreifen.

Meist geht es darum, dass Server ungeschützt im Netz sind und dann relativ leicht gehackt werden können, um dann eben böse Software zu installieren => Missbrauchsgefahr für Viren/Spamversand. Und dann musst du haften und ggf. bezahlen.

Aber ich denke du hast das schon eingesehen. Probiere soviel wie möglich und schau die vor allem das Thema Sicherheit an. Mit FreeBSD hast du ja schonmal den richtigen Schritt getan ;)

:-) also am liebsten wäre mir nen webserver mit dem kleinsten speicher und wo ich nur diese einewebseite draufablege :-) und natürlich so sicher wie möglich , versteht sich doch *g*
 
Zuletzt bearbeitet:
PHP musst du nachinstallieren, richtig. Würde ich dir aber hierfür nicht empfehlen. Perl ist für sowas besser meiner Meinung nach.

Wie ist dein Apache konfiguriert? Dein Skript sollte im Verzeichnis /cgi-bin liegen und braucht lediglich Ausführungsrechte für den Webserver-User.

Schau dir vielleicht mal folgende Links an (sorry für die Eigenwerbung):
Firewall
Jails
Apache
Server aktuell halten

Schau dir das mal an, vielleicht hilft dir das für den Einstieg ja weiter.
 
PHP musst du nachinstallieren, richtig. Würde ich dir aber hierfür nicht empfehlen. Perl ist für sowas besser meiner Meinung nach.

Wie ist dein Apache konfiguriert? Dein Skript sollte im Verzeichnis /cgi-bin liegen und braucht lediglich Ausführungsrechte für den Webserver-User.

Schau dir vielleicht mal folgende Links an (sorry für die Eigenwerbung):
Firewall
Jails
Apache
Server aktuell halten

Schau dir das mal an, vielleicht hilft dir das für den Einstieg ja weiter.
der script test.cgi liegt im cgi-bin des apache22 servers. und chmod aus rc.conf habe ich nu rausgenommen nicht zuviel drin lassen wenn es nicht braucht. der script serlber funktioniert auch wenn ich ihn direkt aufen server aufrufe. Ich schaue mir mal deine links an habe auch gerade mal bei Wikki nach VPN geschaut , da steht das freebsd Ipsec automatisch mitliefert. Das gante mus ich mir aber später mal in ruhe anschauen, glaube es ist besser ein teil nach dem anderen und nicht zuviel auf mal anzugehen. Wenn die sicherheit nicht da ist geht der rechner eh nicht öffentlich. das wichtigste ist die webseite im localen netz zu haben und das sie da funktioniert.
PHP mus ich nicht drauf haben möchte soweinig wie möglich (auser von der sicherheit) auf dem rechner installiert haben.
 
Zuletzt bearbeitet:
Kannst du mal die VHost-Konfiguration aus der httpd.conf hier posten (bitte in Code-Tags)?

Schau auch mal in die error_log von deinem Apache. Da steht normalerweise drin was fehlt.
 
Zuletzt bearbeitet:
Kannst du mal die VHost-Konfiguration aus der httpd.conf hier posten (bitte in Code-Tags)?

Schau auch mal in die error_log von deinem Apache. Da steht normalerweise drin was fehlt.

Welchen teil möchtest du genau haben ? ich gehe von aus wenn ich die komplette textdatei hier rausgebe ann meckern welche *g*
 
Nur den Teile:
<VirtualHost...></VirtualHost>

und den Teil der Logfile, der zu dem Zeitpunkt geschrieben wurde, also du zuletzt das Skript über den Browser aufgerufen hast.

Schreibe ein [ code] [ /code] außenrum, dann meckert keiner.
 
Das steht auch in der httpd.conf. Da is irgendwo ein Pfad diesbezüglich... Meist im VHost-Bereich oder wenn du nur ne allgemeine hast, dann irgendwo anders. Aber es steht drin.

Ansonsten such mal unter /var/log/error*
 
[Sun Jul 08 14:41:39 2007] [error] [client 192.168.0.100] [Sun Jul 8 14:41:39 2007] test.cgi: Can't exec "mb_tcpclient": No such file or directory at /usr/local/www/apache22/cgi-bin/test.cgi line 3., referer: http://192.168.0.110/
[Sun Jul 08 14:41:39 2007] [error] [client 192.168.0.100] Premature end of script headers: test.cgi, referer: http://192.168.0.110/
[Sun Jul 08 14:41:44 2007] [error] [client 192.168.0.100] [Sun Jul 8 14:41:44 2007] test.cgi: Can't exec "mb_tcpclient": No such file or directory at /usr/local/www/apache22/cgi-bin/test.cgi line 3., referer: http://192.168.0.110/
[Sun Jul 08 14:41:44 2007] [error] [client 192.168.0.100] Premature end of script headers: test.cgi, referer: http://192.168.0.110/

mb_tcpclient kann ich aber aufen server aus jedem verzeichnis aufrufen weis nicht warum er hier nun No su file schreibt. mb_tcpclient befindet sich aber nicht im cgi-bin des apache.

#
# "/usr/local/www/apache22/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/usr/local/www/apache22/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

#
# DefaultType: the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value. If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
DefaultType text/plain

<IfModule mime_module>
#
# TypesConfig points to the file containing the list of mappings from
# filename extension to MIME-type.
#
TypesConfig etc/apache22/mime.types

#
# AddType allows you to add to or override the MIME configuration
# file specified in TypesConfig for specific file types.
#
#AddType application/x-gzip .tgz
#
# AddEncoding allows you to have certain browsers uncompress
# information on the fly. Note: Not all browsers support this.
#
#AddEncoding x-compress .Z
#AddEncoding x-gzip .gz .tgz
#
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

#
# AddHandler allows you to map certain file extensions to "handlers":
# actions unrelated to filetype. These can be either built into the server
# or added with the Action directive (see below)
#
# To use CGI scripts outside of ScriptAliased directories:
# (You will also need to add "ExecCGI" to the "Options" directive.)
#
#AddHandler cgi-script .cgi

# For type maps (negotiated resources):
#AddHandler type-map var

#
# Filters allow you to process content before it is sent to the client.
#
# To parse .shtml files for server-side includes (SSI):
# (You will also need to add "Includes" to the "Options" directive.)
#
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
</IfModule>

#
# The mod_mime_magic module allows the server to use various hints from the
# contents of the file itself to determine its type. The MIMEMagicFile
# directive tells the module where the hint definitions are located.
#
#MIMEMagicFile etc/apache22/magic

#
# Customizable error responses come in three flavors:
# 1) plain text 2) local redirects 3) external redirects
#
# Some examples:
#ErrorDocument 500 "The server made a boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html
#

#
# EnableMMAP and EnableSendfile: On systems that support it,
# memory-mapping or the sendfile syscall is used to deliver
# files. This usually improves server performance, but must
# be turned off when serving from networked-mounted
# filesystems or if support for these functions is otherwise
# broken on your system.
#
#EnableMMAP off
#EnableSendfile off

# Supplemental configuration
#
# The configuration files in the etc/apache22/extra/ directory can be
# included to add extra features or to modify the default configuration of
# the server, or you may simply copy their contents here and change as
# necessary.

# Server-pool management (MPM specific)
#Include etc/apache22/extra/httpd-mpm.conf

# Multi-language error messages
#Include etc/apache22/extra/httpd-multilang-errordoc.conf

# Fancy directory listings
#Include etc/apache22/extra/httpd-autoindex.conf

# Language settings
#Include etc/apache22/extra/httpd-languages.conf

# User home directories
#Include etc/apache22/extra/httpd-userdir.conf

# Real-time info on requests and configuration
#Include etc/apache22/extra/httpd-info.conf

# Virtual hosts
#Include etc/apache22/extra/httpd-vhosts.conf

# Local access to the Apache HTTP Server Manual
#Include etc/apache22/extra/httpd-manual.conf

# Distributed authoring and versioning (WebDAV)
#Include etc/apache22/extra/httpd-dav.conf

# Various default settings
#Include etc/apache22/extra/httpd-default.conf

# Secure (SSL/TLS) connections
#Include etc/apache22/extra/httpd-ssl.conf
#
# Note: The following must must be present to support
# starting without SSL on platforms with no /dev/random equivalent
# but a statically compiled-in mod_ssl.
#
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

Include etc/apache22/Includes/*.conf
hoffe das ist nicht nun zu groß und da ist alles drin was du brauchst
 
Gib mal auf der Konsole folgendes ein:
whereis mb_tcpclient

Das gibt dir dann einen Pfad aus, etwa /usr/local/bin/mb_tcpclient

Dann änderst du in deinem Skript mb_tcpclient auf den kompletten Pfad.
Probiere es dann nochmal.
 
Gib mal auf der Konsole folgendes ein:
whereis mb_tcpclient

Das gibt dir dann einen Pfad aus, etwa /usr/local/bin/mb_tcpclient

Dann änderst du in deinem Skript mb_tcpclient auf den kompletten Pfad.
Probiere es dann nochmal.

Danke also das funktioniert nun wuste nicht das man den ganzen pfad angeben muste weil der script an der console ja ging.

diese Fehler meldung bekomme ich aber aufen Browser immer noch:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>500 Internal Server Error</title>
</head><body>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error or
misconfiguration and was unable to complete
your request.</p>
<p>Please contact the server administrator,
********** and inform them of the time the error occurred,
and anything you might have done that may have
caused the error.</p>
<p>More information about this error may be available
in the server error log.</p>
</body></html>
in der error log steht
[Sun Jul 08 16:27:44 2007] [error] [client 192.168.0.100] Premature end of script headers: test.cgi, referer: http://192.168.0.110/

mus ich der datei noch weiter rechte zuordnen ?
 
Probier mal die Rechte auf 755 zu setzen.

Womit hast du das Skript geschrieben? In FreeBSD auf der Konsole oder unter Windows?
 
Probier mal die Rechte auf 755 zu setzen.

Womit hast du das Skript geschrieben? In FreeBSD auf der Konsole oder unter Windows?

also laut ls -al sind die rechte auf
- rwxr-xr-x 1 root wheel 133 jul 8 16:59 test.cgi
meine vorhin gelesen zuhaben das wäre 755 oder ?

ich schreib alles direkt auf der honsole von Freebsd, habe schon mitbekommen das teils zeilenumbrüche von windows probleme machen können.
 
Unter welchem Benutzer und Gruppe läuft dein Apache?
 
Dann mach mal:

chown www:www test.cgi
 
Dann mach mal:

chown www:www test.cgi

ist diese befehl denn auch nur einmal auszuführen wie chmod ?
also gebracht hat er nichts nun ist laut ls -al nicht mehr root wheel sondern www www

aber die fehlermedlung bleibt

wenn ich über google suche steht meist immer nur was mit den zeilenumbrüchen drin
 
chown heißt "Change Owner". Du solltest dir das Rechtesystem mal ansehen unter BSD.
Du hast einen dreistelligen Rechte-Wert (eigentlich vierstellig, aber das braucht dich jetzt erstmal nicht zu interessieren).
1. Zahl: Rechte des Besitzers
2. Zahl: Rechte der Gruppe
3. Zahl: Rechte von anderen (weder Benutzer noch Gruppe)

Und du hast demnach Besitzer und Gruppe je Datei.

Zu deinem Problem gehen mir langsam die Ideen aus ;)

Füge mal das ein nach #!/...

use CGI::Carp qw(fatalsToBrowser);

Schau auch mal hier: http://htmlfixit.com/cgi-tutes/tuto...ror_messages_and_what_they_mean.php#premature

ist diese befehl denn auch nur einmal auszuführen wie chmod ?
Denk nochmal drüber nach ;)
 
Zuletzt bearbeitet:
chown heißt "Change Owner". Du solltest dir das Rechtesystem mal ansehen unter BSD.
Du hast einen dreistelligen Rechte-Wert (eigentlich vierstellig, aber das braucht dich jetzt erstmal nicht zu interessieren).
1. Zahl: Rechte des Besitzers
2. Zahl: Rechte der Gruppe
3. Zahl: Rechte von anderen (weder Benutzer noch Gruppe)

Und du hast demnach Besitzer und Gruppe je Datei.

Zu deinem Problem gehen mir langsam die Ideen aus ;)

Füge mal das ein nach #!/...

use CGI::Carp qw(fatalsToBrowser);

Schau auch mal hier: http://htmlfixit.com/cgi-tutes/tuto...ror_messages_and_what_they_mean.php#premature


Denk nochmal drüber nach ;)

mir sind schon lange die ideen ausgegangen *gg* spaß beiseite da mus ich durch. gibt es denn groß gesagt eine andere möglichkeit sowas zu steuern per web/http meine mal auch was gelesen zuhaben von xml-rpc.
Ich danke dir zumindest erstmal schon für die viele Hilfe von dir. komisch ist es ja nur das der script ausgeführt wird aber die meldung dennoch kommt

use CGI::Carp qw(fatalsToBrowser);
habe ich schon inder zweiten zeile drin
 

Ähnliche Themen

VHOST Problem, Debian Lenny

OS X SSH bereit machen

opensuse11 kabelgebundenes netzwerk geht aber lädt keine seiten

Squid nur zum maskieren der eigenen IP, nicht für Webserver auf port 80

Server einrichten

Zurück
Oben