2018-05-10 Linux学习

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018-05-10 Linux学习相关的知识,希望对你有一定的参考价值。

14.4 exportfs命令

常用选项
-a 全部挂载或者全部卸载
-r 重新挂载
-u 卸载某一个目录
-v 显示共享目录

以下操作在服务端上

    vim /etc/exports   //增加
    /tmp/ 192.168.133.0/24(rw,sync,no_root_squash)
    exportfs -arv      //不用重启nfs服务,配置文件就会生效

以下操作在客户端

    mkdir /aminglinux
    mount -t nfs -onolock 192.168.133.130:/tmp /aminglinux
    touch /aminglinux/test.txt
    ls -l !$
    -oremount,nfsvers=3

nfs 服务器不能随意重启,需要先卸载

操作过程

服务器端
[[email protected] ~]# vim /etc/exports
/tmp/ 192.168.106.0/24(rw,sync,no_root_squash)
[[email protected] ~]# exportfs -arv
exporting 192.168.106.0/24:/tmp
exporting 192.168.106.0/24:/home/nfstestdir

客户端
[[email protected] ~]# mount -t nfs -onolock 192.168.106.160:/tmp /mnt
[[email protected] ~]# touch /mnt/1122.txt
[[email protected] ~]# ls -l /mnt/1122.txt 
-rw-r--r--. 1 root root 0 4月  10 02:58 /mnt/1122.txt

14.5 NFS客户端问题

客户端文件属主属组nobody

NFS 4版本会有该问题
客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nobody
客户端挂载时加上 -o nfsvers=3
客户端和服务端都需要
vim /etc/idmapd.conf     //
把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com,随意定义吧),然后再重启rpcidmapd服务

操作过程

客户端
[[email protected] ~]# mount -t nfs -onfsvers=3 192.168.106.160:/tmp /mnt
[[email protected] ~]# mount -t nfs -oremount,nfsvers=3 192.168.106.160:/tmp /mnt

15.1 FTP介绍

FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。
FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。
小公司用的多,大企业不用FTP,因为不安全

15.2 使用vsftpd搭建ftp服务(上)

centos上自带vsftpd
yum install -y vsftpd
useradd -s /sbin/nologin virftp
vim /etc/vsftpd/vsftpd_login //内容如下,奇数行为用户名,偶数行为密码,多个用户就写多行
testuser1
aminglinux
chmod 600 /etc/vsftpd/vsftpd_login
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf

vim testuser1 //加入如下内容
local_root=/home/virftp/testuser1
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

mkdir /home/virftp/testuser1
touch /home/virftp/testuser1/aming.txt
chown -R virftp:virftp /home/virftp
vim /etc/pam.d/vsftpd //在最前面加上
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

vim /etc/vsftpd/vsftpd.conf
将anonymous_enable=YES 改为 anonymous_enable=NO
将#anon_upload_enable=YES 改为 anon_upload_enable=NO
将#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
再增加如下内容
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
systemctl start vsftpd //启动vsftpd服务

操作过程

[[email protected] ~]# yum install -y vsftpd

[[email protected] ~]# useradd -s /sbin/nologin virftp
[[email protected] ~]# vim /etc/vsftpd/vsftpd_login
testuser1
aminglinux
user1
aming
[[email protected] ~]# chmod 600 /etc/vsftpd/vsftpd_login

[[email protected] ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
[[email protected] ~]# ls -l /etc/vsftpd/
总用量 36
-rw-------. 1 root root   125 8月   3 2017 ftpusers
-rw-------. 1 root root   361 8月   3 2017 user_list
-rw-------. 1 root root  5030 8月   3 2017 vsftpd.conf
-rwxr--r--. 1 root root   338 8月   3 2017 vsftpd_conf_migrate.sh
-rw-------. 1 root root    33 4月  10 05:23 vsftpd_login
-rw-r--r--. 1 root root 12288 4月  10 05:25 vsftpd_login.db

[[email protected] ~]# mkdir /etc/vsftpd/vsftpd_user_conf
[[email protected] ~]# cd /etc/vsftpd/vsftpd_user_conf/
[[email protected] vsftpd_user_conf]# vim testuser1
local_root=/home/virftp/testuser1
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

[[email protected] vsftpd_user_conf]# mkdir /home/virftp/testuser1
[[email protected] vsftpd_user_conf]# touch /home/virftp/testuser1/aming.txt
[[email protected] vsftpd_user_conf]# chown -R virftp:virftp /home/virftp
[[email protected] vsftpd_user_conf]# vim /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

[[email protected] vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf
将anonymous_enable=YES 改为 anonymous_enable=NO
将#anon_upload_enable=YES 改为 anon_upload_enable=NO 
将#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
再增加如下内容
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES

[[email protected] vsftpd_user_conf]# systemctl start vsftpd
[[email protected] vsftpd_user_conf]# ps aux |grep vsftpd
root      13671  0.0  0.0  53212   572 ?        Ss   05:42   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root      13674  0.0  0.0 112676   980 pts/0    R+   05:44   0:00 grep --color=auto vsftpd
[[email protected] vsftpd_user_conf]# netstat -lnpt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:35851           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      11434/rpc.mountd    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      965/nginx: master p 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      931/sshd            
tcp        0      0 0.0.0.0:34360           0.0.0.0:*               LISTEN      11421/rpc.statd     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1243/master         
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      965/nginx: master p 
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::20048                :::*                    LISTEN      11434/rpc.mountd    
tcp6       0      0 :::33620                :::*                    LISTEN      -                   
tcp6       0      0 :::21                   :::*                    LISTEN      13671/vsftpd        
tcp6       0      0 :::22                   :::*                    LISTEN      931/sshd            
tcp6       0      0 ::1:25                  :::*                    LISTEN      1243/master         
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
tcp6       0      0 :::33702                :::*                    LISTEN      11421/rpc.statd

15.3 使用vsftpd搭建ftp服务(下)

测试ftp

yum install -y lftp
lftp [email protected]
执行命令ls,看是否正常输出
若不正常查看日志/var/log/messages和/var/log/secure
windows下安装filezilla客户端软件,进行测试

操作过程

[[email protected] ~]# lftp [email protected]
口令: 
lftp [email protected]:~> ls      
-rw-r--r--    1 1004     1004            0 Apr 09 21:32 aming.txt

以上是关于2018-05-10 Linux学习的主要内容,如果未能解决你的问题,请参考以下文章

向Linus学习,让代码具有good taste

[linux][c/c++]代码片段01

[linux][c/c++]代码片段02

IOS开发-OC学习-常用功能代码片段整理

java SpringRetry学习的代码片段

python 机器学习有用的代码片段