Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Linux Web

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

Linux-web

yum -y install httpd

rm -f /etc/httpd/conf.d/welcome.conf

vi /etc/httpd/conf/httpd.conf

86 ServerAdmin root@bkap.vn

95 ServerName www.bkap.vn:80

119 DocumentRoot "/bkap"

124 <Directory "/bkap">

131 <Directory "/bkap">

151 AllowOverride All

164 DirectoryIndex index.html

systemctl restart httpd

PHP script

yum -y install php php-mbstring php-pear

vi /etc/php.ini

# line 878: uncomment and add your timezone

date.timezone = "Asia/Ho_Chi_Minh"

systemctl restart httpd

[root@www ~]# vi /var/www/html/index.php


<html>
<body>
<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">
<?php
print Date("Y/m/d");
?>
</div>
</body>
</html>

Với Python:

[root@www ~]# vi /var/www/html/cgi-enabled/index.py


#!/usr/bin/env python

print "Content-type: text/html\n\n"


print "<html>\n<body>"
print "<div style=\"width: 100%; font-size: 40px; font-weight: bold; text-align:
center;\">"
print "Python Script Test Page"
print "</div>\n</body>\n</html>"

chmod 705 /var/www/html/cgi-enabled/index.py

SElinux:

[root@www ~]# chcon -R -t httpd_sys_script_exec_t /var/www/html/cgi-enabled

[root@www ~]# semanage fcontext -a -t httpd_sys_script_exec_t /var/www/html/cgi-enabled

Nếu trong 1 Document root có nhiều index file thì sẽ ưu tiên vào index đứng trước trong dòng 164 file
config của apache

Như hình thì ưu tiên index.html …..

 Web authen

[root@www ~]# vi /etc/httpd/conf.d/auth_basic.conf

# create new

<Directory /var/www/html/auth-basic>
AuthType Basic
AuthName "Basic Authentication"
AuthUserFile /etc/httpd/conf/.htpasswd
require valid-user
</Directory>

# add a user : create a new file with "-c" ( add the "-c" option only for the initial registration )

[root@www ~]# htpasswd -c /etc/httpd/conf/.htpasswd a

[root@www ~]# systemctl restart httpd

[root@www ~]# mkdir /var/www/html/auth-basic

[root@www ~]# vi /var/www/html/auth-basic/index.html

# create a test page


<html>
<body>
<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">
Test Page for Basic Auth
</div>
</body>
</html>

 UserDir

[root@www ~]# vi /etc/httpd/conf.d/userdir.conf

17: # UserDir disabled

24: UserDir public_html

<Directory "/home/*/public_html">

AllowOverride All

Options None

Require method GET POST OPTIONS

</Directory>

[root@www ~]# systemctl restart httpd

su u1

[u1@www ~]$ mkdir public_html

[u1@www ~]$ chmod 711 /home/u1

[u1@www ~]$ chmod 755 /home/u1/public_html

[u1@www ~]$ vi ./public_html/index.html

Virtual host: Name-Based


[root@www ~]# vi /etc/httpd/conf.d/vhost.conf

# create new

# for original domain

<VirtualHost *:80>

DocumentRoot /var/www/html

ServerName www.bkap.vn

</VirtualHost>

# for virtual domain

<VirtualHost *:80>

DocumentRoot /home/u1/public_html

ServerName www.abc.com
ServerAdmin webmaster@abc.com

ErrorLog logs/abc.com-error_log

CustomLog logs/abc.com-access_log combined

</VirtualHost>

systemctl restart httpd

Virtual Host IP-Based


[root@www ~]# vi /etc/httpd/conf.d/vhost.conf

<VirtualHost 192.168.116.100:80>

DocumentRoot /var/www/html

ServerName www.bkap.vn

</VirtualHost>

# for virtual domain

<VirtualHost 192.168.116.101:80>

DocumentRoot /home/u1/public_html

ServerName www.abc.com

ServerAdmin webmaster@abc.com

ErrorLog logs/abc.com-error_log

CustomLog logs/abc.com-access_log combined

</VirtualHost>

Add Virtual IP cho máy:

cd /etc/sysconfig/network-scripts/

cp ifcfg-ens33 ifcfg-ens33:1

