で openbsd 純正ftpdを導入。
これは
http://www.openbsd.org/faq/faq10.html#vipw
をみれば ftpdの導入は容易。
# echo /usr/bin/false >> /etc/shells
# adduser Use option ``-silent'' if you don't want to see all warnings and questions. Reading /etc/shells Check /etc/master.passwd Check /etc/group Ok, let's go. Don't worry about mistakes. There will be a chance later to correct any input. Enter username []: ftp Enter full name []: anonymous ftp Enter shell csh false ksh nologin sh [ksh]: false Uid [1002]: Enter Login group ftp [ftp]: Enter Login group is ``ftp''. Invite ftp into other groups: guest no [no]: Enter Login class authpf daemon default staff [default]: Enter Enter password []: Enter Disable password logins for the user? (y/n) [n]: y Name: ftp Password: **** Fullname: anonymous ftp Uid: 1002 Gid: 1002 (ftp) Groups: ftp Login Class: default HOME: /home/ftp Shell: /usr/bin/false OK? (y/n) [y]: Enter Added user ``ftp'' Copy files from /etc/skel to /home/ftp Add another user? (y/n) [y]: n Goodbye!
# ./comment-out.bat /etc/rc.conf.local
dhcpd_flags="" #NO # for normal use: ""
ntpd_flags="" #NO # for normal use: ""
ftpd_flags="-llUSA"
Users in a login class with the ftp-chroot variable set are automatically chrooted.
Additionally, you can add a username to the file /etc/ftpchroot to chroot those usernames.
だけ覚えていけばよい。
普通に ユーザー ftp-1をつくってここにロウロクすれば
chroot される。
IDとパスワードがついてくる。
lftp OB -i ftp-1 てかんじ。
lftp OB だと /home/ftpにはいっていく。
問題はこれからで
opebsdをインターネットに晒すftpサーバーするには、
http://www.openbsd.org/faq/pf/ftp.html
をみないとできない。
インターネットの場合は 普通は1台のマシンだけだから
PF is running on the FTP server itself なので
インターネット---------router------------------------------linux(実験用)
|
sis0 OpenBSD ne3--intraet
from linux, lftp OpenBSD -u joe
int_if="ne3"
ext="sis0"
tcp_services="{ 22, 113 }"
icmp_types="echoreq"
set block-policy return
set loginterface $ext
set skip on lo
match out on $ext inet from !($ext:network) to any nat-to ($ext:0)
block in log
pass out quick
antispoof quick for { lo $int_if }
pass in on $ext inet proto tcp from any to ($ext) port $tcp_services
pass in inet proto icmp all icmp-type $icmp_types
pass in on $int_if
pass in on $ext proto tcp to port 21
pass in on $ext proto tcp to port > 49151
くらいでできる。
0 件のコメント:
コメントを投稿