FreeBSD下构建安全的Web服务器(2)(4)
2008-02-23 08:21:05来源:互联网 阅读 ()
(11) 错误日志
建议在关闭display_errors后能够把错误信息记录下来,便于查找服务器运行的原因:
log_errors = On
同时也要配置错误日志存放的目录,建议根apache的日志存在一起:
error_log = /usr/local/apache2/logs/php_error.log
注意:给文档必须允许apache用户的和组具备写的权限。
3. Mysql的安全配置
我们把Mysql安装在 /usr/local/mysql目录下,我们必须建立一个用户名为mysql,组为mysql的用户来运行我们的mysql,同时我们把他的配置文档拷贝到 /etc目录下:
# cp suport-files/my-medium.cnf /etc/my.cnf chown root:sys /etc/my.cnf chmod 644 /etc/my.cnf |
使用用户mysql来启动我们的mysql:
# /usr/local/mysql/bin/mysqld_safe -user=mysql &
(1) 修改root用户的的口令
缺省安装的mysql是没有密码的,所以我们要修改,以防万一。下面采用三种方式来修改root的口令。
* 用mysqladmin命令来改root用户口令
# mysqladmin -uroot password test
这样,MySQL数据库root用户的口令就被改成test了。(test只是举例,我们实际使用的口令一定不能使用这种易猜的弱口令)
* 用set password修改口令:
mysql> set password for root@localhost=password(’test’);
这时root用户的口令就被改成test了。
* 直接修改user表的root用户口令
mysql> use mysql; mysql> update user set password=password(’test’) where user=’root’; mysql> flush privileges; |
这样,MySQL数据库root用户的口令也被改成test了。其中最后一句命令flush privileges的意思是强制刷新内存授权表,否则用的还是缓冲中的口令,这时非法用户还能够用root用户及空口令登陆,直到重启MySQL服务器。
(2) 删除默认的数据库和用户
我们的数据库是在本地,并且也只需要本地的php脚本对mysql进行读取,所以很多用户无需。mysql初始化后会自动生成空用户和test库,这会对数据库构成威胁,我们全部删除。
我们使用mysql客户端程式连接到本地的mysql服务器后出现如下提示:
mysql> drop database test; mysql> use mysql; mysql> delete from db; mysql> delete from user where not(host="localhost" and user="root"); mysql> flush privileges; |
(3) 改变默认mysql管理员的名称
这个工作是能够选择的,根据个人习惯,因为默认的mysql的管理员名称是root,所以假如能够修改的话,能够防止一些脚本小子对系统的穷举。我们能够直接修改数据库,把root用户改为"admin"
mysql> use mysql; mysql> update user set user="admin" where user="root"; mysql> flush privileges; |
(4) 提高本地安全性
提高本地安全性,主要是防止mysql对本地文档的存取,比如黑客通过mysql把/etc/passwd获取了,会对系统构成威胁。mysql对本地文档的存取是通过SQL语句来实现,主要是通过Load DATA LOCAL INFILE来实现,我们能够通过禁用该功能来防止黑客通过SQL注射等获取系统核心文档。
禁用该功能必须在 my.cnf 的[mysqld]部分加上一个参数:
set-variable=local-infile=0
(5) 禁止远程连接mysql
因为我们的mysql只需要本地的php脚本进行连接,所以我们无需开socket进行监听,那么我们完万能够关闭监听的功能。
有两个方法实现:
* 配置my.cnf文档,在[mysqld]部分添加 skip-networking 参数
* mysqld服务器中参数中添加 --skip-networking 启动参数来使mysql不监听任何TCP/IP连接,增加安全性。假如要进行mysql的管理的话,能够在服务器本地安装一个phpMyadmin来进行管理。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 架设某大型网站服务器之全部过程网站
下一篇: 令网站提速的7大秘方网站
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
