postgres 创建新用户并授权


postgres 默认用户是postgres,为超级用户。

第一步:先以postgress 登录

1)psql -U '用户名' 

2.)创建数据库新用户
CREATE USER 用户名 WITH PASSWORD '*****';

3)授予用户数据库权限 
GRANT ALL PRIVILEGES ON DATABASE 数据库名 TO 用户名;

4)授予用户查看刚授权的数据库的里面的表的权限
GRANT ALL PRIVILEGES ON TABLE 表名  TO 用户名;
附带一条:修改的表的类型
alter table 表名 alter 字段名 type 类型;
附带一条:增加表新的字段
alter table 表名 add column 字段名 text(字段类型);

mysql 创建数据库,添加用户,用户授权


1.创建数据库语法
--创建名称为“testdb”数据库,并设定编码集为utf8
CREATE DATABASE zabbix; 

2.新建用户
--创建了一个名为:test 密码为:1234 的用户
create user 'zabbix'@'localhost' identified by '1234';
create user 'zabbix'@'%' identified by '1234';
#host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,  如 果想让该用户可以从任意远程主机登陆, 
可以使用通配符%

3.查询用户
--查询用户
select user,host from mysql.user;

4.删除用户
--删除用户“test”
drop user test@localhost ;
--若创建的用户允许任何电脑登陆,删除用户如下
drop user test@'%';

5.更改密码
--方法1,密码实时更新;修改用户“test”的密码为“1122”
set password for test =password('1122');
--方法2,需要刷新;修改用户“test”的密码为“1234”
update  mysql.user set  password=password('1234')  where user='test'
--刷新
flush privileges;    

6.用户分配权限
GRANT 权限名字(多个权限用","号隔开) ON 数据库名.表名 TO '用户名'@'允许登录的ip地址' [IDENTIFIED BY '密 
码'];
例子:
GRANT ALTER,DELETE,INDEX,INSERT,SELECT,UPDATE ON zabbix_server.* TO 'zabbix'@'localhost' IDENTIFIED BY 
'123456789';
#给zabbix用户授权所有库所有权限
GRANT ALL ON *.* TO 'zabbix'@'%' IDENTIFIED BY '123456789';
--刷新
flush privileges;       

查看用户获得的授权:
SHOW GRANTS FOR 'USERNAME'@'HOST';
SHOW GRANTS FOR zabbix;

rootkit后门检测工具


1、编译安装chkrookit
yum -y install gcc gcc-c++ make cmake glibc-static glibc-utils
wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz #下载软件包
tar zxvf chkrootkit.tar.gz
make sense
#注意,此处为make sense
2、chkrookit的使用
1)Usage: ./chkrootkit [options] [test ...]
Options:

-h 显示帮助信息

-V 显示版本信息

-l 显示测试内容

-d debug模式,显示检测过程的相关指令程序

-q 安静模式,只显示有问题部分,

-x 高级模式,显示所有检测结果

-r dir 设定指定的目录为根目录

-p dir1:dir2:dirN 检测指定目录

-n 跳过NFS连接的目录

2)检测:直接执行chkrootkit命令即可检测系统
./chkrootkit |grep INFECTED
3)指定使用备份的系统工具检测:
-p 指定通过哪个检测路径检测
chkrootkit -p /usr/bin/
chkrootkit -p /usr/share/ | grep INFECTED

#备份chkrootkit使用的系统命令
chkrootkit在检测rootkit时使用部分系统命令,如果系统被入侵,那么依赖的系统命令也可能已经被入侵者替换,从而导 
致检测结果不可信。
所以在服务器对外开放前,建议事先备份chkrootkit使用的系统命令,在chkrootkit做系统检测时使用备份的原始系统命 
令对rootkit进行检测可以保证结果可信度。

#复制系统命令
cp `which ssh awk cut echo find egrep id head ls netstat ps strings sed uname` ./commands

#压缩检测用到的系统工具并备份到安全目录
tar zcvf commands.tar.gz ./commands
sz commands.tar.gz # 下载到本机
rm -rf commands.tar.gz

Linux系统平台下的一款开源入侵检测工具


rkhunter是Linux系统平台下的一款开源入侵检测工具,具有非常全面的扫描范围,除了能够检测各种已知的rootkit特征 
码以外,还支持端口扫描、常用程序文件的变动情况检查。

通过一系列脚本来确认服务器是否已经感染rootkit,主要执行以下测试:
1)MD5校验测试, 检测文件是否被改动。

2)检测rootkits使用的二进制和系统工具文件。

