 |
 |
 |
 |
|
>> Read No. 1049 article |
|
|
GLFTPD For Virtual Service
|
 |
 |
 |
 |

등록 2001-03-02 22:10:00
조회 5
이름 LeCieL

|
 |
 |
작성자 : 오명오 <xiopadm at dgtalx.net>
전 DGTALX 의 Virtual Service 용 GLFTPD 설정값을 공개합니다.
적절한 수정을 거치고 사용하셔야 합니다.
1 장 ---------- GLFTPD Configuration File -----------------
shutdown 0
sitename_long Digital[:space:]X-Network[:space:]User Area
sitename_short DGTALX
email xiopadm at dgtalx.net login_prompt Welcome[:space:]to[:space:]X-Network[:space:]User[:space:]FTP
rootpath /
master xnetadmin
datapath /daemon/userftpd/ftp-data
pwd_path /daemon/userftpd/etc/passwd
grp_path /daemon/userftpd/etc/group
welcome_msg /daemon/userftpd/ftp-data/misc/welcome.msg *
goodbye_msg /daemon/userftpd/ftp-data/misc/goodbye.msg *
newsfile /daemon/userftpd/ftp-data/misc/newsfile *
banner /daemon/userftpd/ftp-data/misc/banner
speed_limit /* 500000 500000
stat_section userdb * yes
upload * *
makedir * *
download * *
resume * *
dirlog * *
rename * *
nuke * =ADMIN
deleteown * *
overwrite * *
secure_ip 0 1 *
show_totals *
show_diz .message
free_space 500
max_users 10 3
total_users 50
dupe_check 0
ignore_noop 1
dl_incomplete 1
noretrieve passwd passwd- group group-
no_ident *
hideuser -xnetadmin
default_homedir /wwwroot/users
min_homedir /wwwroot/users
file_names 0 * [:space:]_ ,. ([ )]
dir_names 0 * [:space:]_ ,. ([ )]
pre_check /daemon/userftpd/bin/chkqta
oneliners /daemon/userftpd/ftp-data/misc/oneliners 7
requests /daemon/userftpd/ftp-data/misc/requests 10
lastonline /daemon/userftpd/ftp-data/misc/lastonline 10
nukedir_style Deleted-%N 1 10
empty_nuke 1000
multiplier_max 1
privgroup ADMIN X-Network[:space:]Server[:space:]Admin
site_cmd RULES TEXT /daemon/userftpd/ftp-data/misc/site.rules
site_cmd SETTING EXEC /daemon/userftpd/bin/setup.sh
custom-rules !8 *
custom-locate !8 *
custom-setting 1
-addip 1 2 7
-adduser 1 2 7
-change 1 7
-changeflags 1
-changeratio 1 2 7
-changesratio 1 7
-changehomedir 1
-chmod 1 3
-chgrp 1 7
-chgrp-priv 1
-chpass 1
-delip 1 2 7
-deluser 1 2 7
-dirs !8 *
-flags !8 *
-gadduser 1 7
-ginfo 2 H
-give G
-group !3 *
-groups !8 *
-grpadd 1
-grpdel 1
-grplog 1
-grpnfo 1 2
-grpren 1
-help !8 *
-info !8 *
-kick D
-kill E
-logins 1
-misc !8 *
-msg !8 *
-msg* 1
-msg= 1
-msg{ !8 *
-nuke A
-passwd !8 *
-purge 1
-readd 1 2 7
-renuser 1 7
-reqlog 1 A B 7
-request !8 *
-show 1
-stats !8 *
-search 1
-new 1
-request 1
-swho =ADMIN 1 E
-take F
-uchanges 1 =ADMIN
-undupe C
-unnuke B
-update 1
-user 1
-users H
-usercomment 1 7
-userextra 1 2 7
-who 1 2 7
-ziputils !8 *
-noaccess /glftpd/ftp-data/text/noaccess.txt
2 장 ---------- GLFTPD Command Script File -----------------
제작은 BASH로 되었습니다
1 - precheck script - quota 체커
quota 를 체크하는 것입니다.
스크립이 대용량에서는 문제가 있으니 쉘사용자의 계정을 100메가 미만으로 주십시요.
#!/bin/bash -
# Script by X-Network Admin Oh Myung Oh <xiopadm at dgtalx.net>
quota=`du -sh /wwwroot/users/$USER | awk '/[M]/{
a=int($1);
if ( a <= 100 ) printf("OK");
else printf("FALSE");
}'`
if [ "$quota" = "OK" ] ; then
echo "Uploading Allowed by X-Network ADMIN"
exit 0
fi
if [ "$quota" = "FALSE" ] ; then
echo "허용용량을 초과하여 업로드가 불가능합니다"
exit 2
fi
2 - precheck script - setting up - 유저추가할때..
setup.sh 파일입니다.
#!/bin/sh
pid=`cat /daemon/userftpd/etc/number.uid`
rm -f tests
if [ "$1" = "" ] ; then
echo "계정을 잘못치셨습니다"
exit 2
fi
echo "User $1 Initialization Starting..."
cd /daemon/userftpd/etc
cat passwd | grep -v $1 > tests
checkrt=`cat passwd | grep -i $1`
if [ "$checkrt" = "" ] ; then
echo "해당하는 계정이 존재하지 않습니다"
exit 2
fi
cat passwd | grep -i $1 | awk --field-separator : ' {
getline pid < "number.uid"
printf("%s:%s:%d:%d:%s:/wwwroot/users/%s:/bin/false", $1, $2, pid, $4, $5, $1);
}' >> tests
echo "Directory Changing"
cd /wwwroot/users
mkdir $1
chown $pid $1
chgrp users $1
chmod 755 $1
echo "making user's home directory OK"
echo "$pid" | awk '{
c=$1; cc=c+1;
printf("%d", cc);
}' > /daemon/userftpd/etc/number.uid
cd /daemon/userftpd/etc/
rm -f passwd
mv tests passwd
echo "User $1 initialization Success."
echo "Virtual Host Directory Updating Start"
echo "<VirtualHost 211.172.226.23>" >> /daemon/apache/conf/name_alias/glftpd_vuser
echo " ServerAdmin $1 at dgtalx.net" >>
/daemon/apache/conf/name_alias/glftpd_vuser
echo " DocumentRoot /wwwroot/users/$1" >> /daemon/apache/conf/name_alias/glftpd_vuser
if [ "$2" = "" ] ; then
echo " ServerName $1.dgtalx.net" >> /daemon/apache/conf/name_alias/glftpd_vuser
else
echo " ServerName $2.dgtalx.net" >> /daemon/apache/conf/name_alias/glftpd_vuser
fi
echo "</VirtualHost>" >> /daemon/apache/conf/name_alias/glftpd_vuser
chmod 640 /daemon/apache/conf/name_alias/glftpd_vuser
echo "Update Complete.. restarting apache daemon"
killall -HUP httpd
echo "restarting complete"
echo "$1 IN A 211.172.226.23" >> /var/named/vuser-dgtalx.net
echo "Name Service Add Complete"
echo "Hupping Name Daemon"
ndc reload
chmod 640 /var/named/vuser-dgtalx.net
chown named.named /var/named/vuser-dgtalx.net
chmod 644 /daemon/userftpd/etc/passwd
chmod 644 /daemon/userftpd/etc/passwd-
echo "All Process Succefully completed"
2 장 ---------- ETC Settings -----------------
inetd.conf 설정입니다
glftpd stream tcp nowait root /usr/sbin/tcpd /glftpd/bin/glftpd -l -o -i -r /etc/glftpd.conf
userftpd stream tcp nowait root /usr/sbin/tcpd /daemon/userftpd/bin/glftpd -l -o -i -r /etc/userftp.c
onf service 설정입니다
glftpd 11/tcp
userftpd 23/tcp
자동 생성할 사용자 계정 디렉토리 : /wwwroot/users
아파치 설정에 해당 존만 별도로 include 설정
bind 설정에 전용 존파일 설정
이 문서를 작성자의 허락없이 다른곳으로 등록하지 마십시요.
부가적인 도움이 필요하시면 질문/답변란에 등록하십시요.--2001.3.2 일 X-Network 오명오
|
|
|
페이지로딩: [ 0.83 초 ]
작업시간: [ 0.07 초 ]
|
|
 |
 |
![[TOP]](/images/color///top.gif) 
|
 |
 |
 |
 |
|
|