MAC文档
18一/120

刷新dns

发布在 admin

命令行:ipconfig /flushdns

13一/120

Linux VSFTP服务器

发布在 admin

一、Linux FTP服务器分类:

<1>wu-ftp

<2>proftp=profession ftp

<3>vsftp=very security ftp

 

配置文件:

/etc/vsftpd/vsftpd.conf   //主配置文件

/etc/vsftpd.ftpusers      //被禁止登录FTP的用户文件

/etc/vsftpd.user_list     //允许登录FTP的用户文件

二、访问方式

<1>匿名登录

<2>帐号登录

启动FTP服务器:

#service vsftpd restart
三、配置vsftp服务器

1.vsftpd.conf各项参数说明:

#vi /etc/vsftpd/vsftpd.conf

<1>第7行: 控制匿名登录

            anonymous_enable=YES 改成NO

<2>第10行:允许本地帐号登录

<3>第13行:控制可写权限

<4>第17行:控制本地文件的权限掩码

<5>第22行:控制是否允许匿名上传(与26行同时开启或关闭)

<6>第26行:控制是否允许匿名写及创建目录的权限

<7>第33行:控制上传或下载的日志记录

<8>第46行:控制日志的保存路径

<9>第52行:设置指令超时的时间,默认为600秒

<10>第55行:设置数据连接的超时时间,默认为120秒

<11>第91行:控制登录FTP的用户是否被限制在家目录下;(必须与93行同时开启或关闭)

            chroot_list_enable=YES

<12>第93行:登录FTP后被限制在家目录下的用户列表文件

            chroot_list_file=/etc/vsftpd.chroot_list

            在/etc目录下新建一个vsftpd.chroot_list文件,内容加入要限制用户的用户名

            没加入限制用户可以访问其目录

<13>第99行:控制登录FTP后是否允许ls命令

<14>第102行:启用/etc/vsftpd.user_list文件

2.配置匿名登录

#vi /etc/vsftpd/vsftpd.conf

第7行,设置为: (默认值)

anonymous_enable=YES

启动vsftpd服务器:

#service vsftpd restart

#service iptables stop

匿名登录的默认目录:

/var/ftp/pub

打开匿名上传和写权限:

#vi /etc/vsftpd/vsftp.conf

激活第22行

激活第26行

 

打开默认共享目录的权限

#chmod 777 /var/ftp/pub

 

备注:匿名可以上传下载,但不能删除;

3.本地帐号登录

<1>禁用匿名登入

修改配置文件

#vi /etc/vsftpd/vsftpd.conf

禁用所有匿名控制行,如:

   禁用第7行,第22行,第26行;

<2>开放那些用户可以登入和那些用户拒绝登入

#vi /etc/vsftpd/vsftpd.conf

    在102行后,插入如下:

    userlist_deny=NO

       (备注:设置/etc/vsftpd.user_list文件中的用户可登录FTP)

    保存退出

   如果是#userlist_deny=NO 注释掉,则默认全部用户可以登入FTP,当要限某用户不能登入:

    把用户名加入这个文件当中/etc/vsftpd.ftpusers,则这个用户名拒绝登入FTP

     创建用户并加入到相应的控制文件中

      #useradd us1

#useradd us2

      #passwd us1

      #passwd us2

     允许登录到FTP的用户:

      #echo us1>>/etc/vsftpd.user_list

      #echo us2>>/etc/vsftpd.user_list

启动FTP服务器:

#service vsftpd restart

备注:帐号登录FTP,默认是登录在家目录下;

禁止登录到FTP的用户:

#echo us3>>/etc/vsftpd.ftpusers

 

<3>将登录后的用户限制在本地家目录下:

#vi /etc/vsftpd/vsftpd.conf

激活第91行及第93行

   chroot_list_enable=YES

   chroot_list_file=/etc/vsftpd.chroot_list
新建受限用户的列表文件并加入受限用户名

#vi /etc/vsftpd.chroot_list

  us2

保存退出

#service vsftpd restart

<4>限制匿名上传的速度:

#vi /etc/vsftpd/vsftpd.conf

:$

   anon_max_rate=5000 //默认以字节为单位 5000表示5K速度

 

<5> 限制本地帐号的上传速度:

      local_max_rate=5000 //以(字节/秒)为单位

 

<6> 针对不同的使用者限制不同的速度(这个速度优先限制所有用户的速度):

        #vi /etc/vsftpd/vsftpd.conf   增加下面一行

            user_config_dir=/etc/vsftpd/userconf

 

        #mkdir /etc/vsftpd/userconf   创建一个目录

 

        #vi /etc/vsftpd/userconf/user1   (user1是要限制速度的用户名)

 

             local_max_rate=25000

 

