‘壹’ ubuntu中配置web环境该以什么用户权限来设置
我的回答是基于ubuntu来说的
1、对于安装nginx还有php、mysql来说,是需要切换到root(sudo su)进行安装的,因为/etc/下的配置文件是需要root权限才可以写入的。你可以尝试在ubuntu下service nginx start,你需要进行sudo的操作或者会需要你提供密码验证。用top查看进程,你会发现nginx是以用户www-data访问根目录网站下的资源,配置文件里面已经设置了
2、nginx和php、mysql的目录都在安装时设置完成了,一般来说不用管。但是web目录一般都是设置为chown为www-data用户,一是安全考虑,二是nginx访问这些资源的用户就是www-data
以上为个人意见,仅供参考
‘贰’ 如何设置 Web 服务器的权限
如果Web服务器的权限没有设置好,那么网站就会出现漏洞并且很可能会出现被不怀好意的人黑掉的情况。我们不应该把这归咎于 IIS 的不安全。如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。下面是我在配置过程中总结的一些经验,希望对大家有所帮助。
IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上有:
脚本资源访问读取写入浏览记录访问索引资源6 个选项。这 6 个选项中,“记录访问”和“索引资源”跟安全性关系不大,一般都设置。但是如果前面四个权限都没有设置的话,这两个权限也没有必要设置。在设置权限时,记住这个规则即可,后面的例子中不再特别说明这两个权限的设置。
另外在这 6 个选项下面的执行权限下拉列表中还有:无纯脚本纯脚本和可执行程序3 个选项。
而网站目录如果在 NTFS 分区(推荐用这种)的话,还需要对 NTFS 分区上的这个目录设置相应权限,许多地方都介绍设置 everyone 的权限,实际上这是不好的,其实只要设置好 Internet 来宾帐号(IUSR_xxxxxxx)或 IIS_WPG 组的帐号权限就可以了。如果是设置 ASP、PHP 程序的目录权限,那么设置 Internet 来宾帐号的权限,而对于 ASP.NET 程序,则需要设置 IIS_WPG 组的帐号权限。在后面提到 NTFS 权限设置时会明确指出,没有明确指出的都是指设置 IIS 属性面板上的权限。
例1 —— ASP、PHP、ASP.NET 程序所在目录的权限设置: 如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。NTFS 权限中不要给 IIS_WPG 用户组和 Internet 来宾帐号设置写和修改权限。如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序),则需要给这些特定的文件配置 NTFS 权限中的 Internet 来宾帐号(ASP.NET 程序是 IIS_WPG 组)的写权限,而不要配置 IIS 属性面板中的“写入”权限。
IIS 面板中的“写入”权限实际上是对 HTTP PUT 指令的处理,对于普通网站,一般情况下这个权限是不打开的。
IIS 面板中的“脚本资源访问”不是指可以执行脚本的权限,而是指可以访问源代码的权限,如果同时又打开“写入”权限的话,那么就非常危险了。
执行权限中“纯脚本和可执行程序”权限可以执行任意程序,包括 exe 可执行程序,如果目录同时有“写入”权限的话,那么就很容易被人上传并执行木马程序了。
对于ASP.NET 程序的目录,许多人喜欢在文件系统中设置成 Web 共享,实际上这是没有必要的。只需要在 IIS 中保证该目录为一个应用程序即可。如果所在目录在 IIS 中不是一个应用程序目录,只需要在其属性->目录面板中应用程序设置部分点创建就可以了。Web 共享会给其更多权限,可能会造成不安全因素。
总结: 也就是说一般不要打开-主目录-(写入),(脚本资源访问) 这两项以及不要选上(纯脚本和可执行程序),选(纯脚本)就可以了.需要asp.net的应用程序的如果应用程序目录不止应用程序一个程序的可以在应用程序文件夹上(属性)-目录-点创建就可以了.不要在文件夹上选web共享.
例2 —— 上传目录的权限设置: 用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过 ASP、PHP、ASP.NET 等程序来完成。这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了 ASP、PHP 等脚本程序或者 exe 程序,也不会在用户浏览器里就触发执行。
同样,如果不需要用户用 PUT 指令上传,那么不要打开该上传目录的“写入”权限。而应该设置 NTFS 权限中的 Internet 来宾帐号(ASP.NET 程序的上传目录是 IIS_WPG 组)的写权限。
如果下载时,是通过程序读取文件内容然后再转发给用户的话,那么连“读取”权限也不要设置。这样可以保证用户上传的文件只能被程序中已授权的用户所下载。而不是知道文件存放目录的用户所下载。“浏览”权限也不要打开,除非你就是希望用户可以浏览你的上传目录,并可以选择自己想要下载的东西。
总结: 一般的一些asp.php等程序都有一个上传目录.比如论坛.他们继承了上面的属性可以运行脚本的.我们应该将这些目录从新设置一下属性.将(纯脚本)改成(无).
例3 —— Access 数据库所在目录的权限设置: 许多IIS 用户常常采用将 Access 数据库改名(改为 asp 或者 aspx 后缀等)或者放在发布目录之外的方法来避免浏览者下载它们的 Access 数据库。而实际上,这是不必要的。其实只需要将 Access 所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了。你不必担心这样你的程序会无法读取和写入你的 Access 数据库。你的程序需要的是 NTFS 上 Internet 来宾帐号或 IIS_WPG 组帐号的权限,你只要将这些用户的权限设置为可读可写就完全可以保证你的程序能够正确运行了。
总结: Internet 来宾帐号或 IIS_WPG 组帐号的权限可读可写.那么Access所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了
例4 —— 其它目录的权限设置: 你的网站下可能还有纯图片目录、纯 html 模版目录、纯客户端 js 文件目录或者样式表目录等,这些目录只需要设置“读取”权限即可,执行权限设成“无”即可。其它权限一概不需要设置。
上面的几个例子已经包含了大部分情况下的权限设置,只要掌握了设置的基本原理,也就很容易地完成能其它情况下的权限设置。
‘叁’ 过得web权限怎么配置
给指定的文件夹配置对应的访问权限是Apache配置中的基础应用,也是Apache使用者的必备技能之一。 在Apache配置文件中,给指定目录设置基本的访问权限,主要是靠Allow、Deny、Order三个指令的配合使用来实现的。
‘肆’ 腾达路由器如何设置局域网WEB管理的权限
路由器-----系统管理----web远程管理设置,才有第3图设置项
‘伍’ Linux web目录权限设置编写shell脚本
#!/bin/bash
#1.对该目录下所有的子目录及以下目录都设置成为 755权限
find . -type d | sed 1d | xargs -i chmod 755 -R {}
#2.对该目录下的所有文件设置 644的权限。
ll | sed 1d | grep -v ^d | awk '{print $NF}' | xargs -i chmod 644 {}
‘陆’ javaweb 项目的系统权限管理,怎么设计
按你说的设计可以啊,设置角色,给用户分配角色,角色控制菜单显示,最好做一个后台可以编辑角色,那样方便很多
‘柒’ 如何设置web根目录权限
5月26日 15:39 域只能限制普通用户无法做“系统范围内的改动”
你要达到的目的 只能购买“企业行为管理软件” 如果windows下就可以实现的话 那软件公司会破产的 呵呵
下载问题可以这样配制:打开IE浏览器 点工具 点internet选项
看图片 (我的是英文版 看起来可能有点困难) 不过也不是很难
在线看电影的问题:只能找一个代理速度快一点的网站 因为有中转过程 所以存在延迟的问题
‘捌’ nginx web 目录下权限设置哪个是对的
403错误主要是下面2条原因:(这种情况是你将nginx作为web服务的时候,若其后面还有提供web服务的应用程序,解决办法也类似,安装相同的思路查一查,应该很快就可以解决。绝大部分这个报错都是权限不对。)
1、出现此种错误的原因有可能是所有者对目录没有写的权限,此时可用chmod 777 目录名 先完全放开权限,如果问题解决,则在慢慢缩小访问权限。
解决办法:chown -R nginx_user:nginx_user /htdocs
2、未设置index的类型,解决办法在nginx.conf中的index后面加上要访问的文件类型,例如:index index.shtml index.html index.htm;
location / {
root html;
index index.html index.htm ;
}
‘玖’ 如何设置web页面访问权限只允许登录用户访问login.php,其他页面未通过验证均跳转到登录界面
在页面最前面用session
这样是对的
判断的时候用
session_start();
if ($_SESSION['name'] == "admin") {
echo '登录成功!';
} else {
//转向登陆页面
}
注销时:
session_start();
$_SESSION = array();
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
session_destroy();
Session 对象存储特定用户会话所需的信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
cookie和session的功能是一样的!