3)检测特洛伊木马程序的特征码。

4)检测常用程序的文件异常属性。

5)检测系统相关。如:启动文件、系统用户和组配置、ssh配置、文件系统等。

6)检测隐藏文件、/etc/rc.d/目录下的所有配置文件、日志文件等。

7)检测Linux内核监控模块:驱动模块(LKM)。

8)检测系统已经启动的监听端口:扫描任何混杂模式下的接口和后门程序常用的端口。

9)检测应用程序版本,如: Apache Web Server, Procmail等。

10)检测网络。

1、编译安装rkhunter
yum -y install gcc gcc-c++ make cmake glibc-static glibc-utils

wget https://jaist.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.6/rkhunter-1.4.6.tar.gz
tar zxvf rkhunter-1.4.6.tar.gz
cd rkhunter-1.4.6
./installer.sh --install

2.为基本系统程序建立校对样本,建议系统安装完成后就建立。
执行检测命令:

rkhunter --check
如果您不想要每个部分都以 Enter 来继续,想要让程序自动持续执行,可以使用:

rkhunter --check –sk
检测过程会分为几部分

##第一部分:检测系统命令,主要检测系统的二进制文件,这些文件最容易被rootkit攻击;

#[ OK ]表示正常,[ Warning ]表示有异常,[ None found ]未找到

##第二部分:检测rootkit,主要检测常见的rootkit程序;

#[ Not found ]表示未感染

##第三部分:特殊或附加检测:对rootkit文件或目录检测、对恶意软件检测、对指定内核检测等

##第四部分:检测网络、系统端口、系统启动文件、系统用户和组配置、ssh配置、文件系统等

##第五部分:应用程序版本检测

##第六部分:总结服务器目前的安全状态

4.在线升级rkhunter
rkhunter是通过一个含有rootkit名字的数据库来检测系统的rootkits漏洞, 所以经常更新该数据库非常重要, 你可以通过 
下面命令来更新该数据库:
rkhunter --update
5.检测最新版本
让 rkhunter 保持在最新的版本;
rkhunter --versioncheck

6.rkhunter其它用法:自动自行、定向任务执行等
自动执行程序:
rkhunter --check --skip-keypress
加入定时任务:
crontab -e
10 03 * * * /usr/bin/rkhunter --check --skip-keypress >/home/check_rkhunter/chk.txt

#解决思路
如果您的系统经过 rkhunter 的检测之后,却发现很多的『红字』时,该怎么办?
基本上,官方网站与一般网管老手的建议都一样,如果被 rootkit 之类的程序包攻击后 ( 也就是上一节的检测表中的第二 
部分所攻击时 ),那么最好直接重新安装系统, 不要存在说可以移除 rootkit 或者木马程序的幻想,因为,『隐藏』本来 
就是 rootkit 与木马程序的拿手好戏! 我们不知道到底这个 rootkit 或者木马程序有多剽悍,为了保险起见,还是重装
系统吧!如何重装?简单的说:
1.将原主机的网络线拔除;
2.备份您的数据,最好备份成两部分,一部份是全部的系统内容,越详尽越好,包括 binary files 与 logfile 等等, 
至于另一部份则可以考虑仅备份重要的数据文件即可!

3.将上个步骤的数据备份(仅重要数据部分!)进行整体的检查,查看是否有怪异的数据存在(这部分可能会花去不少时间!)

4.重新安装一部完整的系统,这包括:

仅安装需要的套件在服务器上面;

先进行 简单的防火墙 设定后才进行联机;

以 APT/YUM 之类的工具进行在线更新;

执行类似 rkhunter/nessus 之类的软件,检验系统是否处在较为安全的状态

5.将原本的重要数据移动至上个步骤安装好的系统当中,并启动原本服务器上面的各项服务;

6.以 rkhunter/nessus 之类的软件检验系统是否处在较为安全的环境,并且加强防火墙的机制!

7.最后,将原本完整备份的数据拿出来进行分析,尤其是 logfile 部分,试图找出 cracker 是那个服务?那个时间点? 
以那个远程 IP 联机进入本机等等的信息,并针对该信息研拟预防的方法,并应用在已经运作的机器上。

linux 环境变量恢复默认值


linux 环境变量恢复默认值
[root@wangzhan ~]# echo $PATH
/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@wangzhan ~]# rkhunter --check   #这个命令/usr/local/bin
-bash: rkhunter: command not found
[root@wangzhan ~]# export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 
[root@wangzhan ~]# rkhunter --check

#export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin