nfs部署以及优化

Server端配置

安装rpm服务包

yum install -y nfs-utils

创建数据挂载点

mkdir -p /data

编辑exports文件

vi /etc/exports

[root@localhost /]# cat /etc/exports

/data/ 192.168.211.0/24(rw,sync,no_root_squash)

启/停服务

/etc/init.d/rpcbind stop

/etc/init.d/nfs stop

/etc/init.d/rpcbind start

/etc/init.d/nfs start

确认

exportfs –v

[root@localhost /]# exportfs -v

/data     192.168.211.0/24(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,no_root_squash,no_all_squash)

[root@localhost /]#

Client配置

查看showmount命令得安装服务包

yum install -y nfs-utils

查看nfs server共享目录

showmount -e 192.168.211.128

[root@localhost /]# showmount -e 192.168.211.128

Export list for 192.168.211.128:

/data 192.168.211.0/24

[root@localhost /]#

创建client挂载点

mkdir -p /nfs-data/

挂载nfs共享目录

mount -t nfs 192.168.211.128:/data/ /nfs-data/

确认

[root@localhost nfs-data]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/centos-root 39G 1.1G 38G 3% /

devtmpfs 479M 0 479M 0% /dev

tmpfs 489M 0 489M 0% /dev/shm

tmpfs 489M 6.7M 483M 2% /run

tmpfs 489M 0 489M 0% /sys/fs/cgroup

/dev/mapper/centos-home 19G 33M 19G 1% /home

/dev/sda1 497M 123M 374M 25% /boot

tmpfs 98M 0 98M 0% /run/user/0

192.168.211.128:/data 18G 1.9G 15G 12% /nfs-data

[root@localhost nfs-data]#

exports配置参数详细说明

rw:读写

ro:只读

sync同步模式,由内存数据写入硬盘

async不同步,内存数据定期写入磁盘

no_root_squash,root用户对共享目录拥有最高权限。

root_squash:root用户对共享目录权限不高,只有普通用户权限,限制了root

all_squash:不管使用nfs用户是谁,都会被限定为一个指定的普通用户身份。

anonuid、anongid:要和root_squash和all_squash一起使用,用于指定nfs用户限定后的uid和gid,前提是本机/etc/passwd中存在这个uid和gid。

showmount参数说明

showmount –e 加ip查看nfs共享情况

exportfs参数说明

-a全部挂载或者卸载

-r重新挂载

-u卸载某一个目录

-v显示共享的目录

samba部署和优化

Server端配置

安装软件

yum install -y samba samba-client

备份主配置文件

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

编辑主配置文件

vim /etc/samba/smb.conf

# --------------------------- Logging Options -----------------------------

#

# Log File let you specify where to put logs and how to split them up.

#

# Max Log Size let you specify the max size log files should reach

///保持默认

# logs split per machine

log file = /var/log/samba/log.%m

# max 50KB per log file, then rotate

max log size = 50

# ----------------------- Standalone Server Options ------------------------

#

# Scurity can be set to user, share(deprecated) or server(deprecated)

#

# Backend to store user information in. New installations should

# use either tdbsam or ldapsam. smbpasswd is available for backwards

# compatibility. tdbsam requires no further configuration.

///保持默认

security = user

passdb backend = tdbsam

# --------------------------- Printing Options -----------------------------

#

# Load Printers let you load automatically the list of printers rather

# than setting them up individually

#

# Cups Options let you pass the cups libs custom options, setting it to raw

# for example will let you use drivers on your Windows clients

#

# Printcap Name let you specify an alternative printcap file

#

# You can choose a non default printing system using the Printing option

///保持默认

load printers = yes

cups options = raw

///***自定义***

map to guest = bad user

guest account = nobody

encrypt password = yes

smb passwd file = /etc/samba/smbpasswd

#============================ Share Definitions ==============================

///***自定义配置share ***

[share]

comment = share all

path = /tmp/samba

browseable = yes

guest ok = yes

writable = yes

printable = no

create mask = 0644

directory mask = 0755

///***自定义配置Non-share ***

[myshare]

comment = share for users

path = /samba

browseable = yes

writable = yes

public = no

guest ok = no

force user = root

printable = no

create mask = 0644

directory mask = 0755

创建share目录

mkdir /tmp/samba

chmod 777 /tmp/samba/

