保护Linux下的Apache网站

2016-01-29 19:06 3 1 收藏

保护Linux下的Apache网站,保护Linux下的Apache网站

【 tulaoshi.com - Linux 】

     Linux的广泛应用和快速发展得益于互联网的飞速发展。对于Internet上应用广泛的Web服务来说,Linux表现出色。很难说清目前Internet上究竟有多少个网站在使用Linux系统,但众多网站中采用Apache服务器的无疑占据了极大的市场份额。

    如何为网站提供保护,防止非法用户登入呢?通常可以采用身份认证方式。身份认证是防止非法用户使用资源的有效手段,也是管理注册用户的有效方法。现在很多网站都使用身份认证来管理用户资源,对用户的访问权限进行严格地限制。传统的身份认证方法是通过检验用户的注册名、口令,来决定是否允许用户使用资源,但这种认证方法在某些情况下作用并不十分有效。特别是在Linux平台下的Apache服务器,完全可以用Linux的方法来实现密码验证和保护。

    Linux下最常见的密码保护方法是利用.htaccess文件,即目录配置实现密码保护,这也是.htaccess文件的功能之一。这种方法可以使没有授权的浏览者不能进入.htaccess文件所设置的限制区域。一般地,使用JavaScript技术进行设置的密码太简单,很容易就被破解,造成了不安全。而使用.htaccess文件保护目录比使用其它程序(Java/HTML/ASP/CGI)更为有效和安全。更重要的是,使用.htaccess的方式进行设置,不需要编写程序就可以实现,具体操作比较容易。

    下面就来介绍和演示Linux+Apache下密码保护的方法,全面实现网站保护。

    什么是.htaccess文件

    .htaccess文件是Apache服务器上的一个设置文件。它是一个文本文件,可以使用任何文本编辑器进行编写。.htaccess文件提供了针对目录改变配置的方法,即通过在一个特定的文档目录中放置一个包含一个或多个指令的文件(.htaccess文件),以作用于此目录及其所有子目录。.htaccess的功能包括设置网页密码、设置发生错误时出现的文件、改变首页的文件名(如index.html)、禁止读取文件名、重新导向文件、加上MIME类别、禁止列目录下的文件等。

    在需要针对目录改变服务器的配置,而对服务器系统没有root权限时,应该使用.htaccess文件。如果服务器管理员不愿意频繁修改配置, 则可以允许用户通过.htaccess文件自己修改配置,尤其是ISP在一台机器上提供多个用户站点,而又希望用户可以自己改变配置的情况下,一般会开放部分.htaccess的功能给使用者自行设置。

    注意,.htaccess是一个完整的文件名,不是***.htaccess或其它格式(当然也有管理员把其设置成其它名字,但一般都是使用.htaccess)。另外,上传.htaccess文件时,必须使用ASCⅡ模式,并使用chmod命令改变权限为:644(RW_R__R__)。每一个放置.htaccess的目录和其子目录都会被.htaccess影响。例如,在/abc/目录下放置了一个.htaccess文件,那么/abc/和/abc/def/内所有的文件都会被它影响,但/index.html不会被它影响,这一点是很重要的。

    实现密码保护

    1.建立.htpasswd文件
    首先在要设置存取控制的目录(如htdocs)下建立一个文件,文件名可以自行设定,一般服务器都会设置为.htpasswd,该文件是不能由HTTP读取的。.htpasswd文件中的每一行代表一个使用者,使用者的名字及经过加密的密码以冒号:分隔。

    2..htaccess文件实现保护
    .htaccess文件的内容如下:

authtype basicauthuserfile /usr/home/***/htdocs/.abcname1authgroupfile /usr/home/***/htdocs/.abcname2authname information<limit get postrequire valid-user</limit


    其中第二行和第三行中的***可以改为个人的FTP登录名。.abcname1和.abcname2可以是任意的文件名,如.htpasswd、.htpass,但不能是.htaccess。将.htaccess上传到要进行密码保护的目录(如htdocs)中。

    .htaccess文件最后的“require”告诉服务器哪些用户可以进入。require valid-user是指只要是.htpasswd中的任何一个都可以进入。也可以指定名单上的某人或某几人可以通过,使用require user username或require user username1 username2 username3。还可以指定某组人可以通过,使用require group groupname。

    3.增加新的许可用户
    进入htdocs目录,在命令行状态输入以下命令生成.abcname1文件。

来源:https://www.tulaoshi.com/n/20160129/1508454.html

延伸阅读
NFS(Network File System)是由Sun开发的用于网络上文件共享的协议.NFS使用起来很方便,所以得到了广泛的应用.但由于它的认证机制是基于IP地址的,因而容易被攻击. 注意NFS是基于rpc机制的,所以portmap服务一定要打开. 在RedHat中: /etc/rc.d/init.d/nfs ... [ -f /usr/sbin/rpc.nfsd ] || exit 0 [ -f /...
标签: 电脑入门
为了保护电脑数据的安全,需要将网站的数据定期镜像备份和删除,以防被黑客攻击导致数据丢失,下面图老师小编就给大家介绍下Linux下如何定期备份和删除网站数据,一起来学习下吧。 需求是这样的,首先网站文件和数据库需要每天自动备份,然后备份目录超过一定时间的删除,比如保留最近14天地备份 刚好vps是redhat,里面默认居然没有装cron...
第一步:安装Apache 2.X+ 版本的,不表。 第二步:安装Subversion,下载最新版本,一般的文件名格式如svn-1.4.6-setup.exe这样子的,安装之。 第三步:下载一个TortoiseSVN这东西,是一个SVN的工具,其一般的文件格式为TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi,安装之。 第四步:创建一个SVN的文件跟目录,例如E:\svndemo 第五步:为了能...
标签: 服务器
windows下Apache配置SSL安全连接   什么是SSL? SSL(Secure Socket Layer): 是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全。Open SSL下载地址:http://www.openssl.org/source/ 一、下载并安装 支持SSL的 Apache 1.安装配有SSL模块的apache, 下载地址http://httpd.apache.o...
标签: PHP
  刚刚看到有人贴win下安装步骤 刚好今天公司网站的新服务器到手。花了一上午安装mysql+php+apache。 新版的老版的还是有些不同的。现在把步骤帖一下 安装步骤: 1.mysql 在如下页面下载mysql的for linux rpm包 http://www.mysql.com/downloads/down...3.52-1.i386.rpm http://www.mysql....

经验教程

975

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部