首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>其他>正文

Oracle最佳替代者PostgreSQL数据库的整体安全性

http://www.oklinux.cn  2010-01-03  51CTO.com    会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

清单 18. 典型的域套接字

robert@wolf:~$ ls -la /tmp|grep PGSQLsrwxrwxrwx 1 robert robert 0 2007-10-15 12:47 .s.PGSQL.5432-rw------- 1 robert robert 33 2007-10-15 12:47 .s.PGSQL.5432.lock


注意,端口号被附加到文件名的末尾。将服务器重新配置为使用一个不同的 TCP/IP 端口也将改变域套接字的名称。

postgresql.conf 配置文件中的三个参数将控制对域套接字的权限:

?unix_socket_directory(文件 PATH)
?unix_socket_group(用户组)
?unix_socket_permissions(默认为 0777)
域套接字的位置因 Linux 发行版而异:

?PostgreSQL 源代码安装并将套接字放到 /tmp 目录。
?BSD 将套接字放到 /tmp 目录。
?RedHat 衍生系统将套接字放到 /tmp 目录。
?Debian 衍生系统将套接字放到 /var/run/postgresql 且只具有对 postgresqlaccount 的权限。
域套接字有一些比较特别的方面。考虑下面这个例子。

在 robert(超级用户)的主目录中创建一个集群,并对可信性进行了验证。但是,在服务器启动时,域套接字的权限只允许除 robert 以外的用户登录。用户 robert 使用 TCP 登录,但是被域套接字拒绝。然而,robert 在对 nobody 执行 sudo 后,他就可以通过域套接字登录。

这个例子展示了文件权限的多样性,从而减轻由于骇客成为超级用户而引起的破坏。


清单 19. 权限

robert@wolf:~$ initdb -A trust -U postgres ~/datarobert@wolf:~$ pg_ctl -D ~/data/ -l ~/logfile.txt \-o "-c unix_socket_permissions=007 -c unix_socket_directory=/tmp" startserver startingrobert@wolf:~$ psql -h localhost -U postgres -c "select 'superuser:this works' as msg" msg---------------------- superuser:this works(1 row)robert@wolf:~$ psql -h /tmp -U postgres -c "select 'superuser:this fails' as msg"psql: could not connect to server: Permission denied Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?robert@wolf:~$ sudo su nobody[sudo] password for robert:$ psql -h localhost -U postgres -c "select 'nobody:this works' as msg" msg------------------- nobody:this works(1 row)$ psql -h /tmp -U postgres -c "select 'nobody:this still works' as msg" msg------------------------- nobody:this still works(1 row)

共12页: 上一页 [1] [2] [3] [4] [5] [6] [7] 8 [9] [10] [11] [12] 下一页

上一篇:Google手机发布会仿效苹果   下一篇:豆瓣开源数据存储系统BeansDB

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Oracle数据库实例两则
·在Linux下定时备份MySQL
·出现mysql max-connections问题解决
·Oracle 如何快速查找和删除重复记录
·Oracle Dataguard备库失败与主库响应测试
·Oracle简单stream一个用户单向复制配置
·Oracle小知识集锦
·2009 MySQL数据库学习者盛会
·深入解析Oracle参数及参数文件
·查看修改Oracle10G归档日志空间的限制
·Linux环境下给MySQL数据库文件打包流程记录
·MySQL 5.1.41释出
·Ubuntu 9.10 修改 MySQL 的 datadir
·在MySQL中修改表名的SQL语句
·Eclipse连接Oracle数据库的ORA-00604 ORA-12705错误
·MySQL知识学习之my.ini详解
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Oracle数据库实例两则
·在Linux下定时备份MySQL
·出现mysql max-connections问题解决
·Oracle 如何快速查找和删除重复记录
·Oracle Dataguard备库失败与主库响应测
·Oracle简单stream一个用户单向复制配置
·Oracle小知识集锦
·2009 MySQL数据库学习者盛会
·深入解析Oracle参数及参数文件
·查看修改Oracle10G归档日志空间的限制
·Linux环境下给MySQL数据库文件打包流程
·MySQL 5.1.41释出
  阅读排行
·MySQL导入导出.sql文件步骤
·Linux下安装Oracle数据库完整笔记
·Oracle建表过程初学
·Oracle 建立临时表语法及使用技巧
·Oracle面试题及答案整理
·Linux系统下启动MySQL的命令及相关知识
·MySQL中文乱码解决方案集锦
·Oracle10g RAC for Linux配置全过程
·Linux平台下配置MySQL主从复制
·手工配置Oracle 10G Enterprise Manage
·Linux平台下启动oracle 11g EM控制台
·RHEL5.1 下安装Oracle 10.2.0.1及常见
·Oracle数据库里查看表空间使用状况
·Linux下安装Oracle客户端
·VMware中在Linux下安装Oracle9i
网摘收藏: