配置linux web服务器 有哪些安全方面要注意
主要有下面几方面:
1、禁用root用户并配置相应权限
2、指定一个账户可以SSH,禁用其他用户ssh登录
3、启用IPTASBLE
4、安装相应监控软件(具体百度)
5、对web目录设置可写权限
1开始说明
本教程中使用的IP地址是1921680100,主机名称为Server1examplecom 这些设置可能会有所不同,你需要根据不同情况进行修改。
CentOS 62下安装MySQL
2开始安装MySQL5
首先我们应该先用下面的命令安装MySQL:
yum install mysql mysql-server
然后我们需要创建MySQL系统的启动键链接启动MySQL服务器,这样以便于MySQL在系统启动时自动启动
chkconfig --levels 235 mysqld on
/etc/initd/mysqld start
为MySQL root帐户设置密码:
mysql_secure_installation
会出现下面的一系列提示:
root@server1 ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here
Enter current password for root (enter for none):
OK, successfully used password, moving on
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation
Set root password [Y/n] <-- ENTER
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables
Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them This is intended only for testing, and to make the installation
go a bit smoother You should remove them before moving into a
production environment
Remove anonymous users [Y/n] <-- ENTER
Success!
Normally, root should only be allowed to connect from 'localhost' This
ensures that someone cannot guess at the root password from the network
Disallow root login remotely [Y/n] <-- ENTER
Success!
By default, MySQL comes with a database named 'test' that anyone can
access This is also intended only for testing, and should be removed
before moving into a production environment
Remove test database and access to it [Y/n] <-- ENTER
- Dropping test database
Success!
- Removing privileges on test database
Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately
Reload privilege tables now [Y/n] <-- ENTER
Success!
Cleaning up
All done! If you've completed all of the above steps, your MySQL
installation should now be secure
Thanks for using MySQL!
[root@server1 ~]#
CentOS 62下安装Apache
3安装阿帕奇2
Apache2的是作为一个CentOS的软件包,因此我们可以直接用下面命令安装它:
yum install httpd
现在配置系统在引导时启动Apache
chkconfig --levels 235 httpd on
并启动Apache
/etc/initd/httpd start
现在,您的浏览器到http://1921680100,你应该看到Apache2的测试页:
Apache 2测试网页
Apache的默认文档根目录是在CentOS上的/var/www/html 目录 ,配置文件是/etc/httpd/conf/httpdconf。配置存储在的/etc/httpd/confd/目录。
4安装PHP5
我们可以用下面的命令来安装PHP5
yum install php
安装完需要重启
/etc/initd/httpd restart
CentOS 62下安装PHP5
5我们可以安装PHP5和Apache的PHP5的模块如下:
默认网站的文件根目录是在/srv/www/html中。现在我们将在该目录中创建一个小型PHP文件(infophp的)在浏览器中调用它。该文件将显示很多关于我们的PHP安装,如安装的PHP版本和有用的一些细节。
vi /var/www/html/infophp
修改细节
现在,我们可以用浏览器访问例如http://1921680100/infophp文件
PHP页面
正如你所看到的,PHP5的工作,它通过Apache 20的处理程序,在服务器API线。如果你继续向下滚动,你会看到所有在PHP5中已经启用的模块。MySQL是没有列出,这意味着我们没有在PHP5支持MySQL。
6PHP5获得MySOL的支持
让PHP在MySQL中获得支持,我们可以安装的php-mysql软件包。安装一些其他的PHP5模块,以及您可能需要的应用程序,这是一个好主意:
yum search php
还安装需要安装的
yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc
现在重新启动Apache2的:
/etc/initd/httpd restart
现在,重载http://1921680100/infophp在您的浏览器,并再次向下滚动到模块部分。现在,你应该找到许多新的模块,包括MySQL模块:
MySQL页面
CentOS 62下安装phpMyAdmin
7安装phpMyAdmin
phpMyAdmin是一个网络接口,通过它可以管理你的MySQL数据库。
首先,我们使CentOS系统RPMForge软件库的phpMyAdmin,而不是官方的CentOS 62库:
所以需要导入RPMForge的GPG密钥:
rpm --import http://dagwieerscom/rpm/packages/RPM-GPG-KEYdagtxt
x86_64系统:
yum install http://pkgsrepoforgeorg/rpmforge-release/rpmforge-release-052-2el6rfx86_64rpm
在i386系统:
yum install http://pkgsrepoforgeorg/rpmforge-release/rpmforge-release-052-2el6rfi686rpm
安装phpmyadmin
yum install phpmyadmin
现在我们可以设置phpMyAdmin,了我们可以改变Apache的配置来让phpMyAdmin不仅仅只能从localhost登录。
vi /etc/httpd/confd/phpmyadminconf
配置
下一步,我们从HTTP改变的phpMyAdmin的cookie来身份验证:
vi /usr/share/phpmyadmin/configincphp
修改身份验证
重启阿帕奇
/etc/initd/httpd restart
在地址栏输入http://1921680100/phpMyAdmin/:你就可以访问phpMyAdmin了。
phpmyadmin页面
CentOS可以得到RHEL的所有功能,甚至是更好的软件。但CentOS并不向用户提供商业支持,当然也不负上任何商业责任。
如果你要将你的RHEL转到CentOS上,因为不希望为RHEL升级而付费。当然,你必须有丰富linux使用经验,因此RHEL的商业技术支持对你来说并不重要。但如果你是单纯的业务型企业,那么还是建议你选购RHEL软件并购买相应服务。这样可以节省你的IT管理费用,并可得到专业服务。
课题名称:基于Linux系统的Web服务器的安装与配置
姓 名: 班 级:
完成时间: 指导老师:
内容安排:
首先对WEB服务器的可行性进行研究,然后对主机的硬件和软件进行需求分析,在此基础上进行概要设计和详细设计。接下来对软件框架的各组成部分的实现分章进行详细的描述,最后总结实现一些关键的解决方法和改进的几个思路。
1、 绪论
简单介绍了一下架设WEB网站的意义, WEB服务器的工作原理, 企业背景介绍,并简要介绍了论文的内容要求。
2、 Web服务器的基础知识
对什么是WEB服务、服务器软件Apache、脚本语言PHP、HTTP协议作了详细的介绍。
3、 Web服务器的设计过程
根据可行性的研究,对整个系统的软件和硬件需求进行分析。对软硬件进行架构设计,描述如何实现,包括基础理论分析,设计思路和设计方法,并对具体的设计步骤进行了重点理论解析。
4、 WEB服务器的建立
对系统的运行进行安装,了解Apache的体系结构及性能、PHP脚本配置环境,用Apache进行设置虚拟主机,实现基于IP地址虚拟主机服务,先规划IP地址:为虚拟主机申请新的IP地址,让ISP做好相应的域名解析工作,为网卡设置IP别名,重新设置“/etc/httpd/conf/httpdconf”文件,建立相应的目录,将主页的内容放到相应的目录中去就行了,再配置一下PHP语言脚本环境。测试一下能否实现的可行性。
5、问题和改进
实现中可能遇到的问题及解决方法,服务器改进的方向。
6、作简要的总结。
论文的技术路线及预期目标:
技术路线:在Linux平台下配置一个WEB服务器环境,使网站正常运行,首先需要在一台PC机上创建一个Linux平台,由于我们绝大部分PC用的是Windows的操作系统,对此,我们可采用虚拟机VMware Workstation在Windows系统下虚拟一个Linux平台,然后运用与Linux兼容性良好的Apache服务软件、PHP语言脚本配置环境,基于Linux操作系统,架设一个稳定、安全、高效的WEB服务器环境,可支持运行以PHP或者HTML为基础的网页,要求正确安装好操作系统Linux WEB服务器软件Apache、脚本语言PHP,了解有关参数,同时合理设置,使得服务器环境简易高效。
预期目标:在Linux环境下运用兼容性良好的Apache服务软件实现一个Web服务器,在局域网内,将此服务器程序在一台计算机上运行,使网内其它计算机访问这台服务器时,实现HTTP协议的传输,并能解析以PHP或者HTML为基础的网页。
课题进度计划:
完成课题所需条件及落实措施:
所需条件:计算机一台、CentOS 52版本的Linux操作系统、虚拟机软件VMware Workstation及各种相关软件,有关Linux操作系统方面的资料(书籍、网络资料)。
落实措施:在计算机上先安装虚拟机软件VMware Workstation,采用虚拟机VMware在Windows系统下虚拟一个Linux平台,然后运用与Linux兼容性良好的Apache服务软件,PHP语言脚本配置环境。
参考文献、资料:
[1] Red Hat Linux大全,David Pitls编著,姚彦忠 译,机械工业出版社,1999年1月出版
[2] Linux服务器性能调整,(美)约翰逊,(美)威曾格,(美)普拉瓦提 著,韩智文 译,清华大学出版社,2009年9月出版
[3] Linux服务器架设,杨鹏编著,清华大学出版社,2008年出版
[4] Linux网络服务器应用教程,王兴主编,中国铁道出版社,2009年9月出版
0条评论