touch /tmp/samba/sharefiles

echo "Hello,world" >/tmp/samba/sharefiles

创建non-share目录

mkdir /samba

chmod 777 /samba

测试

testparm

建立用户

useradd user1

useradd user2

pdbedit -a user1

pdbedit -a user2

查看

pdbedit -L

Client配置

安装client软件

yum install samba-client

linux client 浏览共享

smbclient //192.168.211.128/myshare -U user1

挂载

mount -t cifs //192.168.211.128/myshare /mnt -o username=user1,password=root1234

window访问:

file://192.168.211.128

pureftp部署和优化

Server端配置

下载软件

wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2 --no-check-certificate

拷贝至src目录

cp pure-ftpd-1.0.42.tar.bz2 /usr/local/src/

解压tar.bz2

tar jxvf pure-ftpd-1.0.42.tar.bz2

进入解压目录

cd pure-ftpd-1.0.42

配置

./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling --with-peruserlimits --with-tls

编译

make

安装

make install

进入...-file目录

cd configuration-file/

创建../etc/目录

mkdir -p /usr/local/pureftpd/etc/

拷贝模板文件到..etc/目录

cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf

cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl

更改权限

chmod 755 /usr/local/pureftpd/sbin/pure-config.pl

编辑配置文件

vim /usr/local/pureftpd/etc/pure-ftpd.conf

PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid

启动服务

./sbin/pure-config.pl ./etc/pure-ftpd.conf

关闭服务

killall puref-ftpd

创建ftp user 目录

mkdir /data/www/

useradd www

chown -R www:www /data/www/

配置虚拟账号与系统账号对应关系

/usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -u www -d /data/www/

/usr/local/pureftpd/bin/pure-pw useradd ftp_user2 -u www -d /tmp

生成密码加密数据

/usr/local/pureftpd/bin/pure-pw mkdb

查看用户列表

/usr/local/pureftpd/bin/pure-pw list

删除

/usr/local/pureftpd/bin/pure-pw userdel ftp_user2

Client配置

yum install -y lftp

lftp ftp_user1@192.168.211.128

注意事项

上面是以源代码方式编译安装,启停服务得不方便,也可以采用以下yum rpm方式安装。

yum install -y epel-release expect

yum install -y pure-ftpd

/etc/init.d/pure-ftpd start

/etc/init.d/pure-ftpd status

vsftp部署和优化

Server端配置

安装包

yum install -y vsftpd db4-utils

添加虚拟用户

useradd virftp -s /sbin/nologin

编辑主配置文件

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

anon_upload_enable=NO

anon_mkdir_write_enable=NO

hroot_local_user=YES

guest_enable=YES

guest_username=virftp

virtual_use_local_privs=YES

user_config_dir=/etc/vsftpd/vsftpd_user_conf

编辑pam认证文件

[root@localhost vsftpd_user_conf]# cat /etc/pam.d/vsftpd

#%PAM-1.0

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

编辑user&password文件

vim /etc/vsftpd/vsftpd_login

test1

123456

test2

abcdef

test3

root123

生成加密user&password数据文件

db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

更改权限

chmod 600 /etc/vsftpd/vsftpd_login

创建user配置文件

mkdir /etc/vsftpd/vsftpd_user_conf

cd /etc/vsftpd/vsftpd_user_conf/

[root@localhost vsftpd_user_conf]# vi test1

local_root=/home/virftp/test1

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

max_per_ip=5

local_max_rate=50000

[root@localhost vsftpd_user_conf]# vi test2

local_root=/home/virftp/test2

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

max_per_ip=5

local_max_rate=50000

[root@localhost vsftpd_user_conf]# vi test3

local_root=/test3

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

max_per_ip=5

local_max_rate=50000

[root@localhost vsftpd_user_conf]#

创建user ftp 目录

mkdir /home/virftp/test1

mkdir /home/virftp/test2

mkdir -p /test3

chown virftp:virftp /home/virftp/ -R

chown virftp:virftp /test3/ -R

启/停vsftpd服务

/etc/init.d/vsftpd stop

/etc/init.d/vsftpd start

/etc/init.d/vsftpd status

Client配置

ftp://192.168.211.128访问

