Web安全入门——LAMP环境搭建


LAMP在Linux下的安装

apt update #检查更新apt源
apt install apache2 mysql-server php -y #安装LAMP
echo<?php phpinfo; ?>” > “/var/www/html/1.php”
service apache start
service mysql start

浏览器打开http:127.0.0.1/1.php可看到正常启动

若mysql无法正常启动可以尝试改用service mysqld start启动

注意

在docker或无systemd的系统上利用Service(/etc/init.d/)进行进程管理,一般Linux中有systemd。

systemd 一般启动命令为systemctl start apache2

apache

php

LAMP使用docker安装

docker run -itd -p 8080:80 --name lamp -v /var/www/html:/var/www/html javanile/lamp:latest

docker exec -it lamp bash 进入容器内部

php

使用ncat手动构造请求访问web

echo “GET / HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n > nc.txt

nc 127.0.0.1 80 <nc.cat

注意

GET请求头的构造和Linux,Windows换行控制字符存在区别:

linux环境下为LF \n ,Windows为CRLF \r\n ,标准GET请求的换行字符为CRLF。在Linux下构造请求头应注意使用 \r\n 代替。如果用Vim编辑请求时应注意行尾回车。

CRLF和LF的差异 - 知乎 (zhihu.com)

使用python访问web

import socket
s = socket.socket()
s.connect(('127.0.0.1',80))
s.send(b'GET / HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n\r\n')
print (s.recv(1024))

Comments

Leave a comment