安装ftp:
sudo apt-get install vsftpd
检查版本:
sudo vsftpd --version
检查状态和启动
sudo service vsftpd status 状态
sudo service vsftpd stop 停止
sudo service vsftpd start 启动
建立新用户:
sudo useradd ftpuser -d /home/ftpuser -m 设置用户名ftpuser和ftp目录/home/ftpuser
sudo passwd ftppwd 设置ftp密码,确认2次
sudo chmod 777 -R /home/ftpuser 设置用户目录权限
sudo usermod -l huitt(新用户名称) ftpuser (老用户)
sudo chmod 777 -R解释:
sudo chmod 777 -R 路径 (可以获取一个文件夹得操作权限)
读、写、运行三项权限可以用数字表示,就是:
r=4, w=2, x=1。
rw-r--r--用数字表示成644
777就是rwx--rwx--rwx,意思是该登录用户(可以用命令id查看)、他所在的组和其他人都有最高权限。
ftp的配置文件:
sudo vim /etc/vsftpd.conf // 修改配置文件
具体配置:
listen=NO //是否开启监听ipv4和ipv6数据
listen_ipv6=YES //是否开启监听ipv6数据
anonymous_enable=NO //是否允许匿名登陆,无需密码
# Uncomment this to allow local users to log in.
local_enable=YES //是否允许本地用户登录
#write_enable=YES //是否允许登陆者上传文件, 如果需要上传文件可开启
local_umask=022 //设置本地用户默认要减免的权限
dirmessage_enable=YES //目录消息,能够给远程登陆的用户发送目录
use_localtime=YES //服务器所展示的目录将随着本地时间而改变
#
# Activate logging of uploads/downloads.
xferlog_enable=YES //开启上传下载的日志记录
connect_from_port_20=YES //确认连接传输的端口号为20
xferlog_file=/var/log/vsftpd.log //日志文件存放位置
xferlog_std_format=YES //日志文件采用标准格式
ftpd_banner=Welcome to FTP service. //在使用shell时登陆那么会发送欢迎语
#chroot_local_user=YES //对本地用户是否实施限制
#chroot_list_enable=YES //开启限制白名单
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list //白名单路径,若无这个文件需要自己创建
secure_chroot_dir=/var/run/vsftpd/empty
# pam_service_name=vsftpd
pam_service_name=ftp //此处ubuntu的系统需要改为ftp
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
utf8_filesystem=YES //编码统一为utf8编码,可以识别中文,防止乱码
local_root=/home/ftpuser //本地用户默认访问的目录
pasv_enable=YES //Ftp服务器的工作模式,此时为被动模式, 如果设置port_enable=YES,就表示主动模式
pasv_min_port=6000 //在PASV模式下,建立数据传输所可以使用port范围的下界
pasv_max_port=7000 //在PASV模式下,建立数据传输所可以使用port范围的上界,把端口范围设在比较高的一段范围内,比如50000-60000,将有助于安全性的提高。
删除用户:
sudo userdel username 注意:这个被删除用户登录情况下无法删除
useradd介绍:
useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。
具体格式:
useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
参数介绍:
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的启始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号。
usermod介绍:
格式:
usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]
参数说明:
- -c<备注> 修改用户帐号的备注文字。
- -d登入目录> 修改用户登入时的目录。
- -e<有效期限> 修改帐号的有效期限。
- -f<缓冲天数> 修改在密码过期后多少天即关闭该帐号。
- -g<群组> 修改用户所属的群组。
- -G<群组> 修改用户所属的附加群组。
- -l<帐号名称> 修改用户帐号名称。
- -L 锁定用户密码,使密码无效。
- -s<shell> 修改用户登入后所使用的shell。
- -u<uid> 修改用户ID。
- -U 解除密码锁定。