vsftp的使用 之 帐号的创建

如果要以系统中存在的普通用户登入FTP,也没 有什么可以设置的,添加一个用户就行。比如我要添加beinan这个

用户,就要用下面的办法

[root@linuxsir001 root]# adduser beinan

[root@linuxsir001 root]# passwd beinan

Changing password for user beinan.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

这样的话,我们就可以通过ftp软件里面的ssh2功能连接服务器,并且有访问所有文件夹的权限.并且这个用户用登录ssh的权限

如果我们想让beinan这个用户作为虚拟用户,也就是说,beinan这个用户是不能登入系统的,只能是登入FTP

。 那这样的用户应该如何添加呢??

[root@linuxsir001 backupNow]# adduser -g ftp -s /sbin/nologin beinan

[root@linuxsir001 backupNow]# passwd beinan

Changing password for user beinan.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.


如果是添加虚拟用户,也就是不让用户登入系统,只能登入FTP的用户。如果我们想把beinan这个用户目录定位在/opt/beinan这个目录中,根 据上面的方法。我们应该如下操作

[root@linuxsir001 backupNow]# adduser -d /var/ftp -g ftp -s /sbin/nologin beinan

[root@linuxsir001 backupNow]# passwd beinan

Changing password for user beinan.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.



如果使用者的预设目录为/var/ftp,若我们不希望使用者在ftp 时能够
切换到上一层目录/var,则可以使用以下步骤。
1、 修改/etc/vsftpd/vsftpd.conf中的如下项:
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
改为
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
2、新增一个档案: /etc/vsftpd/chroot_list,内容为需要限制的用户名列表,如:
peter
john
3、重新启动vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
以上介绍的只能配置普通的FTP用户,那样配置的用户只有只读权限,也就是说只能下载文件,如果更详细的配置FTP用户的权限,比如用户可以上传文件,或 者新建目录等,需要配置虚拟用户。

下面是介绍vsftp配置虚拟用户的方法
CENTOS5安全的VSFTP设置:虚拟用户
VSFTP安装后的FTP用户是系统用户:即不仅可以ftp登录还可以以用户身份ssh登录系统。这对系统管理员太可怕了,你可不能保证你的ftp用户都 是好人,那么,我们来把ftp用户虚拟化让用户只能ftp登录而不能ssh登录。注:系统为CENTOS5,VSFTP 2.0.5.


VSFTP虚拟用户的建立:

1.建立系统帐户virtual, 不设立密码,加入ROOT组,SHELL为NOLOGIN,使不能SHELL登录系统。
useradd -d /var/www/html -s /sbin/nologin -g root virtual

2.ldd /usr/sbin/vsftpd
libpam.so.0 => /lib/libpam.so.0 (0x00d7b000)

3.(这里要安装db4程序,因为下面要用到db_load命令生成数据库)
yum -y install db4*

4.建立一个/etc/vsftpd/users.txt的文件,单行为用户名,双行为密码.
upload1
123
upload2
123

5.db_load -T -t hash -f /etc/vsftpd/users.txt /etc/vsftpd_login.db
chmod 600 /etc/vsftpd_login.db(防止被修改)

6.vi /etc/pam.d/ftp.virtual
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

7.编写配置文件
anonymous_enable=NO
local_enable=YES
write_enable=NO
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
listen=YES
chroot_local_user=YES
guest_enable=YES
guest_username=virtual
file_open_mode=0777
user_config_dir=/etc/vsftpd/vsftpd_user_conf
pam_service_name=ftp.virtual
virtual_use_local_privs=YES



8.vi /etc/vsftpd/vsftpd_user_conf/upload1   !!!注意:每行的等号前后都不要有空格,否则启动时会出现错误!!!   如(bad bool value in config file for:anon_world_readable_only)!!!!
local_root=/var/ftp/upload1
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES




# vi /etc/vsftpd_user_conf/upload2 文件内容如下
local_root=/var/ftp/upload2
write_enable=NO
anon_world_readable_only=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
# chmod 700 /home/vsftpd/test1
# chown vsftpd.vsftpd /home/vsftpd/upload2  

OK了。此upload用户可以下载,上传,修改/var/www/html里面的文件,

你可能感兴趣的:(ssh,配置管理,Security,F#)