[我的阿里云服务器] —— FTP配置
前言:
FTP是我们用来向服务器上传或者下载文件很重要的一个工具,特别是云服务器,无法使用外设传送文件。
所以下面我们就来配置一下FTP,但是FTP的21端口,通常也是黑客进攻的一个目标,所以需要小心使用。
服务器配置(因为处于学习,所以几乎选了最破的配置了):
1、CPU:单核
2、内存:512M
3、系统盘:Linux送20G,Ubuntu 12.04 64位系统
4、数据盘:10G
5、公网带宽:1M
一、安装VSFTPD
VSFTPD是一款小巧易用FTP服务器程序,vsftpd 在安全性、高性能及稳定性三个方面有上佳的表现。
它提供的主要功能包括虚拟IP设置、虚拟用户、Standalone、inetd操作模式、强大的单用户设置能力及带宽限流等。在安全方面,它从原理上修补了大多数Wu-FTP、ProFTP,乃至BSD-FTP的安装缺陷,使用安全编码技术解决了缓冲溢出问题,并能有效避免"globbing"类型的拒绝服务攻击。
使用命令:
apt-get install vsftpd
然后,在/srv目录下,就新增了一个ftp目录。
我们可以使用查找ftp目录,看看都新增了哪些目录:
find / -name ftp
可以发现很多目录下都增加了ftp目录,有些我们在下面还会接触到。
此时,我们可以访问ftp://服务器所在IP地址或域名/,就会发现一个空白的FTP目录。
二、添加ftp用户
当安装完毕后,一般会自动生成一个“ftp”账户,如果没有的话,我们就手动添加。
useradd -m ftp #-m表示创建用户,但不创建用户目录。
如果已经拥有ftp账户,它会提示你已经存在。
修改密码:
passwd ftp
修改权限:
chmod 777 /srv/ftp
三、配置vsftpd
通过修改/etc/vsftfd.conf文件,我们就可以配置vsftfd了。
首先,备份原来的配置文件。
cp /etc/vsftpd.conf /etc/vsftpd.conf.backup
然后修改conf文件,修改匿名、本地、上传、下载配置。
# cat /etc/vsftpd.conf # 服务器以 standalong 模式运行,如果以 root 用户直接启动 vsftpd 进程,则必须。 # 注销语句以 xinetd 方式运行 listen=YES # 上传总开关(全局控制) write_enable=YES # 不接受匿名用户,默认无密码请求 anonymous_enable=NO # 接受本地用户 local_enable=YES # 本地用户上传文件(包括目录)的 umask # 注意 vsftp 版本,某些旧版的该选项会被 chown_uploads/chown_username 二选项覆盖 local_umask=022 # 允许匿名用户上传文件,配合 anon_umask,否则文件权限皆为默认的 600,用户上传的文件不提供给任何匿名用户下载 #anon_upload_enable=YES # 匿名用户上传文件(包括目录)的 umask # 注意点同 local_umask anon_umask=022 # 允许匿名用户创建目录,配合 anon_umask 实现目录可写,否则依我(aBiNg)看,实际用处很小 #anon_mkdir_write_enable=YES # 允许匿名用户删除/重命名文件等操作 #anon_other_write_enable=YES # 为 YES 则进入目录时显示此目录下由 message_file 选项指定的文本文件(默认为 .message)的内容 dirmessage_enable=YES # 使用上传/下载日志,日志文件默认为 /var/log/vsftpd.log,可以通过 xferlog_file 选项修改 xferlog_enable=YES # 使用 port 模式连接,并启用 20 端口 connect_from_port_20=YES # 改变用户上传文件的所有者 #chown_uploads=YES #chown_username=whoever #xferlog_file=/var/log/vsftpd.log # 日志使用标准 xferlog 格式 #xferlog_std_format=YES # 用户登陆后 idle 时间,超过设置超则被踢出服务器 #idle_session_timeout=600 # login 时的欢迎信息 ftpd_banner=Welcome to feifei FTP service. #deny_email_enable=YES #banned_email_file=/etc/vsftpd.banned_emails # 若为 NO,则记录在 chroot_list_file 选项所指定的文件(默认是 /etc/vsftpd.chroot_list)中的用户将被 # chroot 在登录后所在目录中,无法离开。如果为 YES,则所记录的用户将不被 chroot。 chroot_local_user=YES # 设置为 YES 则下面的控制有效 chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list #ls_recurse_enable=YES #secure_chroot_dir=/var/run/vsftpd #pam_service_name=vsftpd #rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem #rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
四、设置vsftpd用户目录
1、增加ftp组
groupadd ftpgroup
2、添加ftp用户
useradd –g ftpgroup –d /srv/ftp –M ftpuser
passwd ftpuser
3、修改chroot_list文件(上面已经在vsftpd.conf文件中设置过chroot_list_file=/etc/vsftpd/chroot_list)
vi /etc/vsftpd.chroot_list
添加 ftpuser
4、重启vsftpd
/etc/init.d/vsftpd restart
service vsftpd stop
两种方式都可以。
5、使用完毕后,关闭vsftpd
service vsftpd stop
最后,通过上面这个过程我们就可以使用FTP进行文件传输了。当然,可能不同情况下,也会出现问题,
这里就是跟大家分享一下我的学习过程。希望对大家有帮助。
出处:http://www.cnblogs.com/ColdJokeLife/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,请联系我,非常感谢。