[global]
workgroup = MYGROUP
server string = Samba Server Version %v
security = share
passdb backend = tdbsam
load printers = yes
cups options = raw
[temp]
comment = Temporay file space
path = /temp
read only = no
public = yes
[data]
comment = Temporay file space
path = /data
read only = no
public = yes
复制代码
3.3. 保存配置文件,重启Samba服务:/etc/init.d/smb restartlinux
注意:在访问时要关闭防火墙和Selinux,不然不能访问。若是不能对文件夹作操做,要将该文件夹的权限改成777,及chmod 777 文件夹名数据库
# 格式为:共享目录 ip地址(若是为*就是全部) 其余参数
/data/ *(rw,sync,no_all_squash)
复制代码
括号内的参数说明如图所示: vim
什么是FTP服务器? FTP是文件传输协议,正是这种协议使得主机间能够共享文件。FTP使用TCP生成一个虚拟链接用于控制信息,而后再单独生成一个TCP链接用于数据传输。 vsftpd是一款再Linux发行版本中最主流的FTP服务器,特色是小巧轻快,安全易用。 目前在开源系统中经常使用的FTP服务器程序主要有,vsftpd、proFTPD、PrueFTPD和wuftpd等。windows
vsftpd的安装步骤以下: 2.1. 安装:yum install vsftpd* -y 2.2. 安装成功后重启服务:/etc/init.d/vsftpd restart 2.3. 修改配置文件/etc/vsftpd/vsftpd.conf 配置文件详解如图所示: 安全
以上步骤FTP服务器已经搭建成功,若是要访问也能够输入ftp://服务器ip地址访问,可是这种访问方式并不安全也不提倡,因此,如下就介绍一种安全的方式,利用vsftpd虚拟用户登录FTP服务器,步骤以下:bash
3.1. 安装FTP虚拟用户须要用到的软件及认证模块:yum install pam* db4* --skip-broken-y服务器
3.2. 建立并生成vsftpd数据库文件:vim /etc/vsftpd/ftpusers.txt ,文件的内容以下网络
zgy # FTP虚拟用户名
123456 # FTP虚拟用户的密码
复制代码
注意:该内容能够写多个,及能够填多个用户并发
3.3. 生成数据库文件:db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db ,而后对“vsftpd_login.db”文件进行受权:chmod 777 /etc/vsftpd/vsftpd_login.db 。分布式
3.4. 配置PAM验证文件,在配置文件/etc/pam.d/vsftpd 的行首中添加以下两行认证语句(若是是32位,lib64要改成lib,若是是redhat,加入的语句不同,须要注意)
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
复制代码
3.5. 建立vsftpd映射本地用户,由于全部的ftp虚拟用户,须要使用一个系统用户,这个系统用户不须要密码,也不须要登陆,主要用来作虚拟用户映射使用。建立用户:useradd -d /home/ftpuser -s /sbin/nologin ftpuser 。
3.6. 修改vsftpd的配置文件,vim /etc/vsftpd/vsftpd.conf,修改以下:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
listen=YES
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftp_user_conf
virtual_use_local_privs=YES
复制代码
保存后重启服务,/etc/init.d/vsftpd restart 。便可使用虚拟用户登录,这时候全部的虚拟用户共同使用/home/ftpuser 目录上传下载,若是想使用本身独立的目录,能够在/etc/vsftpd/vsftpd_user_conf 目录建立各自的配置文件。如给zgy用户建立独立的配置文件,vim /etc/vsftpd/vsftpd_user_conf/zgy ,内容以下:
local_root=/home/ftpsite/zgy
write_enable=YES
anon_world_readable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
复制代码
扩展命令:
4.1. 检查服务器日志:tail -fn 100 /var/log/messages
4.2. 永久关闭防火墙:chkconfig iptables off
FTP主被动模式什么?
5.1. 主动模式:客户端从一个任意的非特权端口N(N>1024)链接到FTP服务器的port21命令端口。而后客户端开始监听端口N+1,并发送FTP命令“port N+1”到FTP服务器。接着服务器会从它本身的数据端口(20)链接到客户端指定的数据端口(N+1)。
5.2. 被动模式:客户端从一个任意的非特权端口N(N>1024)链接到FTP服务器的port21命令端口。而后客户端开始监听端口N+1,同时客户端提交PASV命令。服务器位开启一个任意的非特权端口(P>1024),并发送“PORT P”命令给客户端。而后客户端发起从本地端口N+1到服务器的端口P的链接用来传输数据。