[关闭]
@Great-Chinese 2016-12-07T07:53:49.000000Z 字数 6125 阅读 1202

Linux常用服务部署与优化

Linux常用服务部署与优化


1.1 nfs部署和优化-1

NFS == network file system 网络文件系统 允许一个系统通过远程访问文件
1, 修改配置文件,默认该文件为空,现在编辑它

  1. yum install -y nfs-utils rpcbind # 在服务端安装nfs-utils rpcbind (rpcbind用来通信)
  2. vim /etc/exports # 在服务端编辑此配置文件,增加内容如下
  3. /boot 192.168.31.116(rw,sync) # 共享目录 共享到哪些IP 可读可写 同步 ro可读

2, 在服务端启动rpcbind nfs

  1. /etc/init.d/rpcbind start
  2. /etc/init.d/nfs start

3, 在远程客户端安装如下包

  1. yum install nfs-utils

4, 在远程客户端上查看服务端共享的目录与共享给谁

  1. showmount -e 192.168.31.127

5, 在远程客户端上挂载

  1. mount -t nfs 192.168.31.127:/boot /melody # 这样/boot目录就共享到/melody目录下了
  2. df -h # 查看磁盘
  3. ls -ld /boot # 查看目录权限,大小(在服务端)
  4. cd /boot # 进入目录下(在服务端)
  5. chmod 777 . # 更改/boot目录的权限(在服务端),这样就可以在客户端创建文件,目录

1.2 nfs部署和优化-2

A:限制所有的用户为29

  1. # 在服务端编辑此配置文件
  2. vim /etc/exports # 增加内容如下
  3. /boot 192.168.31.116(rw,sync,all_squash,anonuid=29,anongid=29) # 限制所有的用户为29
  4. # 在服务端重启nfs
  5. /etc/init.d/nfs start
  6. # 在远程客户端上卸载,(卸载前需退回到根目录下)
  7. umount /melody
  8. # 在远程客户端上挂载 (-onolock,nfsvers=3即解锁,指定版本号)
  9. mount -t nfs -onolock,nfsvers=3 192.168.31.127:/boot /melody
  10. # 此时在远程客户端上创建任何文件目录,用户都为29

B:不限制root用户

  1. # 在服务端编辑此配置文件
  2. vim /etc/exports # 增加内容如下
  3. /boot 192.168.31.116(rw,sync,no_root_squash) # 不限制root用户
  4. # 在服务端重启nfs
  5. exportfs -arv
  6. # 在远程客户端上卸载,(卸载前需退回到根目录下)
  7. umount /melody
  8. # 在远程客户端上挂载 (-onolock,nfsvers=3即解锁,指定版本号)
  9. mount -t nfs -onolock,nfsvers=3 192.168.31.127:/boot /melody
  10. # 此时在远程客户端上创建任何文件目录,用户都为root

1.3 pureftp部署和优化-1

FTP == file transfer protocol 通过FTP进行文件的上传下载
1, 在服务端下载pureftp软件

  1. cd /usr/local/src/
  2. wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2 --no-check-certificate

2, 在服务端解压pure-ftpd

  1. tar jxvf pure-ftpd-1.0.42.tar.bz2
  2. ls /usr/local/pureftpd/

3, 在服务端安装pure-ftpd

  1. # 进入此目录下安装
  2. cd pure-ftpd-1.0.42
  3. # 安装的配置文件
  4. ./configure \
  5. --prefix=/usr/local/pureftpd \
  6. --without-inetd \
  7. --with-altlog \
  8. --with-puredb \
  9. --with-throttling \
  10. --with-peruserlimits \
  11. --with-tls
  12. #
  13. make
  14. make install

4, 在服务端创建配置文件的所有目录与拷贝相关的文件

  1. mkdir -p /usr/local/pureftpd/etc/ # 创建配置文件的所在目录
  2. cd configuration-file/ #
  3. cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf # 拷贝模版配置文件
  4. cp pure-config.pl /usr/local/pureftpd/sbin # 拷贝启动文件
  5. chmod 755 /usr/local/pureftpd/sbin/pure-config.pl # 更改此文件的权限