vi ifcfg-ens33:1
(sửa Name: ens33:1 và IPADDR 101

Port Based

Dòng 41 trong file httpd.conf


Listen 192.168.1.42:80
Listen 192.168.1.43:8080

 Redirect URL

vi /etc/httpd/conf/httpd.conf

 Alias

vi /etc/httpd/conf.d/alias.conf

<VirtualHost *:80>

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html
Alias /test "/home/u1/test"

<Directory /home/u1/test>

Options FollowSymLinks

AllowOverride None

Require all granted

</Directory>

</VirtualHost>HTTPs

vi /etc/httpd/conf/httpd.conf

95 ServerName www.abc.com:80

Cài SSL:
yum -y install mod_ssl
cd /etc/pki/tls/certs
Tạo PrivateKey:
make server.key
Enter pass phrase: 123456
Verifying - Enter pass phrase:123456
Export PrivateKey
openssl rsa -in server.key -out server.key
Enter pass phrase for server.key: 123456
Tạo Request Key:
[root@www certs]# make server.csr
Country Name (2 letter code) [XX]:VN
State or Province Name (full name) []: HBT
Locality Name (eg, city) [Default City]:HN
Organization Name (eg, company) [Default Company Ltd]:BKAP
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:www.bkap.vn
Email Address []:u1@bkap.vn
A challenge password []: Enter
An optional company name []:Enter

Gửi Request xin cấp Key:

openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 3650
Vậy đến bước này ta đã có publickey: server.cer và PrivateKey: server.key

Tiếp theo vào file cấu hình SSL:


vi /etc/httpd/conf.d/ssl.conf
59: DocumentRoot "/var/www/html"
60: ServerName www.bkap.vn:443
100: SSLCertificateFile /etc/pki/tls/certs/server.crt
107: SSLCertificateKeyFile /etc/pki/tls/certs/server.key

Tạo file index.html


vi /var/www/html/index.html
chmod 755 /var/www/html/index.html
Cấu hình firewall:
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
Test thử:
Để test thử trên máy Windows 10, ta copy publicKey: server.cer từ web sang rồi thực hiện trust
cho w10
Thực hiện đăng ký tên miền (nếu ko thì vào file hosts của w10 thêm:
192.168.116.100 www.bkap.vn
 Web động
LAMP
Update yum:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-
1.el7.nux.noarch.rpm
Xóa các file default:
rm -rf /var/www/html/*
rm -rf /etc/httpd/conf.d/welcome.conf
Cấu hình file httpd.conf
95 ServerName www.bkap.vn:80
151 AllowOverride All
164 DirectoryIndex index.html index.php
systemctl start httpd
Cấu hình Firewall:
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
Cài PHP:
yum install php php-mysql php-pdo php-gd php-mbstring
Tạo info.php để xem thông tin:
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
systemctl restart httpd
vi /etc/php.ini
878 date.timezone = Asia/Ho_Chi_Minh
Cài Mariadb:
yum install mariadb-server mariadb
systemctl start mariadb

Cấu hình user quản trị mariadb:


mysql_secure_installation
set root password? (Y/n) y
Login thử bằng user root vào DB:
mysql -u root -p
pass: 123456
>show databases xem databases default
>quit
Cài phpMyAdmin
yum install phpMyAdmin -y
gedit /etc/httpd/conf.d/phpMyAdmin.conf
Xóa hết và cấu hình như sau:
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory /usr/share/phpMyAdmin/>
AllowOverride None
Options None
Require all granted
</Directory>
systemctl restart httpd
Vào trình duyệt: http://192.168.116.100/phpmyadmin/
Login: root pass:123456
Vào tab Databasescreate databases: bkap
Vào tab Users  add user: bkap ; local host
Download Wordpress: https://wordpress.org/download/
Giải nén và copy toàn bộ các đối tượng trong thư mục wordpress vào /var/www/html
chmod 755 -R /var/www/html/
cấu hình map wp-config.php vào database bkap
cd /var/www/html/
mv wp-config-sample.php wp-config.php
vi wp-config.php
systemctl restart httpd
Truy cập link: http://192.168.116.100
Tạo user: Admin pass:…… (đây là user quản trị wp)
OK!
 Nginx

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-


1.el7.nux.noarch.rpm

yum --enablerepo=epel -y install nginx

vi /etc/nginx/nginx.conf
dòng 41 server_name www.bkap.vn;

rm -rf /usr/share/nginx/html/*

vi /usr/share/nginx/html/index.html

systemctl start nginx

firewall-cmd --add-service=http --permanent

firewall-cmd --reload

 NGINX REVERSE PROXY

Trên máy LPI02:

www.bkap.vn

vi /etc/httpd/conf/httpd.conf

95 ServerName www.bkap.vn:80

151 All

196 LogFormat "\"%{X-Forwarded-For}i\" %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-


Agent}i\"" combined

rm -rf /etc/httpd/conf.d/welcome.conf

rm -rf /var/www/html/*

vi /var/www/html/index.html

systemctl stop firewalld.service

systemctl start httpd

LPI01:
Cấu hình DNS:
yum install bind -y
copy các file DNS:
cấp phép cho các file
systemctl start named
systemctl stop firewalld.service
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-
1.el7.nux.noarch.rpm
yum --enablerepo=epel -y install nginx
gedit /etc/nginx/nginx.conf
thay thế:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.bkap.vn;

proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;

location / {
proxy_pass http://bkad-lpi-02.bkap.vn/;
}
}
systemctl start nginx
proxy_set_header Host $host; sẽ đơn giản set lại host header bằng đúng host header của
request đến và thế là backend server sẽ biết được phải làm gì với các forwarded request này.

proxy_set_header X-Real-IP $remote_addr; X-Real-IP là một trường cho biết IP của client đã
kết nối đến proxy. Dòng cấu hình trên sẽ đặt IP của client vào trừong X-Real-IP trong request
được forward đến backend server

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; X-Forwarded-For là một


trường cho biết danh sách gồm client ip và các proxy ip mà request này đã đi qua. Trường hợp
có một proxy thì giá trị trường này cũng giống X-Real-IP. Dòng cấu hình trên sẽ đặt IP của
client vào trừong X-Forwarded-For trong request được forward đến backend server

You might also like