<7>定制欢迎信息:

    #vi /etc/vsftpd/vsftpd.conf

       激活80行

     ftpd_banner=Welcome to Huayu FTP service.

<8>限制服务器连接数和同IP连接数

1、max_clients
可使用这个参数定义最大的总联机数。超过这个数目将会拒绝联机,0 表示不限。默认值为0。

2、max_per_ip
使用这个参数定义每个ip address 所可以联机的数目。超过这个数目将会拒绝联机,0 表示不限。默认值为0。

 

<9>虚拟FTP用户设置

1、        建立虚拟用户口令库文件

#vi /etc/vsftpd/logins.txt

    vuser1

123

vuser2

321

        :wq

       口令库文件中奇数行设置用户名,偶数行设置口令

2、        生成vsftpd的认证文件

#db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db ##生成认证文件

3、设置认证文件只对root用户可读可写

# chmod 600 /etc/vsftpd/vsftpd_login.db

4、建立虚拟用户所需的PAM配置文件,手工建立vsftpd.vu文件

# cat /etc/pam.d/vsftpd.vu

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

5、建立所有FTP虚拟用户帐号使用的系统用户帐号,并设置该帐号宿主目录的权限

# useradd -d /home -s /sbin/nologin /ftpsite virtual

# chmod 700 /home/ftpsite

6、设置vsftpd.conf配置文件

#vi /etc/vsftpd/vsftpd.conf

在配置文件中添加虚拟用户的配置内容

guest_enable=YES

guest_username=virtual

pam_service_name=vsftpd.vu(要和刚才建的PAM文件对应)

user_config_dir=/etc/vsftpd/user_config_dir (指定每个虚拟用户账号配置目录,)
local_root=/www (这行没有,虚拟用户登入到/ftpsite)

7、配置虚拟用户名的设置

#mkdir -p /etc/vsftpd/user_config_dir (主配置文件对应)
#mkdir -p /www/vuser1    (创建虚拟用主目录)
#chmod -R 777 /www/vuser1 (设定权限)

#touch /etc/vsftpd/user_config_dir/vuser1 (为vuser1权限配置文件)
#echo "anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/www/feixiang
anon_mkdir_write_enable=YES" >/etc/vsftpd/user_config_dir/vuser1

8、重新启动vsftpd服务程序

# service vsftpd restart

现在就应该可以用虚拟帐号登陆了.

<9>虚拟FTP用户设置

1、        建立虚拟用户口令库文件

#vi /etc/vsftpd/logins.txt

    vuser1

123

vuser2

321

        :wq

       口令库文件中奇数行设置用户名,偶数行设置口令

2、        生成vsftpd的认证文件

#db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db ##生成认证文件

3、设置认证文件只对root用户可读可写

# chmod 600 /etc/vsftpd/vsftpd_login.db

4、建立虚拟用户所需的PAM配置文件,手工建立vsftpd.vu文件

# cat /etc/pam.d/vsftpd.vu

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

5、建立所有FTP虚拟用户帐号使用的系统用户帐号,并设置该帐号宿主目录的权限

# useradd -d /home -s /sbin/nologin /ftpsite virtual

# chmod 700 /home/ftpsite

6、设置vsftpd.conf配置文件

#vi /etc/vsftpd/vsftpd.conf

在配置文件中添加虚拟用户的配置内容

guest_enable=YES

guest_username=virtual

pam_service_name=vsftpd.vu(要和刚才建的PAM文件对应)

user_config_dir=/etc/vsftpd/user_config_dir (指定每个虚拟用户账号配置目录,)
local_root=/www (这行没有,虚拟用户登入到/ftpsite)

7、配置虚拟用户名的设置

#mkdir -p /etc/vsftpd/user_config_dir (主配置文件对应)
#mkdir -p /www/vuser1    (创建虚拟用主目录)
#chmod -R 777 /www/vuser1 (设定权限)

#touch /etc/vsftpd/user_config_dir/vuser1 (为vuser1权限配置文件)
#echo "anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/www/feixiang
anon_mkdir_write_enable=YES" >/etc/vsftpd/user_config_dir/vuser1

8、重新启动vsftpd服务程序

# service vsftpd restart

现在就应该可以用虚拟帐号登陆了.

13一/120

yum 安装 mysql

发布在 admin

 

