Hello,

je cherche à éxécuter un cgi avec des droits root. Je sais qu'il existe suexec, mais je ne comprends pas trop comment l'employer. Quelqu'un a des précisions ou une autre technique ?

Mon fichier default-server.conf

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
 
# 
# Global configuration that will be applicable for all virtual hosts, unless # deleted here, or overriden elswhere. 
# 
 
DocumentRoot "/srv/www/htdocs" 
 
# 
# Configure the DocumentRoot 
# 
<Directory "/srv/www/htdocs"> 
   # Possible values for the Options directive are "None", "All", 
   # or any combination of: 
   #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews 
   # 
   # Note that "MultiViews" must be named *explicitly* --- "Options All" 
   # doesn't give it to you. 
   # 
   # The Options directive is both complicated and important.  Please see 
   # http://httpd.apache.org/docs-2.0/mod/core.html#options 
   # for more information. 
   Options None 
   # AllowOverride controls what directives may be placed in .htaccess files. 
   # It can be "All", "None", or any combination of the keywords: 
   #   Options FileInfo AuthConfig Limit 
   AllowOverride None 
   # Controls who can get stuff from this server. 
   Order allow,deny 
   Allow from all 
</Directory> 
 
# Aliases: aliases can be added as needed (with no limit). The format is # Alias fakename realname # # Note that if you include a trailing / on fakename then the server will # require it to be present in the URL.  So "/icons" isn't aliased in this # example, only "/icons/".  If the fakename is slash-terminated, then the # realname must also be slash terminated, and if the fakename omits the # trailing slash, the realname must also omit it. 
# 
# We include the /icons/ alias for FancyIndexed directory listings.  If you # do not use FancyIndexing, you may comment this out. 
# 
Alias /icons/ "/usr/share/apache2/icons/" 
 
<Directory "/usr/share/apache2/icons"> 
   Options Indexes MultiViews 
   AllowOverride None 
   Order allow,deny 
   Allow from all 
</Directory> 
 
# ScriptAlias: This controls which directories contain server scripts. 
# ScriptAliases are essentially the same as Aliases, except that # documents in the realname directory are treated as applications and # run by the server when requested rather than as documents sent to the client. 
# The same rules about trailing "/" apply to ScriptAlias directives as to # Alias. 
# 
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" 
 
# "/srv/www/cgi-bin" should be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. 
# 
<Directory "/var/www/cgi-bin"> 
   AllowOverride None 
   Options +ExecCGI -Includes 
   Order allow,deny 
   Allow from all 
</Directory> 
 
# UserDir: The name of the directory that is appended onto a user's home # directory if a ~user request is received. 
# 
# To disable it, simply remove userdir from the list of modules in APACHE_MODULES # in /etc/sysconfig/apache2. 
# 
<IfModule mod_userdir.c> 
   # Note that the name of the user directory ("public_html") cannot simply be 
   # changed here, since it is a compile time setting. The apache package 
   # would have to be rebuilt. You could work around by deleting 
   # /usr/sbin/suexec, but then all scripts from the directories would be 
   # executed with the UID of the webserver. 
   UserDir public_html 
   # The actual configuration of the directory is in 
   # /etc/apache2/mod_userdir.conf. 
   Include /etc/apache2/mod_userdir.conf 
   # You can, however, change the ~ if you find it awkward, by mapping e.g. 
   # http://www.example.com/users/karl-heinz/ --> /home/karl-heinz/public_html/ 
   #AliasMatch ^/users/([a-zA-Z0-9-_.]*)/?(.*) /home/$1/public_html/$2 </IfModule> 
 
 
# Include all *.conf files from /etc/apache2/conf.d/. 
# 
# This is mostly meant as a place for other RPM packages to drop in their 
# configuration snippet. 
# 
# You can comment this out here if you want those bits include only in a 
# certain virtual host, but not here. 
# 
Include /etc/apache2/conf.d/*.conf 
 
# The manual... if it is installed ('?' means it won't complain) 
Include /etc/apache2/conf.d/apache2-manual?conf