本次lamp的搭建是在ubuntu 14.04 LTS下完成的。
搭建前,先进入root模式。
sudo su
输入密码进入root。
1.安装mysql5
apt-get install mysql-server mysql-client
在红色区域设置mysql密码。
2.安装apache2
apt-get install apache2
安装成功后,在浏览器输入127.0.0.1,会看到Apache默认界面。
3.安装php5
apt-get install php5 libapache2-mod-php5
安装完成后重启apache。
/etc/init.d/apache2 restart
www文件夹默认权限不足,修改下权限。
chmod -R 777 /var/www
然后写个简单的php测试一下,成功运行即安装成功。
4.php获得MySQL支持
apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
安装完成后重启apache。
/etc/init.d/apache2 restart
5.安装phpmyadmin
apt-get install phpmyadmin
然后将创建一个链接:
ln -s /usr/share/phpmyadmin /var/www
apache 开启伪静态
1.先执行加载rewrite模块
sudo a2enmod rewrite
2.打开Apache2.conf,
sudo vi /etc/apache2/apache2.conf
寻找到一下代码:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
改成
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
注意:如果有开两个虚拟服务器的话这边设置完成后,服务器上面的虚拟主机都会开启了伪静态。
3.将站点根目录上传编辑好的.htaccess 这个文件一般情况写整列就OK了!
4.重启一下服务!
service apache2 restart
OK.接下来安装CTFD环境
1.安装git
sudo apt install git
2.安装pip
sudo apt install python-pip
3.安装Flask
sudo pip install Flask
PS:这几步若是出现了什么依赖关系balabala,可以updata升级一下,然后根据提示升级或者降级一些相关包。
4.下载CTFd
sudo git clone https://github.com/isislab/CTFd.git
5.安装CTFd
cd CTFd
sudo ./prepare.sh
sudo python serve.py
PS:中间可能会出现各种问题,比如缺少一些文件等,看它反馈,然后安装上就好了。
访问IP 127.0.0.1:4000 即可。
6.安装gunicorn
完成以上步骤只是在本地搭起服务器,要是想在公网访问,还需要安装gunicorn。
PS:安利git上CTFd的Deployment:https://github.com/CTFd/CTFd/wiki/Deployment
pip install gunicorn
sudo gunicorn --bind 0.0.0.0:8000 -w 4 "CTFd:create_app()"
这样CTFd平台基本是搭建完成了,但是为了更好的后端操作,最好还需要建个docker当作容器来存放题目,建个mysql数据库更方便进行数据管理等等。