ubuntu 16.04下手动安装apache2\php7.0\mysql\phpmyadmin\ftp等环境

在ubuntu下安装一个web环境,应该说非常简单。

首先是防火墙:http://wiki.ubuntu.org.cn/Ufw%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97   参考地址https://linux.cn/article-8087-1.html

------------

sudo apt-get install ufw  安装

sudo systemctl start ufw  启动
sudo systemctl enable ufw  启用

sudo ufw allow ssh    用法
sudo ufw allow 22
sudo ufw deny 111
sudo ufw allow 80/tcp
sudo ufw allow http/tcp

允许从一个 IP 地址连接:sudo ufw allow from 123.45.67.89
允许特定子网的连接:sudo ufw allow from 123.45.67.89/24
允许特定 IP/ 端口的组合:sudo ufw allow from 123.45.67.89 to any port 22 proto tcp
sudo ufw delete allow 80

sudo ufw status  状态
sudo ufw disable   禁用

-----------------

再者,为了安全性考虑,建议禁止口令登录,仅允许使用密钥登录。

京东vps上下载下来的是pem文件,需要使用puttygen生成ppk文件,保存私钥,并且最好加一个密码。

-----------禁止口令登录------------

#编辑sshd_config文件
vi /etc/ssh/sshd_config

#禁用密码验证
PasswordAuthentication no 正常情况只修改这一条就可以了
#启用密钥验证
RSAAuthentication yes
PubkeyAuthentication yes
#指定公钥数据库文件
AuthorsizedKeysFile .ssh/authorized_keys

-----------

#RHEL/CentOS系统
service sshd restart
#ubuntu系统
service ssh restart
#debian系统
/etc/init.d/ssh restart

---------------------

sudo apt-get install apache2 php7.0 php7.0-mysql libapache2-mod-php7.0 mysql-server phpmyadmin

这个命令中途会要求你输入mysql的root密码,和phpmyadmin的密码,根据情况输入。

安装好之后访问http://ip 如果能看到apache的提示页面,说明服务器已经安装正常了。

在/var/www/html下新建一个phpinfo.php 写入代码<?php phpinfo(); ?> 如果正常运行,说明php7.0也已经就绪。

关于虚拟主机的配置,全部在/etc/apache2/下面。sites-enabled下面的 配置文件。

----新建一个虚拟主机----------

把域名解析过来,

在/etc/apache2/sites-enable下面新建一个conf文件,名称最好是域名,分辨起来简单,内容如下:

<VirtualHost *:80>
ServerName www.ex.com
ServerAlias c.ex.com
ServerAdmin [email protected]
DocumentRoot "/www/www.ex.com/public_html"
DirectoryIndex index.html index.php
<Directory "/www/www.ex.com/public_html">
        Options -Indexes +FollowSymLinks
        #MultiViews
        AllowOverride All
        Require all granted
        #       Require host ip
        #       Order allow,deny
        #       Allow from all
</Directory>

ErrorLog /www/_logs/www.ex.com_error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /www/_logs/www.ex.com_access.log combined
</VirtualHost>

  这里要注意,需要命令行下建立web目录和日志目录,同时赋予相应的权限。

---------------

关于ftp的安装一直是个比较麻烦的问题。

sudo apt-get install pure-ftpd

建立 名为 ftp(也可以叫ftpuser,自己起个好记点的)的帐号

禁止匿名用户登录: /etc/pure-ftpd/conf/NoAnonymous 内容为YES (默认就是)

重启FTP服务,sudo /etc/init.d/pure-ftpd restart

设置虚拟用户

建立系统用户和虚拟用户

为了安全可以让所有虚拟用户共享同一个系统用户。

groupadd ftpgroup

useradd -g ftpgroup -s /dev/null ftp_local_user

pure-pw useradd test01 -u ftp_local_user -d /home/ftp/test01 -m

pure-pw useradd 虚拟用户名 -u 系统用户 -d 目录 -m