5, 在服务端安装pure-ftp

  1. vim /usr/local/pureftpd/etc/pure-ftpd.conf # 拷贝模版配置文件(拷贝之前要把旧的内容都要删除)
  2. # 拷贝的内容如下:
  3. ChrootEveryone yes
  4. BrokenClientsCompatibility no
  5. MaxClientsNumber 50
  6. Daemonize yes
  7. MaxClientsPerIP 8
  8. VerboseLog no
  9. DisplayDotFiles yes
  10. AnonymousOnly no
  11. NoAnonymous no
  12. SyslogFacility ftp
  13. DontResolve yes
  14. MaxIdleTime 15
  15. PureDB /usr/local/pureftpd/etc/pureftpd.pdb
  16. LimitRecursion 3136 8
  17. AnonymousCanCreateDirs no
  18. MaxLoad 4
  19. AntiWarez yes
  20. Umask 133:022
  21. MinUID 100
  22. AllowUserFXP no
  23. AllowAnonymousFXP no
  24. ProhibitDotFilesWrite no
  25. ProhibitDotFilesRead no
  26. AutoRename no
  27. AnonymousCantUpload no
  28. PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid
  29. MaxDiskUsage 99
  30. CustomerProof yes
  31. # 创建一个测试目录
  32. mkdir /tmp/ftp
  33. # 映射gary123用户(即把/tmp/ftp目录的属主,属组改成gary123)
  34. chown -R gary123 /tmp/ftp
  35. # 添加ftp用户
  36. /usr/local/pureftpd/bin/pure-pw useradd ftpuser1 -ugary123 -d /tmp/ftp
  37. # 删除ftp用户
  38. /usr/local/pureftpd/bin/pure-pw userdel ftpuser1
  39. # 创建生成密码库的文件
  40. /usr/local/pureftpd/bin/pure-pw mkdb
  41. # 列出文件清单
  42. /usr/local/pureftpd/bin/pure-pw list
  43. # 启动pureftp(前面是启动脚本,后面是配置文件)
  44. /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf

1.4 pureftp部署和优化-2 (即登陆,测试pureftp)

1, 如何在客户端成功登陆与创建目录

  1. yum install -y lftp # 先安装lftp

2,在客户端登陆lftp

  1. lftp ftpuser1@192.168.31.127
  2. Password:
  3. lftp ftpuser1@192.168.31.127:~> ls
  4. drwxrw-r-x 2 501 0 4096 Nov 28 12:50 .
  5. drwxrw-r-x 2 501 0 4096 Nov 28 12:50 ..

3,在客户端测试

  1. lftp ftpuser1@192.168.31.127:/> mkdir 123 # 创建目录
  2. lftp ftpuser1@192.168.31.127:~> ? # 查询选项功能
  3. lftp ftpuser1@192.168.31.127:~> get 12.txt # 下载文件
  4. lftp ftpuser1@192.168.31.127:~> put melody.1 # 上传文件
  5. lftp ftpuser1@192.168.31.127:/> exit # 退出ftp

1.5 vsftp部署和优化-1(是Centos自带的软件)

1,限制客户端用户只能在当前目录下

  1. # 在服务台修改vsftp的配置文件
  2. vim /etc/vsftpd/vsftpd.conf
  3. chroot_local_user=YES # 把此行的注释取消
  4. # 重启vsftp
  5. /etc/init.d/vsftpd restart
  6. # 在客户端重新登陆lftp gary123
  7. lftp gary123@192.168.31.127
  1. tail /etc/passwd
  2. passwd gary123 # 修改用户的密码