CentOS下搭建文件共享服务的更多相关文章

  1. CentOS6.5下搭建文件共享服务(Samba)

    Samba服务: 本内容为samba服务学习者提供参考 案例描述: 某公司的管理员需要搭建SAMBA服务器,IP地址及允许的访问网段自定义.SAMBA服务器的安全级别为user级,所在工作组为WORK ...

  2. ElasticSearch(七) Elasticsearch在Centos下搭建可视化服务

    要想可视化ElasticSearch,就需要安装一些插件,安装插件的前提是安装所依赖的环境,比如java,maven等,本篇博文就不再走那些流程了.没安装的童鞋可以看我的ElasticSearch栏目 ...

  3. CentOS下搭建DHCP服务

    DHCP的原理这里就不多说了,这里直接贴配置加解说 1.安装dhcp yum -y install dhcp-4.1.1-63.P1.el6.centos.x86_64 2.编辑/etc/dhcp/d ...

  4. flask在centos下搭建web服务【uwsgi,nginx】

    centos操作系统 uWSGI是一个web服务器,Nginx进行反向代理的其实跟这些服务器可以说没有任何关系,你提供动态内容的服务器可以是apache/nginx/tomcat,当然也可以是uWSG ...

  5. CentOS下搭建LNMP+WordPress+http2.0教程

    此文是本人CentOS下搭建WordPress的一些笔记,环境搭建时间::将看过的几篇文章总结下来,形成一条龙长文.不用大家再找来找去. 本文大概分为此几部分: 一.基础命令更新: 二.服务器加速(非 ...

  6. Centos下搭建LAMP+PHP

    Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...

  7. Centos下搭建DNS域名解析服务器

    Centos下搭建DNS域名解析服务器 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域 ...

  8. CentOS下搭建LAMP环境详解

    前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...

  9. Centos下搭建 nginx+uwsgi+python

    python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...

随机推荐

  1. STM32入门系列-创建寄存器模板

    介绍如何使用 KEIL5 软件创建寄存器模板, 方便之后使用寄存器方式来操作STM32开发板上的LED,让大家创建属于自己的寄存器工程模板. 获取工程模板的基础文件 首先我们在电脑任意位置创建一个文件 ...

  2. Redis事务使用方法

    Redis事务 Redis事务是一组命令的集合,也是Redis的最小执行单位之一.一个事务的所有命令,要么都执行,要么都不执行.Redis能保证事务执行期间不会有其他命令插入. 相关命令 命令 格式 ...

  3. 【Jmeter】设置语言为中文

    1.临时设置 Jmeter菜单栏选择Options-Choose Language-Chinese (Simplified) 这种方法,重启软件后又变为英文环境了. 2.永久设置 进入apache-j ...

  4. nodejs中连接mongodb数据库

    const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/blog', { useNewUrlParser ...

  5. Spring AOP实现注解式的Mybatis多数据源切换

    一.为什么要使用多数据源切换? 多数据源切换是为了满足什么业务场景?正常情况下,一个微服务或者说一个WEB项目,在使用Mybatis作为数据库链接和操作框架的情况下通常只需要构建一个系统库,在该系统库 ...

  6. 7、Python语法之与用户交互、运算符

    一 .程序与用户交互 1.1.什么是与用户交互 用户交互就是人往计算机中input/输入数据,计算机print/输出结果. 1.2.为什么要与用户交互 为了让计算机能够像人一样与用户沟通交流. 比如, ...

  7. 可变参数以及stdcall

    void event_warnx(const char *fmt, ...) EV_CHECK_FMT(1,2); #define EV_CHECK_FMT(a,b) __attribute__((f ...

  8. select实现超时(套接字IO超时设置)

    实现超时的三种方式: 1.SIGALARM信号 void  handler(int sig) { return 0; } signal(SIGALRM,handler); alarm(5); int ...

  9. TCP特点

    1.基于字节流:面向连接:可靠传输:缓冲传输:全双工:流量控制.TCP如何保证可靠性:差错:校验和丢包:超时重传+确认失序:seq(序号)重复:seq(序号)1.数据被分割成TCP认为最合适发送的数据 ...

  10. 《.NET 5.0 背锅案》第6集-案发现场回顾:故障情况下 Kubernetes 的部署表现

    第1集:验证 .NET 5.0 正式版 docker 镜像问题 第2集:码中的小窟窿,背后的大坑,发现重要嫌犯 EnyimMemcachedCore 第3集-剧情反转:EnyimMemcachedCo ...