סקוניל וטנ'גב CGI Gateway תלעפהו SSL תוחתפמ ירושיא תריצי ,םיילאוטריו םיחראמ תריצי


.ךלש םימוחתב רתוי בוט טולשל ידכ Apache רובע תונימז תופסונ תורדגה אלל יסיסבה הנקתהה ךילהת תא התסיכ קר סקוניל וטנ'גב LAMP תנקתה אשונב הנורחאה הכרדהה

.ךלש רתאה לעמ םיטפירקס Bash וא Perl ץירהל לכותש ךכ CGI Gateway י'צפאב שמתשהו HTTP תואקסע לע SSL חטבואמ לוקוטורפ לעפה ,תוחתפמו םירושיא יצבק SSL

    י'צאפא לש םיילאוטריו םיחראמ רוצ :1 בלש

    .י'צאפא לש טנרטניאה תרש תועצמאב וטנ'גב םיילאוטריו םיחראמ רפסמ ליעפהל ןתינ דציכ םיגדהל ידכ ,הפקת DNS תמושר אלל ,היחנה /var/www/gentoo.lan - DocumentRoot -מ םישג

    .ךלש ןיימודה םש םע השדח הרוש ףסוהו הכירעל Gentoo יחראמ ץבוק תא חתפ ,ליחתהל ידכ .1

    $ sudo nano /etc/hosts

    .הזל המוד תואריהל הזל םורגל ץבוקה ףוסב

    127.0.0.1 localhost gentoo
    192.168.1.13  gentoo.lan

    .ולש IP -ה תבותכ תועצמאב ביגהל רומא ןיימודהו גניפ הדוקפה תועצמאב ךלש ףיוזמה םוחתה תא קודב .2

    $ ping -c2 gentoo.lan

    ג .תוארוה ... תרהצה ינפלו /etc/apache2/vhosts.d/ ביתנב םקוממה י'צאפא לש לדחמ תרירבכ םירדגומה םיי

    .(SSL םניאש םירתאל) התוא ללכהו שדח ילאוטריו חראמ רובע ךירדמכ האבה ץבוקה תינבתב שמתשה . ו תרש םש ומכ ךלש תישיא תומאת

    $ sudo nano /etc/apache2/vhosts.d/00_default_vhost.conf
    ## Another Virtual hosts statemes ending in </VirtualHost> ###
    
    <VirtualHost *:80>
            ServerName gentoo.lan
            DocumentRoot "/var/www/gentoo.lan"
                            <Directory "/var/www/gentoo.lan"
                    Options Indexes FollowSymLinks ExecCGI MultiViews
             # AllowOverride controls what directives may be placed in .htaccess files.       
                            AllowOverride All
            # Controls who can get stuff from this server file
                            Order allow,deny
                            Allow from all
            </Directory>
            <IfModule mpm_peruser_module>
                    ServerEnvironment apache apache
            </IfModule>
    </VirtualHost>
    
    ## Another Virtual hosts statemes ###
    ## LAST STATEMENT which closes virtual hosts file ##
    
    </IfDefine>

    .ךירדמכ וב שמתשהל לכות ובש - ילאוטריו חראמ localhost תרדגה לע רמוש םגו םירבסה םע תובר תורעה לבקמ ץבוקה ,הז ץבוק ןכות לש הימדה ידי לע תוארל לוכי התאש יפכ

    .טנרטניאה תרש לש תורוצת תקידבל ןטק PHP ץבוק םג יתרצי .( /var/www/gentoo.lan ל הנוש הז הרקמ לדחמ תרירבכ םייק וניא ביתנהו וזה היחנהה תא תינישש הרקמב DocumentRoot היירפסה תא

    $ sudo mkdir /var/www/gentoo.lan
    $ su "echo '<?php phpinfo(); ?>' > /var/www/gentoo.lan/info.php"
    $ sudo /etc/init.d/apache2 restart

    . http://gentoo.lan/info.php ךלש ילאוטריווה םוחתה םשב וילא עיבצהו ןפדפד חתפ ,הז תא תמאל ידכ .5

    .תופקת DNS תרש תומושרב שמתשמ התאו םימושר ךלש םיניימודה יכ חיטבת טנרטניאל הנופה תיתימא הנוכמ רובע ךא ,י'צאפא לש םיילאוטריו םיחראמ תועצמאב הצרתש לככ SSL םניאש טנרטניא ירתא המכ ףיסוהל לוכי הת

    . 00_default_vhost.conf ץבוקב ... תחת תולולכה ויתוארוה תא קחמ וא הרעה ףסוה טושפ ילאוטריו חראמ ריסהל ידכ

    םיילאוטריו םיחראמ רובע תוחתפמו SSL ירושיא קפה :2 בלש

    SSL םיירטמיסא/םיירטמיס תוחתפמו םירושיא תועצמאב תותשר ךותב וא טנרטניאב חטבואמ תרושקת ץורעב עדימ תפלחהל שמשמה הנפצה לוקוטורפ אוה.

    .SSL -ב ךלש ןיימודה םש תורדגה תרזעב ךירצ התאש המ לכ תא יטמוטוא ןפואב רצויו הדוקפכ שמשמש אבה Bash -ה טפירקסב שמתשה תוחתפמהו םירושיאה תריצי ךילהת תא טשפל ידכ .6

    .האבה הדוקפה תועצמאב Bash טפירקס תריציב לחתה תישאר

    $ sudo nano /usr/local/bin/apache_gen_ssl

    .אבה ץבוקה ןכות תא ףסוה

    #!/bin/bash
    mkdir /etc/apache2/ssl
    cd /etc/apache2/ssl
    echo -e "Enter a name for this certificate:\nEx: mydomain.lan"
    read cert
    
    openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out $cert.key
    chmod 600 $cert.key
    openssl req -new -key $cert.key -out $cert.csr
    openssl x509 -req -days 365 -in $cert.csr -signkey $cert.key -out $cert.crt
    
    echo -e " The certificate $cert has been generated!\nPlease link it to Apache SSL website!"
    ls -all /etc/apache2/ssl/
    exit 0

    .םירושיאו SSL תוחתפמ תריציל ולעפהו עוציב תואשרה וילא ופריצ ,ץבוקה תריצי רחאל .7

    $ sudo chmod +x /usr/local/bin/apache_gen_ssl
    $ sudo apache_gen_ssl

    .FQDN תרשב שמתשה , ץופנ םש ,רתויב בושחה ,שרדנה עדימב רושיאה תא אלמו SSL תורדגה רציימ התא ורובעש םוחת םשה תא ןזה .ךלש םוחתה םש תא ןיזהל ךממ שקבת ,הנושארה םעפב ו

    ./etc/apache2/ssl/ אוה וז הטישב ךלש תוחתפמהו םירושיאה לכ םיחראתמ ובש לדחמה תרירב םוקימ

    .םילק םייונישב /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf ץבוק תכירע םעפה ךא SSL םניאש םיילאוטריו םיחראמ רובע ומכ הטיש התואב שמתשה .חראמ SSL ךרע הווש gentoo.lan רוצ

    .םיאבה םייונישה תא עצבו הכירעל ץבוקה תא חתפ תישאר

    $ sudo nano /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf

    .אבה ןכותה תא ףסוה 443 ןזאה היחנה תחת

    NameVirtualHost *:443

    .תומשו חתפמ ביתנ + השדח SSL תדועת ףסוהו שדח ילאוטריו חראמ רובע האבה תינבתב שמתשה

    ## Another Virtual hosts statemes ending in </VirtualHost> ###
    
    <VirtualHost *:443>
                    ServerName gentoo.lan
        DocumentRoot "/var/www/gentoo.lan"
                    ErrorLog /var/log/apache2/gentoo.lan-ssl_error_log
                    <IfModule log_config_module>
                                    TransferLog /var/log/apache2/gentoo.lan-ssl_access_log
                    </IfModule>
    
                    SSLEngine on
                    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    
    ## Edit with new generated SSL certificate and key and change path to /etc/apache2/ssl/
    
    		SSLCertificateFile /etc/apache2/ssl/gentoo.lan.crt
    		SSLCertificateKeyFile /etc/apache2/ssl/gentoo.lan.key
    
                    <Directory "/var/www/gentoo.lan">
                                    Options Indexes FollowSymLinks ExecCGI MultiViews Includes
                                    AllowOverride All
    			        Order allow,deny
            			Allow from all
                    </Directory>
    
                    <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                    SSLOptions +StdEnvVars
                    </FilesMatch>
    
                    <Directory "/var/www/gentoo.lan ">
                                    SSLOptions +StdEnvVars
                    </Directory>
    
                    <IfModule setenvif_module>
                                    BrowserMatch ".*MSIE.*" \
                                                    nokeepalive ssl-unclean-shutdown \
                                                    downgrade-1.0 force-response-1.0
                    </IfModule>
    
                    <IfModule log_config_module>
                                    CustomLog /var/log/apache2/ssl_request_log \
                                                    "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
                    </IfModule>
    </VirtualHost>
    
    ## Another Virtual hosts statements ###

    .תונורחאה תורהצהה שולש ינפל םייתסהל תובייח םיילאוטריו םיחראמ תורדגה

    </IfModule>
    </IfDefine>
    </IfDefine>

    . https: //gentoo.lan

    $ sudo /etc/init.d/apache2 restart

    . /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf ץבוקב תחת תולולכה היתוארוה תא קחמ וא תורעה ףסוה ,SSL לש םיילאוטריו םיחראמ ריסהל ידכ .Apache לש ילאוטריו יחראמ תועצמאב ם

    CGI קשממ רשפא :3 בלש

    .ךלש רתאל ימניד ןכות ףיסוהל םילוכיש ,BASH וא Perl לש םיטפירקסמ תובכרומה תוינושאר ,תוינוציח תוינכות םע רשקתל י'צאפאל רשפאמ הז ( ףתושמה רעשה קשממ ) CGI ה

    . APACHE2_OPTS הרושב CGI לודומ ףסוהו /etc/conf.d/apache2 ץבוקה תא חתפ ,י'צאפא רובע GCI -ב הכימת רשפאל ידכ . make.conf : cgi cgid USE CGI

    $ sudo nano /etc/conf.d/apache2

    .המוד ןכות שי וז הרושלש אדו

    APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D STATUS -D CGI"

    .ילאוטריווה חראמה תוארוה ךותב אבה ןכותה תא ףסוהו CGI קשממל רשפאל ךנוצרבש ךלש רתאה תרדגה חראמ תא חתפ ,CGI ילודומ תלעפה רחאל .11

    <Directory "/var/www/gentoo.lan">
    	Options Indexes +ExecCGI MultiViews
            AddHandler cgi-script .cgi .pl
    	DirectoryIndex index.cgi index.php index.html index.pl
            AllowOverride All
            Order allow,deny
            Allow from all
    </Directory>

    .םיימניד Bash וא םיילרפ םיטפירקס שיגהל וז היירפסל קוידב רשפאל לכות ,CGI לש םיטפירקס הליכמה DocumentRoot ( /var/www/gentoo.lan/ ) לש ביתנה ךותב היירפס ךל שי םא .12

    ScriptAlias /cgi-bin/ /var/www/gentoo.lan/cgi-bin/
    
    <Location /cgi-bin>
                    Options +ExecCGI
    AddHandler cgi-script .cgi .pl
     DirectoryIndex index.cgi index.php index.html index.pl
    </Location>

    . .shtml ץבוקה תמויס תא ופיסוהו תויורשפא ב ללוכ + הרהצה תא ופיסוה ,(תרשה דצ ללוכ) SSI רובע .13

    <Directory "/var/www/gentoo.lan">
                                    Options Indexes +ExecCGI +Includes
                                    AddHandler cgi-script .cgi .pl
                    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
            DirectoryIndex index.shtml index.cgi index.pl index.php index.html
                    AllowOverride All
                    Order allow,deny
                    Allow from all
    </Directory>

    .(/var/www/gentoo. lan/) ילאוטריו חראמ DocumentRoot ךכותב םיאבה םיטפירקסה תא רוצ ,Apache CGI רעשב .pl .cgi םיטושפ םיטפירקס המכ קודבל ידכ .14

    $ sudo nano /var/www/gentoo.lan/env.pl

    .לרפ לש אבה ןכותה תא ףסוה

    #!/usr/bin/perl
    print "Content-type: text/html\n\n"; foreach my $keys (sort keys %ENV) { print "$keys =
    $ENV{$keys}<br/>\n";
    }
    $ sudo nano /var/www/gentoo.lan/run.cgi

    .Bash לש אבה ןכותה תא ףסוה

    #!/bin/bash
    echo "Content-type: text/html"
    echo ""
    echo "---------------------------------------------------------------------------------"
                  ./env.pl 
    echo "---------------------------------------------------------------------------------"

    .תואבה רתאה תובותכל ךלש ןפדפדה תא הנפהו י'צאפא לש ןומדה תא שדחמ לעפה ,הלעפהל םתוא ךופה ,םיצבקה תריצי רחאל .15

    $ sudo chmod +x /var/www/gentoo.lan/run.cgi
    $ sudo chmod +x /var/www/gentoo.lan/env.pl
    $ sudo /etc/init.d/apache2 restart
    https://gentoo.lan/run.cgi 
    
    OR
    
    https://gentoo.lan/env.pl

    .ךלש הביבסה לכ לע תיברמ הטילשו ךלש תכרעמה יעוציבל תונידע ןונווכ תורדגה םע הקזח םירתא חוריא תמרופטלפל וטנ'ג תא ךופהל לוכי התא וישכע


כל הזכויות שמורות. © Linux-Console.net • 2019-2024