웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[FreeBSD] Proftp + MySQL 연동 설치하기
2002.12.09 16:08
안녕하세요.
DeX™입니다.
다음은 Proftp 와 MySQL을 연동하여 설치하는 방법을 설명해드리려 합니다.
다음글의 원글은
자바월드의 안광해님(_kaiser@shinbiro.com)의 글입니다.
특별히 수정하거나 바꿔줄것이 없어서
그대로 글을 남깁니다.
첨부파일은 proftp.sql 테이블 스키마입니다.
1. proftp를 설치합니다.
make install clean WITH_MYSQL
2. MySQL을 설치합니다.
make install clean WITH_CHARSET=euc_kr BUILD_OPTIMIZED=yes
=================================================================
MySQL 설정을 해준뒤 "proftp" 데이타베이스를 생성합니다.
DB 생성후 아래 테이블구조를 해당DB에서 만들어줍니다.
(아래 테이블구조와 똑같이 만들 필요는 없습니다.
users 테이블에 name , email ,reg_date ,ip , ..등은 필요로 인해 생성되었습니다.)
# 데이터베이스 : `proftp`
# --------------------------------------------------------
#
# 테이블 구조 `groups`
#
CREATE TABLE groups (
gname varchar(12) NOT NULL default '',
gid int(10) unsigned default NULL,
members text,
PRIMARY KEY (gname)
) TYPE=MyISAM;
# --------------------------------------------------------
#
# 테이블 구조 `users`
#
CREATE TABLE users (
userid varchar(12) NOT NULL default '',
uid int(10) unsigned NOT NULL auto_increment,
gid int(10) unsigned default '1000',
passwd varchar(63) default NULL,
shell varchar(255) default '/bin/sh'+ ',
homedir varchar(255) default '/home/data/',
count int(10) unsigned NOT NULL default '1',
valid int(10) unsigned default '0',
email varchar(50) default NULL,
name varchar(30) binary NOT NULL default '',
reg_date datetime default NULL,
ip varchar(17) default NULL,
PRIMARY KEY (userid),
KEY uid_primary (uid),
KEY index_name (name)
) TYPE=MyISAM;
==============================================================================
proftpd.conf 파일입니다.
환경내용중 SQL에 관련 부분만 적어두겠습니다. (리눅스와 똑 같습니다.)
# mysql (***는 패스워드입니다.)
SQLConnectInfo proftp@localhost:3306 root ********
SQLUserInfo users userid passwd uid gid homedir shell
SQLGroupInfo groups gname gid members
SQLUserWhereClause "valid = 1"
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1 where userid='%u'" users
SQLAuthTypes Crypt
SQLAuthenticate users* groups* usersetfast groupsetfast
SQLDefaultHomedir /home/data
SQLNamedQuery count SELECT "count from users where userid='%u'"
SQLShowInfo PASS "230" "%u님은 지금까지 %{count}번 접속하셨음다."
==============================================================================
SQLConnectInfo 꼭 root로 접속을 안해도 됩니다.
SQLDefaultHomedir 부분(/home/data)은 임의로 정의하실수 있습니다.
샘플로 유저를 한명 만들어 보고 테스트해봅니다.
INSERT INTO `users` ( `userid` , `passwd` , `valid` )
VALUES ( 'tuser', ENCRYPT( 'test' ) ,'1')
편한 프비 좋은 프비
^___________^
DeX™입니다.
다음은 Proftp 와 MySQL을 연동하여 설치하는 방법을 설명해드리려 합니다.
다음글의 원글은
자바월드의 안광해님(_kaiser@shinbiro.com)의 글입니다.
특별히 수정하거나 바꿔줄것이 없어서
그대로 글을 남깁니다.
첨부파일은 proftp.sql 테이블 스키마입니다.
1. proftp를 설치합니다.
make install clean WITH_MYSQL
2. MySQL을 설치합니다.
make install clean WITH_CHARSET=euc_kr BUILD_OPTIMIZED=yes
=================================================================
MySQL 설정을 해준뒤 "proftp" 데이타베이스를 생성합니다.
DB 생성후 아래 테이블구조를 해당DB에서 만들어줍니다.
(아래 테이블구조와 똑같이 만들 필요는 없습니다.
users 테이블에 name , email ,reg_date ,ip , ..등은 필요로 인해 생성되었습니다.)
# 데이터베이스 : `proftp`
# --------------------------------------------------------
#
# 테이블 구조 `groups`
#
CREATE TABLE groups (
gname varchar(12) NOT NULL default '',
gid int(10) unsigned default NULL,
members text,
PRIMARY KEY (gname)
) TYPE=MyISAM;
# --------------------------------------------------------
#
# 테이블 구조 `users`
#
CREATE TABLE users (
userid varchar(12) NOT NULL default '',
uid int(10) unsigned NOT NULL auto_increment,
gid int(10) unsigned default '1000',
passwd varchar(63) default NULL,
shell varchar(255) default '/bin/sh'+ ',
homedir varchar(255) default '/home/data/',
count int(10) unsigned NOT NULL default '1',
valid int(10) unsigned default '0',
email varchar(50) default NULL,
name varchar(30) binary NOT NULL default '',
reg_date datetime default NULL,
ip varchar(17) default NULL,
PRIMARY KEY (userid),
KEY uid_primary (uid),
KEY index_name (name)
) TYPE=MyISAM;
==============================================================================
proftpd.conf 파일입니다.
환경내용중 SQL에 관련 부분만 적어두겠습니다. (리눅스와 똑 같습니다.)
# mysql (***는 패스워드입니다.)
SQLConnectInfo proftp@localhost:3306 root ********
SQLUserInfo users userid passwd uid gid homedir shell
SQLGroupInfo groups gname gid members
SQLUserWhereClause "valid = 1"
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1 where userid='%u'" users
SQLAuthTypes Crypt
SQLAuthenticate users* groups* usersetfast groupsetfast
SQLDefaultHomedir /home/data
SQLNamedQuery count SELECT "count from users where userid='%u'"
SQLShowInfo PASS "230" "%u님은 지금까지 %{count}번 접속하셨음다."
==============================================================================
SQLConnectInfo 꼭 root로 접속을 안해도 됩니다.
SQLDefaultHomedir 부분(/home/data)은 임의로 정의하실수 있습니다.
샘플로 유저를 한명 만들어 보고 테스트해봅니다.
INSERT INTO `users` ( `userid` , `passwd` , `valid` )
VALUES ( 'tuser', ENCRYPT( 'test' ) ,'1')
편한 프비 좋은 프비
^___________^
댓글 2
-
script
2002.12.09 17:59
프비괸찮죠...(10자떄우기) -
강윤호
2003.01.05 03:22
INSERT INTO `users` ( `userid` , `passwd` , `valid` )
VALUES ( 'tuser', ENCRYPT( 'test' ) ,'1')
문법이 틀렸어여... 아래가 맞는 겁니다 ... ㅡ.ㅡㅋ
INSERT INTO users (userid, passwd, valid)
VALUES ('tuser', password('test'),1);