DAMP环境搭建详解(物理机)
DAMP——Debian Apache2 Mysql PHP5
软件名称 | 版本 | 文件名称 |
Debian | 5.0 | |
Apache | 2.0 |
|
Mysql | 5.0.56 |
|
PHP5 | 5.0 |
|
1. 配置静态IP地址
vi /etc/network/interfaces
例:
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.1.201
netmask 255.255.255.0
network 192.168.1.0
gateway 192.168.1.1
dns-nameservers 218.85.157.99
2. 配置IP、网关、DNS
ifconfig lo [你要配置的IP地址] netmask [当前网段的子网掩码地址]——配置IP地址
route add default gw [网关IP地址]——配置网关
echo nameserver [DNS服务器IP地址] > /etc/resolv.conf ——配置DNS
例:
ifconfig lo 192.168.1.201 netmask 255.255.255.0——配置IP地址
route add default gw 192.168.1.1——配置网关
echo nameserver 218.85.157.99 > /etc/resolv.conf——配置DNS
3. 重启debian使得IP地址生效
reboot
4. 修改debian更新的源(大部分的软件在Debian的安装光盘中均有提供)
#备份一下软件源
cp /etc/apt/sources.list /etc/apt/sources.list_bak
vi /etc/apt/sources.list
源内容可以在网上找,以下是国内可供参考的源
# 网易163更新服务器:
deb http://mirrors.163.com/debian/ squeeze main non-free contrib
deb http://mirrors.163.com/debian/ squeeze-proposed-updates main non-free contrib
deb http://mirrors.163.com/debian lenny main contrib non-free
deb-src http://mirrors.163.com/debian/ squeeze main non-free contrib
deb-src http://mirrors.163.com/debian/ squeeze-proposed-updates main non-free contrib
deb-src http://mirrors.163.com/debian lenny main contrib non-free
# sohu 更新服务器:
deb http://mirrors.sohu.com/debian/ lenny main non-free contrib
deb http://mirrors.sohu.com/debian/ lenny-proposed-updates main non-free contrib
deb-src http://mirrors.sohu.com/debian/ lenny main non-free contrib
deb-src http://mirrors.sohu.com/debian/ lenny-proposed-updates main non-free contrib
5. 测试DNS、源是否能够正常通信
ping [DNS服务器IP地址]
ping [源名称]
例:
ping 218.85.157.99——ping DNS
ping mirrors.163.com——ping主要更新的源
6. 更新debian
apt-get update
apt-get upgrade
7. 远程登录(安装openssh服务器和putty远程登陆客户端)
apt-get install openssh-server
apt-get install putty
8. 安装samba服务
1) apt-get install samba
2) 配置文件 vi /etc/samba/smb.conf
3) 按如下配置修改smb.conf文件
[global]
workgroup =
server string = %h server
log file = /var/log/samba/log.%m
refresh = 1
max log size = 1000
syslog = 0
encrypt passwords = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter/snew/Sunix/spassword:* %n/n *Retype/snew/sUNIX/spassword:* %n/n *password/supdated/ssuccessfully*.
socket options = TCP_NODELAY
[tmp]
comment = Temporary file space
path = /tmp
read only = no
public = yes
#[homes]
# comment = Home Directories
browseable = no
writable = yes
create mask = 0700
directory mask = 0700
# valid users = %s
[debian]
comment = debian
browseable = yes
read only = no
writable = yes
valid users = root
path = /
[www]
comment = debian
browseable = yes
read only = no
writable = yes
valid users = root
path = /var/www
4) 测试配置testparm
5) 重启samba服务。/etc/init.d/samba restart
6) 创建用户密码文件。touch /etc/samba/smbpasswd
7) 创建用户:smbpasswd –a [用户名]。用户名推荐用root
8) 输入密码完成创建
9) 在window输入IP访问
9. 安装GCC、G++、libnet环境
apt-get install build-essential
apt-get install flex byacc bison
apt-get install libnids-dev
10. 安装apache2.0
apt-get install apache2-mpm-prefork
vi /etc/apache2/apache2.conf
添加以下两行配置
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
11. 安装mysql5.0
1.1 从服务器上安装mysql5.0(无需使用mysql相关头文件和库编译其他的应用程序仅执行该步骤,可跳过第二步骤)
apt-get install mysql-server-5.0 mysql-common mysql-client
1.2 再手动安装mysql5.0.56(由于需要编译收发程序,必须使用二进制包安装,否则无法完成编译)
1) 安装前置包libncurses5和libncurses5-dev
apt-get install libncurses5 libncurses5-dev
2) 解压mysql-5.0.56:tar –xzvf mysql-5.0.56.tar.gz
3) 进入解压目录 cd /mysql-5.0.56
4) 配置安装信息:
./configure --prefix=/usr/local/mysql/ --without-debug --without-bench --enable-thread-safe-client --enable-assembler --with-mysqld-ldflags=-all-static --with-charset=gbk --with-extra-charset=gbk --with-innodb --with-fedarated-storage-engine --with-mysqld-user=mysql --without-embedded-server --with-server-suffix=-community --with-unix-socket-path=/usr/local/mysql/sock/mysql.sock
5) 安装:make && make install
如果已使用服务器方式直接安装过mysql相关组件,无需执行以下安装步骤
6) 添加mysql root用户密码
/usr/local/mysql/bin/mysqladmin –u root password ‘你的密码’
7) 收尾设置:cp support-files/my-medium.cnf /etc/mysql/my.cnf
cd /usr/local/mysql
chown –R mysql .
chgrp –R mysql .
8) 添加启动文件 cp ./support-files/mysql.server /etc/init.d/mysql
1.3 mysql远程连接配置
编辑/etc/mysql/my.cnf文件:vi /etc/mysql/my.cnf
开发者模式:
1) 登陆数据库:mysql –u root –p;
2) 输入密码;
3) 修改数据库mysql的user表中的其中一个user=root,host=localhost的host=%。
步骤:
a) 在debian下输入mysql –u root –p命令,在输入对应的用户密码,登录至mysql。SQL:use mysql切换数据库。
b) 查看用户对应的主机与密码。SQL:select user,host,password from user;
c) 更改主机名。
SQL:update user set password=old_password(‘zsdinfo’) where user=’root’;
d) 再次查看是否更改成功。SQL:select user,host,password from user;
e) 退出mysql。输入命令:quit。
4) 修改mysql开发者模式与用户模式。
开发者模式配置
a) 编辑配置文件。vi /etc/mysql/my.cnf
b) 注释bind-address、skip-external-locking与skip-innodb,注释符‘#’。
c) 重启mysql服务或重新加载配置文件。
重启服务:/etc/init.d/mysql restart
重新加载配置:/etc/init.d/mysql reload
用户模式配置
a) 找到bind-address行,去掉前面的注释符‘#’。如果注释该行无效,可以将skip-external-locking与skip-innodb行前方的注释符‘#’去掉。
b) 重启mysql服务或者重新加载配置文件。
重启服务:/etc/init.d/mysql restart
重新加载配置:/etc/init.d/mysql reload
c) 远程连接mysql服务器。
d) 连接成功后,在远程客户端安装Navicat Premium9.0版本,再按照mysql相关配置手册导入*.sql脚本即完成数据库配置。
1.4 忘记mysql密码的解决办法(第一次登陆mysql时无法登陆mysql可使用该方法登陆)
使用Mysql提供的跳过访问控制的命令行参数:
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
即可跳过Mysql的访问控制,任何人都可以在控制台以管理员身份进入Mysql数据库
1) 先停止Mysql服务:/etc/init.d/mysql stop
2) mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
3) mysql –u root -p
4) use mysql;
5) 更改用户密码,务必使用old_password函数。
update user set password=old_password('zsdinfo'), user='root', host='%' where user='root';
6) flush privileges;
12. 安装php
apt-get install php5-common php5-mysql php5-cgi php5-gd php5-mcrypt libapache2-mod-php5 php5-memcache php5-imagick php5-suhosin php5-xmlrpc
如果需要,可以如下安装
apt-get install php-pear php5-curl php5-dev php5-gd php5-idn php5-imap php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xsl
1) 让php5支持.inc文件的解析
a) 编辑文件/etc/apache2/mods-available/php5.conf
<ifModule mod_php5.c>
AddType application/x-httpd-php .php .phtml .php3.inc
AddType application/x-httpd-php-source .phps
</ifModule>
b) 重启apache2:/etc/init.d/apache2 restart
c) 编写.inc文件测试是否成功。
2) 修改Apache2的默认首页(支持单个web)
修改/etc/apache2/sites-available/default
PHP配置上传文件限制:
修改/etc/php5/apache2/php.ini找到以下数值,修改为自己需要的数值
memory_limit = 512M(虚拟机的依据实际内存调整)
post_max_size = 1024M
upload_max_filesize = 1025M
关闭以下功能
enable_dll
display_errors = Off
13. 安装libnet
1) 安装libnet。下载路径:http://mimica.download.youkuaiyun.com/
2) libnet安装顺序。
libnet、libpcap、libnids(手动copy至root目录下,分别进入libnet、libcap、libnids目录,按照以下顺序输入安装命令。
./configure
make && make install
复制libcap.so.0.6.2至/usr/lib目录
14. 配置双网卡
1)首先在/etc/network/interfaces里加入下面的内容;这里eth0与外网相连,eth1与内网相连。(当网卡设为static是,要设置相应的address、netmask)
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet dhcp
iface eth1 inet static
address 192.168.1.xx
netmask 255.255.255.0
2) echo “1” > /proc/sys/net/ipv4/ip_forward或修改/etc/sysct1.conf,加上net.ipv4.ip_forward = 1
3) iptables –F
iptables –P INPUT ACCEPT
iptables –P FORWARD ACCEPT
4) iptables –t nat –A POSTROUTING –o ppp0 –j MASQUERADE
5) /etc/init.d/inetd restart
15. 挂载*.ISO镜像文件至操作系统,并将*.ISO设置为更新的首选源
1) 如果*.ISO在U盘,则先挂载U盘
mount –t [U盘分区格式] [U盘路径] [挂载的目录]
mount –t vfat /dev/sda /tmp
2) 挂载*.ISO为cdrom
mount –o loop *.iso /cdrom
3) 将挂载的*.ISO设定为更新的源
apt-add cdrom
4) 卸载*.ISO时会自动删除cdrom这个首选更新源
16. 修改Debian的默认语言
dpkg-reconfigure locales
中文选择:zh_SG.GB2312
英文选择:en_US.UTF-8
PS:配置在Debian5.0上通过,错误之处敬请指出!