一、[root@sample ~]# yum -y install mysql-server  ← 安装MySQL
.....略
Installed: mysql-server.i386 0:4.1.20-1.RHEL4.1
Dependency Installed: mysql.i386 0:4.1.20-1.RHEL4.1 perl-DBD-MySQL.i386 0:2.9004-3.1 perl-DBI.i386 0:1.40-8
Complete!

二、配置
[root@sample ~]# vi /etc/my.cnf  ← 编辑MySQL的配置文件

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1  ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码为UTF-8
default-character-set = gbk  ← 添加这一行
然后在配置文件的文尾填加如下语句:

[mysql]
default-character-set = gbk

三、启动MySQL服务

[root@sample ~]# chkconfig mysqld on  ← 设置MySQL服务随系统启动自启动

[root@sample ~]# chkconfig --list mysqld  ← 确认MySQL自启动
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off  ← 如果2--5为on的状态就OK

[root@sample ~]# /etc/rc.d/init.d/mysqld start  ← 启动MySQL服务

启动mysql                                              [确定]

备注:如果这一部执行失败有可能是/var/lib/mysql 没有数据库文件,会报【 Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist】,这是需要执行mysql_install_db命令就OK了。

四、MySQL的root用户设置密码
MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。

[root@sample ~]# mysql -u root  ← 用root用户登录MySQL服务器
mysql> select user,host,password from mysql.user;  ← 查看用户信息
mysql>set password for root@localhost=password('在这里填入root密码');  ← 设置root密码
mysql>set password for root@域名=password('在这里填入root密码');
mysql> delete from mysql.user where user='';  ← 删除匿名用户
mysql> exit  ← 退出MySQL服务器【测试设置的密码是否正确】
五、删除测试用数据库
mysql> show databases;  ← 查看系统已存在的数据库
mysql> drop database test;  ← 删除名为test的空数据库

六、对MySQL进行测试。包括建立新用户,以及用对关系性数据库进行数据库操作的指令来试着建立数据库及数据表。这里,新建用户以 sleinetpub为例。

[root@sample ~]# mysql -u root -p  ← 通过密码用root登录
Enter password:  ← 在这里输入密码

mysql> grant all privileges on test.* to sleinetpub@localhost identified by '在这里定义密码';  ← 建立对test数据库有完全操作权限的名为sleinetpub的用户
mysql> select user from mysql.user where user='sleinetpub';  ← 确认sleinetpub用户的存在与否
mysql> exit  ← 退出MySQL服务器
[root@sample ~]# mysql -u sleinetpub -p  ← 用新建立的sleinetpub用户登录MySQL服务器
Enter password:  ← 在这里输入密码
mysql> create database test;  ← 建立名为test的数据库
mysql> show databases;  ← 查看系统已存在的数据库
mysql> use test  ← 连接到数据库
mysql> create table test(num int, name varchar(50));  ← 在数据库中建立表
mysql> show tables;  ← 查看数据库中已存在的表
mysql> drop table test;  ← 删除表
mysql> show databases;  ← 查看已存在的数据库
Empty set (0.01 sec)  ← 确认test数据库已被删除(这里非root用户的关系,看不到名为mysql的数据库)
mysql> exit  ← 退出MySQL服务器
七、删除测试用过的遗留用户
[root@sample ~]# mysql -u root -p  ← 通过密码用root登录
Enter password:  ← 在这里输入密码
mysql> revoke all privileges on *.* from sleinetpub@localhost;  ← 取消sleinetpub用户对数据库的操作权限
mysql> delete from mysql.user where user='sleinetpub' and host='localhost';  ← 删除sleinetpub用户
mysql> select user from mysql.user where user='sleinetpub';  ← 查找用户sleinetpub,确认已删除与否
Empty set (0.01 sec)  ← 确认sleinetpub用户已不存在
mysql> flush privileges;  ← 刷新,使以上操作生效
mysql> exit

八、最后,重新启动一次HTTP服务。

[root@undefined /]# /etc/rc.d/init.d/mysqld stop  ← 停止HTTP服务
停止mysql                                              [确定]

[root@undefined /]# /etc/rc.d/init.d/mysqld start ← 启动HTTP服务
启动mysql                                              [确定]

13一/120

linux下RRDTool安装方法

发布在 admin

一、使用yum安装:
在 /etc/yum.repos.d/下面新建dag.repo文件在文件中输入源地址:
[root@hmg2 yum.repos.d]# cat dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1
[root@hmg2 yum.repos.d]#yum -y install rrdtool
这样就可以完成RRDTool安装……
二、软件包安装:
先yum安装所要的库文件:
[root@hmg2 yum.repos.d]#yum install cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel
然后下载rrdtool包,安装:
[root@hmg2 src]#wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3.1.tar.gz
[root@hmg2 src]#tar -zxvf rrdtool-1.3.1.tar.gz
[root@hmg2 src]#./configure –prefix=/usr/local/rrdtool && make && make install
运行rrdtool –v测试安装成功没有:
[root@hmg2 src]#rrdtool -v //可以看到RRDTool的用法以及版本信息

