samba服务与FTP服务
smb 主要作为网络通信协议;smb是基于 C/S(client/server) 架构
smb 是完成linux与windows之间的共享;NFS是完成linux与linux之间的文件共享
samba服务:
第一步:安装smb(samba)
# yum install samba -y
第二步:编辑配置文件
#vim /etc/samba/smb.conf (编辑中等号两端都要有空格)
[文件共享的名字] 为所要共享文件的名称,可自定义
path = /home/ken1 为在linux中存在的一个目录名字,是用作所要分享的目录名
read only = no no 是不让只读的意思
public = yes yes 表示同意 进行“共享文件”的意思
重新启动smb 服务: #systemctl restart smb
第三步:添加访问smb的用户:
#pdbedit -a -u /home/ken 用pdbedit创建一个访问smb的,其用户名为ken。其中ken用户要存在,否则 就先用useradd 创建出ken来,然后在进行pdbedit操作
new password :写入进入共享文件的密码
第四步:创建共享目录:
#mkdir /home/ken1
第五步:关闭防火墙:
#setenforce 0
#systemctl stop firewalld
第六步:重新启动smb服务
#systemctl restart smb
第七步:windows下进行访问共享文件
输入2个反斜杠,加上smb服务器的地址。再输入你的用户名和密码就好了
此时,在windows下打开的smb共享文件是不能够进行“写”权限的。
在linux中进行对其权限的查看为:#ls -ld /home/ken1; 并在other上进行添加权限:#chmod -R a+w /home/ken1
在windows下创建的文件,在linux下查看所用到的命令为:#ls /home/ken1
注:若想每次进入“共享文件”时 不输入密码和用户名,则:在windows下,选中“共享文件”,单击右键,点击“映射网络驱动器”,在点击“完成”。然后在“计算机的网络位置处”就会看到共享文件的磁盘。
FTP服务:
FTP即可以实现linux与linux之间的文件传输,也可以实现linux与windows之间的文件传输。(FTP服务器是可以提供文件存储和访问服务器的)
FTP的作用:Internet上用来传输文件的协议。
vsftp:是FTP服务器软件,其特点为:安全、稳定、高速的FTP服务器。
模式为:C/S模式
使用端口为:20 (传数据)
21 (传指令)
FTP的工作流程:(面试题)
FTP的工作方式有: 主动模式 :以服务器为参照物,服务器主动连接客户端的传输
被动模式 :以服务器为参照物,服务器等待着客户端去连接它
①主动模式:
首先FTP客户端连接到FTP服务端的21端口,进行由客户端给服务端发送:用户名、密码和PORT(主动模式命令),并且客户端处开放一个随机高危端口;然后FTP服务器收到PORT命令后,将自己的(FTP服务器)20端口和FTP客户端的随机高位端口相连接;最后进行数据的传输。
②被动模式:
首先FTP客户端连接到FTP服务端的21端口,进行由客户端向服务端发送:用户名、密码和PASV(被动模式命令),并且客户端与服务端均各自开放一个随机高位端口;然后FTP客户端的随机高危端口与FTP的服务端的随机高位端口相连接;最后进行数据的传送。
部署安装FTP:
下载 vsftp : #yum install vsftp -y
①配置匿名开放模式:(匿名开放模式是一种最不安全模式,任何人都可以无需密码、验证而直接登录到FTP服务器上)
#vim /etc/vsftp/vsftp.conf 回车
anonymous_enable =YES yes表示允许匿名访问(一般默认为开启状态)
anon_umask = 022 匿名用户的umask值
anon_upload_enable =YES yes表示允许匿名用户上传文件
anon_mkdir_write_enable =YES yes表示允许匿名用户创建目录
anon_other_write_enable =YES yes表示允许匿名用户修改和删除目录(为安全起见,一般情况下不加该项)
重新启动: #systemctl restart vsftpd
然后在windows下进行访问(用ip访问):在“此电脑”中输入 ftp://192.168.163.3 回车。
查看所共享文件的权限:
先查找共享文件的路径:#find / -name “共享文件名字(pub)” 回车
/var/ftp/pub
在查看共享文件的权限:#ls -ld /var/ftp/pub
修改所共享文件的权限:#chmod -R o+w /var/ftp/pub 或 #chown -R ftp /var/ftp/pub
②配置本地用户模式:(指在linux中已存在一个用户,用该用户来作登录用户,通过ftp进行登录系统)
其配置上,只需将匿名开放模式中的“anonymous_enable =no 就可以了
重新启动系统:#systemctl restart vsftpd
创建一个用户名和密码:#useradd ken1 回车
#passwd ken1 回车
输入密码
然后在windows下进行访问:“此电脑”下进行
ftp用户列表管理:
#cd /etc/vsftpd/ 回车
#ls
ftpusers user_list vsftpd.conf 其中 ftpusers user_list 这两个文件表示“用户黑名单”
#vim user_list 回车
#vim ftpusers 回车(将里面的用户注释掉,就表示该用户可以通过ftp进行登录了)
systemctl 的常用操作:(以smb 为例)
systemctl start smb 启动smb服务
restart 重启
stop 停止
status 查看smb服务状态
reload 平滑重启smb服务(指在不停掉服务的情况下,再重新加载配置文件)
enable 开机自启smb服务
disable 开机不自启smb服务
sshd 服务讲解:sshd服务是一个远程连接协议,(如X shell的连接使用需要用到sshd)
其默认端口为: 22端口
sshd的作用:使用SSH协议进行远程控制,或计算机之间的传送文件。
在windows下,telnet方式传输文件: ①打开“控制面板” → “程序” → “启动或关闭windows功能” → 打开“Telnet客户端和Telnet服务端”
②使用telnet: windows + R → 输入 “ cmd ” → 再输入 telnet ip 端口号 回车
若出现:SSH-2.0-openssh_7.4 字样,则表示 22端口 开放中
SSH服务安装:(系统默认已经安装并开机自启,所以可不要yum下载。)
如果没有安装,则需yum下载,其命令为:#yum -y install openssh openssh-clients openssh-server openssh-askpass
SSH配置文件: /etc/ssh/ssh_config 为客户端配置文件
/etc/ssh/sshd_config 为服务端配置文件
我们需要配置的是服务端,:#vim /etc/ssh/sshd_config 只需要将里面的UseDNS后面改为 no 即可。
SSH的免密登录:(先生成秘钥后,才会出现几个隐藏文件)
#ssh-keygen 回车 表示生成秘钥
#ls -la 回车 可以产看到所生成的 .ssh文件,就表示生成了
#ls .ssh/ 回车 查看所生成的秘钥对儿
id_rsa id_rsa.pub 其中id_rsa 为私钥;id_rsa.pub 为公钥。
#ssh-copy-id 所要免密登录的ip 回车 将公钥发送给所要登录主机的ip
yes ,回车
输入所要进入主机的密码,回车
#ssh 所要登录主机的ip 回车 进行登录到所要登录的主机
退出的时候,用 exit 退出