1.6 vsftp部署和优化-2 (如何做个虚拟的用户)

  1. # 创建虚拟用户所对应的用户(virftp),并且不让此用户登陆
  2. useradd virftp -s /sbin/nologin
  3. # 创建虚拟用户存放密码的文件
  4. vim /etc/vsftpd/vsftpd_login
  5. test1
  6. 111222333
  7. test2
  8. 123123123
  9. # 修改权限
  10. chmod 600 /etc/vsftpd/vsftpd_login # 只允许root用户可以看
  11. # 把vsftpd_login生成库文件
  12. db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
  13. # 创建虚拟用户存放配置文件的目录
  14. mkdir /etc/vsftpd/vsftpd_user_conf
  15. # 进入此目录下
  16. cd /etc/vsftpd/vsftpd_user_conf
  17. # 进入此目录下后,创建跟用户名同名的配置文件
  18. vim test1 # 配置内容如下
  19. local_root=/home/virftp/test1
  20. anonymous_enable=NO
  21. write_enable=YES
  22. local_umask=022
  23. anon_upload_enable=NO
  24. anon_mkdir_write_enable=NO
  25. idle_session_timeout=600
  26. data_connection_timeout=120
  27. max_clients=10
  28. max_per_ip=5
  29. local_max_rate=50000
  30. #
  31. mkdir /home/virftp/test1
  32. chown -R virftp:virftp /home/virftp/test1 #修改权限
  33. # 修改认证相关的配置文件
  34. vim /etc/pam.d/vsftpd # 增加2行内容如下
  35. auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
  36. account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
  37. # 保存认证配置文件后,需要查看此文件是否已生成
  38. cat/etc/pam.d/vsftpd
  39. # 查看文件是否已生成
  40. ls /lib/security/pam_userdb.so # 查看32位系统的
  41. ls /lib64/security/pam_userdb.so # 查看64位系统的
  42. uname -a # 查看系统是多少位的
  43. # 编辑vsftpd配置文件
  44. vim /etc/vsftpd/vsftpd.conf # 修改内容如下
  45. anonymous_enable=NO
  46. local_enable=YES
  47. guest_enable=YES
  48. guest_username=virftp
  49. virtual_use_local_privs=YES
  50. user_config_dir=/etc/vsftpd/vsftpd_user_conf
  51. # 重启vsftpd
  52. /etc/init.d/vsftpd restart
  53. cat /etc/vsftpd/vsftpd_login # 查看test1的密码文件
  54. # 在本地安装lftp
  55. yum install -y lftp
  56. # 在本地登陆lftp
  57. lftp test1@127.0.0.1
  58. Password:
  59. lftp test1@127.0.0.1:~> ls ???????????????????????????
  60. lftp test1@127.0.0.1:~> exit
  61. cd /home/virftp/test1

1.7 samba共享目录,文件(没有用户名与密码)

1,下载与编辑samba

  1. # 下载samba与samba-client
  2. yum install -y samba samba-client
  3. # 编辑samba配置文件
  4. vim /etc/samba/smb.conf # 增加内容如下
  5. workgroup = WORKGROUP
  6. security = share
  7. [melody]
  8. comment = share all
  9. path = /tmp/sambadir
  10. browseable = yes
  11. public = yes
  12. writable = no

2, 创建共享目录(禁止在共享目录下写入内容)

  1. mkdir /tmp/sambadir # 创建共享目录
  2. cp /etc/passwd /tmp/sambadir/1.txt # 拷贝etc文件到1.txt
  3. mkdir /tmp/sambadir/test #
  4. chmod 777 /tmp/sambadir/test

3,启动samba

  1. /etc/init.d/smb start

4,测试samba,是否共享成功

  1. # windows下访问共享文件
  2. \\192.168.31.127
  3. # Linux下访问共享文件
  4. smbclient //192.168.31.127/melody
  5. # 挂载访问
  6. yum install -y cifs-utils # 先安装cifs
  7. mount -t cifs //192.168.31.127/melody /opt/ # 再挂载

1.9 samba 部署和优化(用用户名与密码共享文件,可以可读可写)

1, 如何使用密码与用户名共享文件与目录

  1. # 编辑samba配置文件
  2. vim /etc/samba/smb.conf # 增加内容如下
  3. security = user
  4. [melodylinux]
  5. comment = share for users
  6. path = /tmp/sambadir
  7. browseable = yes
  8. writable = yes
  9. public = no

2, 创建共享目录(可以在共享目录下写入内容)

  1. useradd smbuser1
  2. pdbedit -a smbuser1
  3. pdbedit -h # 查看有哪些选项

3,重动samba

  1. /etc/init.d/smb restart

4,测试samba,是否共享成功(可以在共享目录,文件内写入内容)

  1. # windows下访问共享文件
  2. \\192.168.31.127 输入密码与用户名
  3. # Linux下访问共享文件
  4. smbclient -Usmbuser1 //192.168.31.127/melodylinux
  5. Enter smbuser1's password:
  6. # 挂载访问
  7. mount -t cifs -o username=smbuser1,password=123456 //192.168.31.127/melodylinux /opt/
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注