三、另一种yum安装
[root@hmg2 src]#wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@hmg2 src]#rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@hmg2 src]#yum -y install rrdtool*

13一/120

linux搜索文件 更改文件名

发布在 admin

find . -maxdepth 1 -name "@*"
这个命令意思是,查找当前目录下以@开头的文件或者目录,搜索深度为一级也就是只在当前目录找,不进入子目录,如果你要从/目录开始找就:
find / -maxdepth 1 -name "@*"
如果想搜全盘,就把-maxdepth 1 去掉

 

 

更改文件名

mv index.php indexnew.php

13一/120

文件目录

发布在 admin

网站目录  /var/www/html/

 

13一/120

linux 查看文件和文件夹大小

发布在 admin

Linux查看文件夹大小

du -sh 查看当前文件夹大小

du -sh * | sort -n 统计当前文件夹(目录)大小,并按文件大小排序

附送:

du -sk filename 查看指定文件大小

13一/120

linux查看进程和终止进程

发布在 admin

1. 在LINUX命令平台输入1-2个字符后按Tab键会自动补全后面的部分(前提是要有这个东西,例如在装了tomcat的前提下,输入tomcat的to按tab)。

  2. ps 命令用于查看当前正在运行的进程。

  grep 是搜索

  例如: ps -ef | grep java

  表示查看所有进程里CMD是java的进程信息

  ps -aux | grep java

  -aux 显示所有状态

  ps

  3. kill 命令用于终止进程

  例如: kill -9 [PID]

  -9表示强迫进程立即停止

  通常用ps 查看进程PID ,用kill命令终止进程

13一/120

centos6下yum安装cacti

发布在 admin

简述:本来是编译安装的,由于编译过程中库文件关联太多,安装文件一定要有顺序性,报错太多,到了rrdtool这一步说什么都安装不过去了,由于时间问题,选择了yum安装,对于编译安装,这个要简单多了,她把关联的文件都自动的安装了,省了不少的事,下边介绍一下yum安装的过程:
首先要部署yum环境,国内有很多yum源,sohu、163、科大的等等,配置很简单,具体的可以到网上查查。
部署环境:(LAMP+RRDTool+snmp+cacti)