按理说,到这一步,FTP也就可以用了,如果遇到530错误,解决方法:在/etc/pure-ftpd/auth下,创建一个软链接ln -s /etc/pure-ftpd/conf/PureDB 60puredb

大功告成,接下来重启pureftpd会发现参数变成如下,即可用虚拟用户登陆了

Restarting ftp server: Running: /usr/sbin/pure-ftpd -l puredb:/etc/pure-ftpd/pureftpd.pdb -O clf:/var/log/pure-ftpd/transfer.log -u 1000 -E -B

注:pureftpd 默认是没有.conf的配置文件的,所以一切配置都体现在启动脚本下,如果要对其做什么细节改变,可以参见./pureftpd --help

服务重启: sudo /etc/init.d/pure-ftpd restart

------------

解释:-u将虚拟用户 test01 同系统用户 ftp_local_user关联在一起。-d参数使 test01 只能访问其 home 目录。而如果想让他访问整个文件系统,可以用 -D 选项。

其他选项:

-t 下载带宽限制
-T 上传带宽限制
-n 最大文件数目
-N 磁盘配额(单位M)
-q 上传速度限制
-Q 下载速度限制
-r 允许某些ip/网段的客户端访问
-R 拒绝某些ip/网段的客户端访问
-i 允许本地某些ip/网段访问(allow local host)
-I 拒绝本地某些ip/网段访问(deny local host)
-y 同时最大连接数目
-z 允许连接服务器的时间段,格式hhmm-hhmm,如 -z 0412-1618代表用户只能在凌 晨4点12分至下午4点18分连接服务器
-f passwd_file
-F puredb_file
-m 不必重启Pure-FTPd以及重新生成puredb_file文件
如果进行帐户操作时,没有带-m 参数,那就应该手动更新一下pdb数据:/usr/local/stow/pure-ftpd-1.0.21/bin/pure-pw mkdb pureftpd.pdb

pure-pw useradd 添加用户

pure-pw userdel 删除用户

pure-pw usermod 修改用户

pure-pw show 查看用户详细信息

pure-pw list 查看所有用户设置

pure-pw mkdb 生成数据文件

pure-ftpd不是用配置文件而是用命令行参数,这种方式比较怪异。不过pure-ftpd的作者还是为偏好配置文件的用户提供了wrapper,可以man一下pure-ftpd-wrapper. 在Debian/Ubuntu下的wrapper比较怪,是在/etc /pure-ftpd/conf下以设置项作为文件名,该项的设置值作为文件的内容,如需要设置ClientCharset=gbk,就建立一个名为“ClientCharset”的文件,内容为“GBK”.
  实验室的FTP需要给每个人配一个私有账号,相当于一个网络硬盘;同时允许匿名登录用于上传公共资料与数据交换。由于是内部服务器,需要改一下端口号,最后还需要一个管理员帐号。我使用的设置如下(用传统赋值写法),一些不常用的就不写了:

ClientCharset=gbk #必设,防止Windows登录出现中文乱码
DontResolve=yes #不解析域名,可以节省登录时间
BrokenClientsCompatibility=yes #兼容IE等非标准FTP client
ChrootEveryone=yes #把所有用户限制在其homedir下
KeepAllFiles=yes #禁止用户删除文件,TrustedGID组中的除外
TrustedGID=1001 #管理员组ftpadmins的GID,允许管理员删除文件
CreateHomeDir=yes #当虚拟用户第一次登录时,自动创建homedir
MaxClientsPerIP=2 #每个IP限制2个连接
MaxClientsNumber=20 #最大并发连接数,默认值是50
MaxDiskUsage=90 #分区已使用空间超过90%时不再接受上传
NoAnonymous=no #允许匿名登录
Bind=,8821 #改变端口号
  每次修改服务器设置后都需要重新启动服务:

sudo /etc/init.d/pure-ftpd restart

设置配置文件 ,一般不需要管

