Linux Master: 7章 - FTPサーバ

| |

主なFTPサーバ

ProFTPD 構築

前提パッケージとして、libcap-devel が必要
実行例
(-d オプションにより、FTPコマンド(--->)が表示されます)
$ ftp -d ftp.riken.jp
Connected to ftp.riken.jp (134.160.38.1).
220 ::ffff:134.160.38.1 FTP server ready
Name (ftp.riken.jp:student): ftp
---> USER ftp
331 Anonymous login ok, send your complete email address as your password
Password:
---> PASS XXXX
230-******************************************************
 ftp.riken.jp is an unsupported ftp/http/https/rsync
 service of RIKEN Nishina Center for research support.
	:
ftp> ls
ftp: setsockopt (ignored): 許可がありません
---> PASV
227 Entering Passive Mode (134,160,38,1,137,108)
---> LIST
150 Opening ASCII mode data connection for file list
	:
p-rw-r--r--   1 archive	 archive  29988477 May 28  2015 proftpd-1.3.5a.tar.gz
-rw-r--r--   1 archive	archive	       57 May 30  2020 proftpd-1.3.7rc4.tar.gz.md5
-rw-r--r--   1 archive	archive	 20414318 Jul 21  2020 proftpd-1.3.7.tar.gz
-rw-r--r--   1 archive	archive	      204 Jul 21  2020 proftpd-1.3.7.tar.gz.asc
-rw-r--r--   1 archive	archive	       54 Jul 21  2020 proftpd-1.3.7.tar.gz.md5
226 Transfer complete
# y/n 確認を省く(y)
ftp> prompt
Interactive mode off.
ftp> mget proftpd-1.3.7.tar*
ftp: setsockopt (ignored): 許可がありません
---> PASV
---> NLST proftpd-1.3.7.tar*
local: proftpd-1.3.7.tar.gz.md5 remote: proftpd-1.3.7.tar.gz.md5
---> TYPE I
200 Type set to I
227 Entering Passive Mode (134,160,38,1,170,87)
---> RETR proftpd-1.3.7.tar.gz
150 Opening BINARY mode data connection for proftpd-1.3.7.tar.gz (20414318 bytes)
Transfer complete
20414318 bytes received in 5.36 secs (3806.46 Kbytes/sec)
ftp> quit
---> QUIT
221 Goodbye.
$ md5sum -c proftpd-1.3.7.tar.gz.md5
proftpd-1.3.7.tar.gz: 完了
$ tar xzf proftpd-1.3.7.tar.gz
$ cd ./proftpd-1.3.7
$ ./configure
checking build system type... x86_64-pc-linux-gnu
	:
config.status: executing default commands
--------------
Build Summary
--------------
--------------
$ make
echo \#define BUILD_STAMP \"金	2月 26 2021 21:46:40 JST\" > include/buildstamp.h
cd lib/ && make lib
	:
(cd .. && /usr/bin/install -c -o root -g root -m 0644 *.h /usr/local/include/proftpd/)
$ su
パスワード:
# make install
	:
make[1]: ディレクトリ `/home/student/work/proftpd-1.3.7/include' から出ます
/usr/bin/install -c -o root -g root -m 0644 ./proftpd.pc /usr/local/lib/pkgconfig/proftpd.pc
test -z """" || (cd locale/ && make install)
make[1]: ディレクトリ `/home/student/work/proftpd-1.3.7/include' から出ます
# exit
exit
$ exit

Anonymous 設定

/etc/proftpd.conf 設定例
<Anonymouse  公開ディレクトリ(~ftp)>
	User	ftp
	Group	ftp
	MaxClient	同時接上限
	DisplayLogin	"ログイン時のメッセージ"
<Anonymouse>

ProFTPD パッケージ

授業では Tarball 演習を行いましたが、 EPEL リポジトリ からパッケージを導入できます。
[student@h006 ~]$ yum list proftpd
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * centosplus: ftp.iij.ad.jp
 * epel: sg.fedora.ipserverone.com
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
利用可能なパッケージ
proftpd.x86_64			       1.3.5e-4.el7			    epel