Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5358680
  • 博文数量: 1144
  • 博客积分: 11974
  • 博客等级: 上将
  • 技术积分: 12312
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-13 20:06
文章存档

2017年(2)

2016年(14)

2015年(10)

2014年(28)

2013年(23)

2012年(29)

2011年(53)

2010年(86)

2009年(83)

2008年(43)

2007年(153)

2006年(575)

2005年(45)

分类: LINUX

2006-08-26 10:38:21

一、编译安装MYSQL
1、 上传源包到/usr/local/mysql-5.0.24.tar.tar
2、 tar zxvf mysql-5.0.24.tar.tar
3、 cd /usr/local/mysql-5.0.24
4、 groupadd mysql
5、 useradd -g mysql mysql
6、 ./configure --prefix=/usr/local/mysql
7、 make
8、 make install
9、 cp support-files/my-medium.cnf /etc/my.cnf
10、cd /usr/local/mysql
11、bin/mysql_install_db --user=mysql
12、chown -R root  .
13、chown -R mysql var
14、chgrp -R mysql .
15、bin/mysqld_safe --user=mysql &
 
二、编译安装VSFTPD
1、上传源包到 /usr/local/vsftpd-2.0.4.tar.tar
2、tar zxvf vsftpd-2.0.4.tar.tar
3、cd /usr/local/vsftpd-2.0.4
4、vi builddefs.h内容如下
 #ifndef VSF_BUILDDEFS_H
 #define VSF_BUILDDEFS_H
 #define VSF_BUILD_TCPWRAPPERS
 #define VSF_BUILD_PAM   (这行是关键)
 #define VSF_BUILD_SSL 
 #endif /* VSF_BUILDDEFS_H */
5、make
6、ls -l vsftpd
 -rwxr-xr-x  1 root root 86088 Jun  6 22:26 vsftpd  //可执行程序已被编译成功
7、创建必要的帐号,目录:
# useradd nobody  //可能你的系统已经存在此帐号,那就不用建立
# mkdir /usr/share/empty  //可能你的系统已经存在此目录,那就不用建立
# mkdir /var/ftp  //可能你的系统已经存在此目录,那就不用建立
# useradd -d /var/ftp ftp  //可能你的系统已经存在此帐号,那就不用建立
# chown root:root /var/ftp
# chmod og-w /var/ftp
请记住,如果你不想让用户在本地登陆,那么你需要把他的登陆SHELL设置成/sbin/nologin,比如以上的nobody和ftp我就设置成/sbin/nologin  
8、安装vsftp配置文件,可执行程序,man等:
# install -m 755 vsftpd /usr/local/sbin/vsftpd
# install -m 644 vsftpd.8 /usr/share/man/man8
# install -m 644 vsftpd.conf.5 /usr/share/man/man5
# install -m 644 vsftpd.conf /etc/vsftpd/vsftpd.conf
  如果该步出错(install: cannot create regular file `/etc/vsftpd/vsftpd.conf': No such file or directory
)是因为没有/etc/vsftpd目录,自己建一下就可以了。
mkdir /etc/vsftpd
9、编译/etc/vsftpd/vsftpd.conf在最后加入一行
   listen=YES
10、启动FTP服务
   /usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf &
此时已经可以匿名登录FTP了,这样就安装完成了。
(如果直接/usr/local/sbin/vsftpd 来启动的话,默认会调用/etc/vsftpd.conf配置文件的内容,请注意!)
 
三、建MYSQL的启动帐号
1 、useradd -d /home/ftpsite virtual
2、cp /etc/hosts /home/ftpsite
3、chown virtual.virtual /home/ftpsite/hosts 
 
四、建库文件
1、mysql
2、create database vsftpd;
3、use vsftpd;
4、create table users (id int AUTO_INCREMENT NOT NULL,name char(16) binary NOT NULL,passwd char(48) binary NOT NULL,primary key(id));
5、create table logs (msg varchar(255), user char(16), pid int, host char(32), rhost char(32), logtime timestamp );
6、quit
7、mysql
8、grant select on vsftpd.users to identified by '123456';
   grant insert on vsftpd.logs to identified by '123456';
9、use vsftpd
10、insert into users (name,passwd) values('tom','foo');
   insert into users (name,passwd) values('jerry','bar');
11、select * from users;
    如果能看到表内容就表示正常了。
五、安装PAM包
1、把源包考到 /usr/local/pam_mysql-0.7RC1.tar.gz
2、tar zxvf pam_mysql-0.7RC1.tar.gz
3、cd pam_mysql-0.7RC1
4、./configure --with-openssl  --with-mysql=/usr/lib/mysql
5、make
6、make install
7、配置/pam.d/vsftpd
内容如下(注意一下实际pam_mysql.so的路径,进行相应更改.)
auth required /lib/security/pam_mysql.so user=virtual passwd=123456 host=/tmp/mysql.sock db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=0 sqllog=1 logtable=logs logmsgcolumn=msg logusercolumn=user logpidcolumn=pid loghostcolumn=host logrhostcolumn=rhost logtimecolumn=logtime verbose=1
account required /lib/security/pam_mysql.so user=virtual passwd=123456 host=/tmp/mysql.sock db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=0 sqllog=1 logtable=logs logmsgcolumn=msg logusercolumn=user logpidcolumn=pid loghostcolumn=host logrhostcolumn=rhost logtimecolumn=logtime verbose=1
 
说明:如果MYSQL安装好以后,要修改MYSQL某个数据库的启动用户密码的话,只要做如下两步操作:
1)修改/etc/pam.d/vsftpd内容.把2处类似passwd=123456这样的密码改成你要设置的密码.
2)进入mysql后,运行
grant select on vsftpd.users to identified by 'yourpasswd';
grant insert on vsftpd.logs to identified by 'yourpasswd';
第1)步与第2)步的密码要一致.
3)重启MYSQL.
 
六、配置vsftpd
/etc/vsftpd/vsftpd.conf内容如下
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=virtual
listen=YES
listen_port=21
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999
anon_world_readable_only=NO
virtual_use_local_privs=YES
pam_service_name=vsftpd
 
七、高级配置VSFTPD
在/etc/vsftpd/vsftpd.conf 基础上加入
anon_max_rate=30000          '限制虚拟帐号下载速率
local_max_rate=30000         '限制本地帐号下载速率
max_per_ip=2                 '同时只能有2线程在下载
dirlist_enable=NO            '关闭帐号登录后的ls功能
修改
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
阅读(2896) | 评论(0) | 转发(0) |
0

上一篇:幸运星

下一篇:MIME

给主人留下些什么吧!~~