ChrootEveryone yes #限制所有用户在其主目录中

BrokenClientsCompatibility no #兼容ie等比较非正规化的ftp客户端

MaxClientsNumber 50 #服务器总共允许同时连接的最大用户数

Daemonize yes #做为守护(doemon)进程运行(Fork in background)

MaxClientsPerIP 8 #同一IP允许同时连接的用户数

VerboseLog no #如果你要记录所有的客户命令,设置这个指令为 "yes"

DisplayDotFiles yes #即使客户端没有发送 ‘-a‘ 选项也列出隐藏文件

AnonymousOnly no #不允许认证用户 - 仅作为一个公共的匿名FTP。

NoAnonymous yes #不允许匿名连接,仅允许认证用户使用。

SyslogFacility ftp #缺省的功能( facility )是 "ftp"。 "none" 将禁止日志。

DontResolve yes #在日志文件中不解析主机名。

MaxIdleTime 15 #客户端允许的最大的空闲时间(分钟,缺省15分钟)

PureDB /usr/local/pureftp-1.0.22/etc/pureftpd.pdb #PureDB 用户数据库

LimitRecursion 2000 8 #‘ls‘ 命令的递归限制。第一个参数给出文件显示的最大数目。第二个参数给出最大的子目录深度。

AnonymousCanCreateDirs no #允许匿名用户创建新目录?

MaxLoad 4 #如果系统被 loaded 超过下面的值,匿名用户会被禁止下载。

AntiWarez yes #不接受所有者为 "ftp" 的文件的下载。

Bind 10.10.10.10,21 #服务监听的IP 地址和端口。

Umask 133:022 #新建目录及文件的属性掩码值。<文件掩码>;:<目录掩码>; .

MinUID 99 #认证用户允许登陆的最小组ID(UID) 。

AllowUserFXP yes #仅允许认证用户进行 FXP 传输。

AllowAnonymousFXP no #对匿名用户和非匿名用户允许进行匿名 FXP 传输。

ProhibitDotFilesWrite no #用户不能删除和写点文件(文件名以 ‘.‘ 开头的文件)

ProhibitDotFilesRead no #禁止读点文件(文件名以 ‘.‘ 开头的文件) (.history, .ssh...)

AutoRename no #永不覆盖文件。当上传的文件,其文件名已经存在时,自动重命名,如: file.1, file.2, file.3, ...

AnonymousCantUpload no #不接受匿名用户上传新文件( no = 允许上传)

AltLog clf #使用类似于Apache的格式创建一个额外的日志文件

MaxDiskUsage 99 #来保护日志文件。当所在磁盘分区使用超过百分之 X 时,将不在接受新的上传。

CustomerProof yes

UnixAuthentication no #不起用 简单的 Unix系统 认证方式(/etc/passwd)。

更多的配置信息请参考:http://bbs.chinaunix.net/viewthread.php?tid=145846

ubuntu 的 pure-ftpd 的配置文件很特别,都是放到 “/etc/pure-ftpd/conf” 目录下,而且是以选项为文件名,选项值为文件内容。譬如你需要启用--trustedgid选项,你只需要在该目录下建立一个名为:TrustedGID的文件,并且把信任的GID写入到文件中即可。

时间: 2024-10-03 14:44:59

ubuntu 16.04下手动安装apache2\php7.0\mysql\phpmyadmin\ftp等环境的相关文章

Ubuntu 14.04 下手动安装Firefox的Flash插件

有时候我们需要在Ubuntu下采用手动安装一些软件,比如Firefox的Flash插件.Adobe® Flash® Player 是一款轻量级浏览器插件,具有丰富的 Internet 应用运行时间,提供持续的迷人用户体验.绝妙的音频/视频回放效果和刺激的游戏. Flash Player 已在超过 13 亿系统中安装,是提供高度集成且丰富的 Web 内容的标准应用. 相关阅读: Ubuntu 14.04 下载.安装.配置 整理汇总 页面 http://www.linuxidc.com/Linux/

