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
添加用户失败
查询得出的结论是”添加的Samba用户首先必须是Linux用户”,一下子豁朗开郎。
查看用户
sudo pdbedit -L
重启samba服务器
sudo /etc/init.d/smbd restart
Sudo Service smbd restart
查看samba服务器转态
sudo systemctl status smbd
Sudo Service smbd status
设置共享文件
Mac设置如下:
1、保证Mac和Ubuntu能ping通。
2、
或者移除CD/DVD驱动器
问题解决:
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 删除用户
然后会要求你输入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 这个文件,在文件内面写上不能登陆的原因,当用户登录时,屏幕上就会出现这个文件里面的内容。
https://www.cnblogs.com/EasonJim/p/7157239.html
https://www.runoob.com/linux/linux-comm-nc.html