关于FTP
File Transfer Protocol(文件传输协议)搭建个人网站需要向自己的云主机上传(upload)写好的网站模版,在Linux下就需要一个接收(download)文件的服务器。ubuntu 16.04 默认是没有FTP的,就需要自己搭建环境。
搭建FTP服务器流程
linux下用到的软件 VSFTPD
su 切换到root用户
检查主机是否安装了该软件
#rpm -qa |grep vsftpd
如果没有
apt安装
#apt-get install vsftpd
yum安装
#yum install vsftpd -y
装完之后 ,启动vsftpd服务
启动ftp命令 #service vsftpd start
停止ftp命令 #service vsftpd stop
重启ftp命令 #service vsftpd restart
编辑该配置文件(该文件就是vsftpd的配置文件)
vim etc/vsftpd.conf
打开是这样的
- listen=No 应该是后台监听,这个不用动
- anonymous_enable=NO 拒绝匿名登陆
- write_enable=YES 设置可以上传文件
- xferlog_enable=YES 开启日志记录
- connect_from_port_20=YES 绑定20端口
- ftpd_banner=Welcome to FTP service.登陆提示
- chroot_local_user=YES 是否将所有用户限制在主目录
- chroot_list_enable=YES 是否启动限制用户的名单
- chroot_list_file=/etc/vsftpd.chroot_list 设置一个可以登陆的白名单
- utf8_filesystem=YES
- pam_service_name=ftp (ubuntu)
以上就是配置文件里面需要改的,ubuntu下安装vsftpd只有一个配置文件,这时候就需要我们新建vsftpd.chroot_list并往里面添加我们允许登陆的用户名(一行一个)
vim /etc/vsftpd.chroot_list
然后就是创建ftp用户了
mkdir /home/username
sudo useradd username -g ftp -d /home/username -m username
sudo passwd username's password
mkdir /home/username/pub
chmod 777 -R /home/username/pub新建一个pub目录用于存放文件,并且赋予全部访问权限
usermod -s /sbin/nologin username限制用户username只能通过ftp登陆,而不能直接登陆服务器
然后重启vsftpd服务,这样ftp服务器就搭建完成了。
客户机登录上传
用了FileZilla_Server感觉并不好用,然后我就换成了WinScp
然后就可以往自己的主机上传网站了。
(vsftpd.conf 配置文件如果需要全部删除复制写好的配置就在命令模式下 .,$d 回车就会清空所有行。)