一、配置LAMP环境(删除已安装程序  yum remove mysql)
①安装Mysql
#yum -y install mysql mysql-server mysql-devel
②安装Apache
#yum -y install httpd
③安装PHP
#yum -y install php php-mysql
④启动服务并加入到启动列表
#service httpd start
#service mysqld start                             
#chkconfig httpd on
#chkconfig mysqld on
二、安装需要的库文件
#yum -y install zlib
#yum -y install freetype
#yum -y install libjpeg
#yum -y install fontconfig
#yum -y install gd
#yum -y install libxml2
#yum -y install php-gd
三、安装RRDTool
#yum -y install rrdtool
启动rrdtool服务并且加入启动列表
#service rrdcached start
#chkconfig rrdcached on
四、安装snmp支持工具
#yum -y install net-snmp
#yum -y install net-snmp-utils
启动snmpd服务并且加入启动列表
#service snmpd start
#chkconfig snmpd on
五、安装cacti(cacit官方网站:http://www.cacti.net/

下载
#wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
②配置
解压并放到apache文档目录(/var/www/html)
#tar -xf cacti-0.8.7e.tar.gz
#mv cacti-0.8.7e /var/www/html/cacti
编辑CentOS cacti配置文件,连接MySQL服务的用户名,密码,端口等。
#cd /var/www/html
#vi cacti/include/config.php
$database_type = “mysql”;
$database_default = “cacti”;
$database_hostname = “localhost”;
$database_username = “cacti”;
$database_password = “cacti”;
$database_port = “3306″;
③添加计划任务(使cacti每5分钟获得一次数据)
添加一个cacti的用户并添加cron任务:
#useradd cacti
#su cacti
#crontab -e
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1
④更改属组
把cacti网站目录所属组改为cacti
#su root
#chgrp -R cacti /var/www/html/cacti
#chown -R cacti /var/www/html/cacti/rra
#chown -R cacti /var/www/html/cacti/log
#chown -R cacti /var/www/html/cacti/poller.php
六、数据库配置

①创建cacti数据库
#mysql
msyql>create database cacti;
②导入cacti.sql
#mysql -u root -p cacti < /var/www/html/cacti/cacti.sql
有密码的输入密码,没密码的直接回车
③应用
mysql> use cacti
mysql> grant all on cacti.* to cacti@localhost identified by ‘cacti’;
mysql> flush privileges;
mysql> exit
七、WEB登陆cacti
①http://ip/cacti
(这里如果出现“403 forbidden”的错误,请把selinux关闭)
打开网页—>next—>选择new install,使用一路回车法.完成
的用户名为: admin 密码为: admin (初次登陆成功会提示更改密码)

 

以下为参考
八、汉化cacti(如果英文不好的话,可以把cacti汉化,这样看起就就方便了)
①下载
wget http://blogimg.chinaunix.net/blog/upfile2/090815172648.gz

②配置
tar zxvf 90815172648.gz
rm -rf /var/www/html/cacti
mv cacti-0.8.7e-cn-utf8/ /var/www/cacti/html
vi /var/www/cacti/html/include/config.php
内容如下:
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "cacti";
$database_port = "3306";
chown -R cacti /var/www/html/cacti/rra /var/www/html/cacti/log

③升级
http://ip/cacti
选择"从0.8.x升级"选项,然后跟着提示走,就OK了.
登陆,用户名为:admin,密码是你之前改过的,如果没有改的话,仍然是admin.
汉化完成了,接下来就配置自己的应用吧!

13一/120

Cacti安装配置

发布在 admin

版本历史:
<V0.2.20101204>根据 Cacti Doucument 调整,适用于Cacti 0.8.7g

V0.2版本是基于V0.1演化,所以版本延续。

实际上是已经不算是安装,而是翻译Cacti的文档了。

所以具体的安装过程,还是请大家参考V0.1版本

cacti是一套开源的网络监控工具,基于rrdtool的良好绘图功能,可以完美的监控主机的状态和负载情况,添加相应的模板后,可以用来监控apache服务器和mysql服务器的运行状态。这里主要描述使用源代码配置的过程,使用yum的方式同样,因为cacti是基于网络服务器配置,所以没有二进制编译安装的过程,源代码和yum的方式是一样的。

安装需求

Cacti需要系统中已经安装下列组件:

  • RRDTool 1.0.49 or 1.2.x 或更高版本
  • MySQL 4.1.x or 5.x or 或更高版本
  • PHP 4.3.6 或更高版本, 推荐5.x 版本以使用更多高级特性
  • 一个网络服务器 比如 Apache 或者 IIS

Unix软件RPM需求

请确认系统已安装下列的软件,并确认httpd和mysqld已设置为随系统启动。

  • httpd
  • php
  • php-mysql
  • php-snmp
  • php-xml
  • mysql
  • mysql-server
  • net-snmp (根据分支的不同,可能还需要 net-snmp-utils )

PHP设置

PHP的安装包有很多种形式。主要的配置文件是so文件会调用的ini配置文件,比如 /etc/php.ini. 下面的提示预期是一个配置指导,但是根据分支的不同,

设置可能会有区别。

安全模式 

Cacti 使用外部命令,例如用 rrdtool 来绘图。因此,需要设置

; Safe Mode
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode
safe_mode = Off

时间和日期

从 PHP 5.3 版本开始,建议对时区 date timezone 进行定义。以避免因为时间/日期函数而带来的警告。使用如下代码:

; Defines the default timezone used by the date functions
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = "Europe/Berlin"

允许导入模板

如果你想使用 Cacti 的模板导入功能,请取消注释下面一行,以允许文件上传:

file_uploads = On

允许exec()调用

Cacti 会使用 exec() 这种形式的调用,因此,请确认已按照如下设置:

safe_mode = Off

PHP扩展设置

Cacti 使用如下 PHP 扩展组件

  • mysql
  • session
  • sockets
  • xml
  • pcre

同时,我们也建议使用

  • snmp

扩展。你可以选择使用 net-snmp 来代替 php-snmp 扩展(有时是 net-snmp-utils )。

Cacti 插件会使用额外的扩展,比如

  • gd (reportit 使用)
  • dom (cli 脚本使用,只在 PHP 5 中才被支持)

当使用一个较新版本的 PHP 时,你可能会发现的提示

 

;;;;
; Note: packaged extension modules are now loaded via the .ini files
; found in the directory /etc/php.d; these are loaded by default.
;;;; 

这种情况下,并没有什么特殊的地方。不过需要验证下扩展模块相关 的ini配置文件是否已经配置在php支持的目录下。对于较老版本版本的PHP,你需要编辑 php.ini 并且增加