链接
- rpm命令使用方法
- MobaXterm工具
- tomcat依赖jdk所以先安装jdk
- tomca全局配置启动
- 你修改了系统变量得先 source /etc/profile
- windows下搭建FTP环境
- 在WIN10上搭建Ftp服务器 百度吧 很多的**
- 主要说下Linux下搭建PDF
- 首先了解一下宝塔面板(图形化窗口)**
- 安装宝塔面板
- 忘记账户时查看宝塔面板账户命令:
- Centos 7使用vsftpd搭建FTP服务器
- 二、匿名开放模式
- CentOS7 默认使用firewalld防火墙
- 下面介绍一下本地用户模式
- 接下来 虚拟用户模式
rpm命令使用方法
MobaXterm工具
推荐软件:远程终端神器:MobaXterm 个人觉得比Filezilla好用的多 功能也多
网址:https://mobaxterm.mobatek.net/
tomcat依赖jdk所以先安装jdk
查询系统中是否已安装了jdk:
rpm -qa | grep java
移除已安装的Open JDK:
yum remove java-1.8.0-openjdk*
yum remove java-1.7.0-openjdk*
查询系统中是否已安装了jdk:
rpm -qa | grep java
安装rpm格式的jdk:
rpm -ivh jdk-8u221-linux-x64.rpm
测试jdk是否安装成功:
java -version
卸载 用remove来做
先查到jdk 然后卸载
卸载:
安装(这里不需要配置环境变量)解压的属需要
也可以同wget+网址 的方式下载tomcat但是慢不建议 直接本地上传到虚拟机
移动后记得删除根目录下的解压包 因为走的是复制
cp apache-tomcat-9.0.36/ -R /usr/local/
rm -rf apache-tomcat-9.0.36
在linux .bat文件没啥用 删掉看起来少点
在bin目录下: rm -rf *.bat
先在bin下启动tomcat : ./startup.sh
在curl http://localhost:8080 下面打印一些网址啥的其实就是页面就成功了
也可以用浏览器验证 先启动tomcat
但是这个你必须在tomcat bin下面输入命令 我们可以配置到环境变量里 在哪都可以用
pwd 获取到绝对路径 复制(不用到bin)
编辑系统变量:vim /etc/profile
tomca全局配置启动
在结尾另提一行 输入:
TOMCAT_HOME=/usr/local/apache-tomcat-9.0.36
export PATH=TOMCAT_HOME/bin
你修改了系统变量得先 source /etc/profile
然后查看变量里有没有我们配置的东西
我们现在在家目录进行关闭
再过来进行重命名操作
下面注意 shutdown 特殊 他是关机 所以别改成shutdown 会冲突
startup.sh是可以修改成你想用的名字
然后你回到家目录输入你改后的也生效(别急待验证 没试着)
windows下搭建FTP环境
下面有必要知道
在WIN10上搭建Ftp服务器 百度吧 很多的**
注意点:
IP地址是你本机的IP地址
最后一步是身份验证问题,内网访问如果没有重要文件和机密文件那么可以选择匿名开放浏览。但是如果有重要文件放在FTP服务器中进行共享那么务必选择基本然后分配用户名和密码;
至于权限一般情况下应该是非管理员可以读取、管理员可以读取和写入,同样的道理如果有重要文件那么也不应该匿名开放读取和写入。
还有一种更快的玩法以管理员身份运行命令窗口 你在那个目录下输入:
python -m http.server 8099
然后去访问127.0.0.1:8099 就会列举当前目录内容
主要说下Linux下搭建PDF
首先了解一下宝塔面板(图形化窗口)**
网址:https://www.bt.cn/ 进去点立即安装 会跳到一个页面
安装宝塔面板
选择自己对应的 复制代码
我当时发生了错误 百度后我又重新执行了下面命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
然后成功了
忘记账户时查看宝塔面板账户命令:
命令:bt default 在你忘记密码账号的时候执行
记得换ip
http://192.168.79.150:8888/33d6d9a3
登进去后进入软件商店 安装一个免费的ftp
这里的根目录是: /www/wwwroot/lxd 下面要用
这就成功了 同时下面啥都没有 可以去他的目录写一个文件( /www/wwwroot/lxd
touch text.html
)
刷新页面
然后再模拟用工具连接
Centos 7使用vsftpd搭建FTP服务器
查看是否安装了vsftp:
rpm -qa |grep vsftpd
卸载vsftp
rpm -e vsftp
安装vsftp
yum install -y vsftp
设置vsftp开机启动
chkconfig --list查看不同启动级别自动启动的系统服务
chkconfig --level 35 --add vsftpd on 添加vsftpd自启动以及级别为3和5(关闭为off,具体参照chkconfig)
更改vsftp端口
更改/etc/vsftpd/vsftpd.conf添加listen_port=更改的端口数值
更改/etc/services里的ftp对应的tcp和udp对应端口为更改的端口
1、yum -y install vsftpd
先做一个备份:(先重命名后又改回来)
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
上面换名字了 再改回来
grep -v “#” /etc/vsftpd/vsftpd.conf.bak > /etc/vsftpd/vsftpd.conf
这样查看就过滤掉了注释的内容便于查看 但是不必要看习惯
配置firewalld防火墙开放2231和45000-49000端口
firewall-cmd --permanent --add-port=2231/tcp
firewall-cmd --permanent --add-port=45000-49000/tcp
firewall-cmd --reload
配置selinux允许FTP服务
注:没有selinux相关命令的话,需要安装policycoreutils-python包
yum -y install policycoreutils-python.x86_64
setsebool -P ftpd_full_access=on
二、匿名开放模式
1、修改配置文件,带注释的是需要修改和新增的配置
vim /etc/vsftpd/vsftpd.conf
嫌一个个修改麻烦直接把你里面的开放内容全部删掉 换成下面这个(注释的部分是需要修改的 复制到文件里 可不能带下面的注释)
anonymous_enable=YES #启用匿名访问模式
anon_umask=022 #匿名用户上传文件的umask值
anon_upload_enable=YES #允许匿名用户上传文件
anon_mkdir_write_enable=YES #允许匿名用户创建目录
anon_other_write_enable=YES #允许匿名用户重命名、删除等操作
anon_root=/data/anon #匿名用户的FTP根目录
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen_port=2231 #vsftpd服务监听的端口号
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=45000 #PASV模式最小端口号
pasv_max_port=49000 #PASV模式最大端口号
2、创建并授权匿名用户FTP根目录
mkdir -p /data/anon/pub
chown -R ftp /data/anon/pub/
3、启动vsftpd服务,并加入开机启动
systemctl start vsftpd
systemctl enable vsftpd
下面说没有找到ftp 安装即可 安装好之后
ftp 192.168.79.150 2231 (ftp + ip +端口号)就会进入ftp name 一律为anonymous 密码为空(直接回车)
然后记得cd pub 在里面进行操作
在复制的会话 查看是否成功
CentOS7 默认使用firewalld防火墙
开放特定端口:firewall-cmd --zone=public --add-port=8080/tcp --permanent
查看防火墙状态:firewall-cmd --state
重启防火墙:systemctl restart firewalld
查看端口列表:firewall-cmd --zone=public --list-ports
2.安装iptables-services
yum install iptables-services
3.修改防火墙配置文件
cat /etc/sysconfig/iptables
vi /etc/sysconfig/iptables
上面是匿名开放模式
下面介绍一下本地用户模式
1、修改配置文件,删除之前的匿名模式配置内容,带注释的是需要修改和新增的配置
直接修改吧:
vim /etc/vsftpd/vsftpd.conf
复制到文件里 可不能带下面的注释
#注释部分做了修改 可直接全部复制替换成你文件里的
anonymous_enable=NO #关闭匿名访问模式
local_enable=YES
write_enable=YES
local_umask=022
local_root=/data/user #指定本地用户的FTP根目录
chroot_local_user=YES #将用户权限禁锢在FTP目录
allow_writeable_chroot=YES #允许对FTP根目录执行写入操作
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen_port=2231
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=45000
pasv_max_port=49000
2、创建本地用户,并指定家目录
useradd -d /data/user -s /sbin/nologin user
echo "123456" | passwd --stdin user
3、重启vsftpd服务 而且执行这条命令 下面没东西就对的 下面有提示 就是你文件内容没对
systemctl restart vsftpd
4、测试
这个时候你登录(ftp 192.168.79.150 2231
) 用户名user 密码123456
肯定会报530的错
这是因为 cat /etc/shells 通过查看登录shells 他没有 /sbin/nologin 加上就好了
vim /etc/shells 最后加 /sbin/nologin
//nologin 只能登录不能作为用户进入系统查看文件或其他
然后 rm -rf /data/user
移除用户:userdel user
重新执行 -d指定家目录 -s指定登录shell
useradd -d /data/user -s /sbin/nologin user
echo "123456" | passwd --stdin user
//stdin 输入流你要是设置过密码想修改:passwd user
可以通过这个命令 看到我们刚才新添加的用户: tail /etc/passwd
再次登录就好了
这里补充一下为啥:/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、创建用于FTP认证的用户数据库文件
vim /etc/vsftpd/vuser.txt
注:第一行用户名,第二行密码,依此类推
明文信息不安全,需要使用db_load命令用哈希(hash)算法将明文信息转换成数据文件,然后将明文信息文件删除。(加密)
**将用户信息文件转换为数据库并使用hash加密:db_load -T -t hash -f **
db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db
设置为可以查看一下
接下来修改权限:chmod 600 /etc/vsftpd/vuser.db
再次查看权限已经变成600:ll /etc/vsftpd/
接下来删除掉明文文件:rm -f /etc/vsftpd/vuser.txt
2、创建虚拟用户映射的系统本地用户和FTP根目录
添加用户:useradd -d /data/ftproot -s /sbin/nologin virtual
改权限:-R针对目录 -f不提示 :chmod -Rf 755 /data/ftproot/
3、建立用于支持虚拟用户的PAM文件
新建一个用于虚拟用户认证的PAM文件vsftpd.vu,其中PAM文件内的“db=”参数为使用db_load命令生成的账户密码数据文件的路径,但不用写数据文件的后缀。
vim /etc/pam.d/vsftpd.vu 写入下面两个
认证:
auth required pam_userdb.so db=/etc/vsftpd/vuser
账户:
account required pam_userdb.so db=/etc/vsftpd/vuser
4、为两个虚拟用户设置不同的权限,xuad拥有所有权限,而limin只有读取权限。
虚拟用户目录:
mkdir /etc/vsftpd/vusers_dir
前面我们设置的用户名ftp01~ftp03
touch /etc/vsftpd/vusers_dir/ftp01
vim /etc/vsftpd/vusers_dir/ftp02
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
5、修改配置文件,删除之前的匿名模式配置内容,带注释的是需要修改和新增的配置
相当于复制一份 其实没必要
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
anon_umask=022
local_enable=YES
guest_enable=YES #开启虚拟用户模式
guest_username=virtual #指定虚拟用户对应的系统用户
allow_writeable_chroot=YES #允许对FTP根目录执行写入操作
write_enable=YES
local_umask=022
local_root=/data/ftproot
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen_port=2231
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.vu #指定PAM文件
userlist_enable=YES
tcp_wrappers=YES
user_config_dir=/etc/vsftpd/vusers_dir #指定虚拟用户配置文件目录
pasv_min_port=45000
pasv_max_port=49000
6、重启vsftpd服务
systemctl restart vsftpd
7、测试
因为我们前面ftp01只设置了只读权限
假设创建一个目录 他是创建不了的
切换到ftp02用户 它的权限给的多
这是因为端口号错了 改成2231即可 但是还是连不上 这可能是本机2231端口未开放
linux 里是可以访问的