RabbitMQ在Ubuntu 16.04下的安装与配置

安装RabbitMQ 由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erlang,执行命令: sudo apt-get install erlang-nox安装rabbitMq命令: 2.$ sudo apt-get update3.$ sudo apt-get install rabbitmq-server启动.停止.重启.状态rabbitMq命令: 启动:sudo rabbitmq-server start关闭: sudo rabbitmq-server

Ubuntu 16.04下的安装RabbitMQ

安装 添加源 echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list 新增公钥 wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add - 更新源 sudo apt-get update 安装rabbitmq-server sud

Ubuntu 14.04 麒麟版安装:Apache+php5+mysql+phpmyadmin.

今天系统从原版换成麒麟版,再加上昨儿失心疯把以前的blog,为知笔记全给删除了,反正要装环境,干脆从头再来. 一.安装apache 1.打开终端:Ctrl+Alt+T,更新最新源: sudo apt-get update//apt-get 是自带的shell命令,通过它可以方便的安装源里的软件. 2.通过apt-get方式安装Apache: sudo apt-get install apache2//中途要输入Y确认 检测安装是否成功: 在浏览器输入:127.0.0.1或locahost.浏览器

Ubuntu 16.04下使用VirtualBox虚拟机安装Windows XP win7 linux 安装虚拟机

1. http://www.linuxidc.com/Linux/2016-09/135192.htm 2. 对于初次使用Ubuntu 16.04的多小伙伴来说,可能还不是很熟悉操作,有时候,我们就需要在这个Ubuntu系统中,再安装一个虚拟机来帮助自己完成Windows下的需求,那么这里就来讲讲如何在Ubuntu 16.04下安装VirtualBox虚拟机. 如果是Ubuntu16.04升级之后VirtualBox不能安装,提示缺少两个依赖库,分别为 1.libsdl1.2debian(lib

Ubuntu 16.04 下安装Firefox的Flash插件

Ubuntu 16.04 下安装Firefox的Flash插件 在ubuntu系统环境下面打开优酷视频,发现无法播放视频.Adobe Flash Player 是一款轻量级浏览器插件,具有丰富的 Internet 应用运行时间,提供持续的迷人用户体验.绝妙的音频/视频回放效果和刺激的游戏. 虽然flash早晚会被html5代替,但目前还是不少网站在用,正好研究一下怎么安装flash插件,在优酷的提示下,点击进入Adobe Flash Player的下载页面: 选择.tar.gz的包, 下载后解压

Ubuntu 16.04下安装MySQL详解

Ubuntu 16.04下安装MySQL详解分别依次输入以下3个命令: sudo apt-get install mysql-server sudo apt install mysql-client sudo apt install libmysqlclient-dev 安装成功后可以通过下面的命令测试是否安装成功: sudo netstat -tap | grep mysql 出现如下信息证明安装成功: >>> sudo netstat -tap | grep mysql tcp 0

Ubuntu 16.04 一系列软件安装命令,包括QQ、搜狗、Chrome、vlc、网易云音乐安装方法

1 简介 Ubuntu 16.04安装完后,还需要做一些配置才能愉快的使用,包括添加软件源.安装搜狗输入法.Chrome浏览器.网易云音乐.配置快捷键.安装git等等,下面就跟着我来配置吧,just do it 2 版本选择 如果你是小白,不想折腾,可以直接选择安装deepin linux,中文名”深度Linux”,这个是国内目前最好用的Linux之一,开箱即用,常用软件都安装好了,甚至连最新版的QQ都有,mac风格的界面也很漂亮. 但是,作为一个程序员,还是要使用Ubutnu,之前博主用过Ub

我的淘宝:Ubuntu 16.04.2上安装 Oracle 11.2.0.4 RAC

进入淘宝店铺 教程:Ubuntu 16.04.2上安装 Oracle 11.2.0.4 RAC 请支持下.价格好商量!