Ubuntu配置samba实现文件夹共享

安装leafpad记事本
apt-get install leafpad
安装SSH远程连接服务器
sudo apt-get install openssh-server
安装samba服务器
   sudo apt-get install samba
   sudo apt-get install cifs-utils
安装完成后查看版本号
    samba -V
查看当前目录
     pwd
在当前目录下创建共享目录
    mkdir /home/wang/share
修改当前目录的权限
     sudo chmod 777 /home/wang/share创建Samba配置文件
1. 复制现有的配置文件
    sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2. 修改现配置文件
    sudo nano /etc/samba/smb.conf
配置文件修改模式:
(1) share模式就是,所有的用户都可以直接访问不需要用户名和密码,无需samba用户就可以访问服务器
[Global]
  设置security = share 
在smb.conf最后添加
[share]
       path = /home/wang/share
       available = yes
       browseable = yes
       public = yes
       writable = yes(2) user级别的samba则需以samba用户和密码才能访问
找到 security = share 将它改成 security = user 
在smb.conf最后添加
[share]
       path = /home/wang/share
       available = yes
       browseable = yes
       public = no
       writable = yes创建samba帐户
  建立一个samba用户的密码保存文件
     sudo touch /etc/samba/smbpasswd
      sudo smbpasswd -a jamfrw/jamfr

添加用户失败


win 连接samba服务器 samba服务器的搭建流程_添加用户

查询得出的结论是”添加的Samba用户首先必须是Linux用户”,一下子豁朗开郎。  

 

 

 

查看用户

sudo pdbedit -L
重启samba服务器
    sudo /etc/init.d/smbd restart
      Sudo Service smbd restart

查看samba服务器转态

win 连接samba服务器 samba服务器的搭建流程_添加用户_02

      

sudo systemctl  status smbd
Sudo Service smbd status

 

 

 

设置共享文件

Mac设置如下: 
1、保证Mac和Ubuntu能ping通。  

 

 

    

 

 

 

2、 

 

或者移除CD/DVD驱动器 

win 连接samba服务器 samba服务器的搭建流程_添加用户_03

问题解决:

sudo useradd -d /home/jamftest jamftest -s /bin/false -N
sudo smbpasswd -a jamftest
[share]
comment = share
说明:comment是对该共享的描述,可以是任意字符串。
path = /srv/share 
browseable = no
说明:browseable用来指定该共享是否可以浏览。
guest ok = no
说明:意义同“public”。
说明:public用来指定该共享是否允许guest账户访问。
read only = yes
create mask = 0755
read list = jamftest
说明:write list用来指定可以在该共享下写入文件的用户。
write list = jamfrw
valid users = jamfrw, jamfr 
 
smbpasswd命令的常用方法
smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
smbpasswd -d 冻结用户,就是这个用户不能在登录了
smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n 把用户的密码设置成空.
smbpasswd -x 删除用户

win 连接samba服务器 samba服务器的搭建流程_Ubuntu_04

然后会要求你输入samba帐户的密码

 [如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE

 重启samba服务器

 sudo /etc/init.d/smbd restart

 

 

 


Linux用户使用/bin/false和/usr/sbin/nologin拒绝用户登录及其功能分析
/bin/nologin,/bin/false的意思是禁止某个用户登录。
比较常用的用法:
#添加一个不能登录的用户
useradd -d /usr/local/apache -g apache -s /bin/false apache
要拒绝系统用户登录,可以将其shell设置为/usr/sbin/nologin或者/bin/false
usermod -s | --shell /usr/sbin/nologin username
或者
usermod -s | -shell /bin/false username
说明及比较:
/bin/false
/bin/false什么也不做只是返回一个错误状态,然后立即退出。将用户的shell设置为/bin/false,用户会无法登录,并且不会有任何提示。
/usr/sbin/nologin
nologin会礼貌的向用户显示一条信息,并拒绝用户登录:
This account is currently not available.
有一些软件,比如一些ftp服务器软件,对于本地非虚拟账户,只有用户有有效的shell才能使用ftp服务。这时候就可以使用nologin使用户即不能登录系统,还能使用一些系统服务,比如ftp服务。/bin/false则不行,这是二者的重要区别之一。
/etc/nologin
如果存在/etc/nologin文件,则系统只允许root用户登录,其他用户全部被拒绝登录,并向他们显示/etc/nologin文件的内容。
1 区别 
/bin/false是最严格的禁止login选项,一切服务都不能用。 
/sbin/nologin只是不允许login系统 
 
其中树莓派的/sbin/nologin文件在/usr/sbin/nologin 
小技巧: 
查看 /etc/passwd文件,能看到各用户使用的shell 
 
2.1 nologin 
当用户配置成/sbin/nologin时,如果再使用该用户ssh到linux操作系统,会提示 
This account is currently not available. 
 
如果配置错误,误将/usr/sbin/nologin配置成/sbin/nologin,SSH时会提示 
root@raspberrypi:/home# useradd -s /sbin/nologin piaohailin 
root@raspberrypi:/home# su piaohailin 
Cannot execute /sbin/nologin: No such file or directory 
 
2.2 false 
当用户配置成/bin/false时,ssh之后显示如下 
root@raspberrypi:/home# useradd -s /bin/false piaohailin 
root@raspberrypi:/home# su piaohailin 
root@raspberrypi:/home# whoami 
root 
不会有任何提示,用户切换不过去

 

 

/sbin/nologin只是不允许login系统,即使给了密码也不行。 所谓“无法登陆”指的仅是这个用户无法使用bash或其他shell来登陆系统而已,并不是说这个账号就无法使用系统资源。举例:各个系统账号中,打印作业有lp这个账号管理,www服务器有apache这个账号管理,他们都可以进行系统程序的工作,但就是无法登陆主机而已。

有时候有些服务,比如邮件服务,大部分都是用来接收主机的邮件而已,并不需要登陆。假如有账号试图连接我的主机取得shell,我们就可以拒绝。

另外,如果我想要让某个具有 /sbin/nologin 的用户知道,他们不能登陆主机时,可以新建 /etc/nologin.txt 这个文件,在文件内面写上不能登陆的原因,当用户登录时,屏幕上就会出现这个文件里面的内容。