ubuntu16.04 lamp webserver 服务器搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/austindev/article/details/54724288

搭建Ubuntu lamp 系统:

MariaDB/MySQL

备注:MariaDB是从MySQL复制而来的,出自同一个开发团队,因此也完全兼容MySQL,但拥有一些新特性和更好的性能。所以选择安装MariaDB;
执行安装命令:

apt-get -y install mariadb-server mariadb-client

然后设置root密码等:

mysql_secure_installation

出现下列选择项:

Enter current password for root (enter for none): <-- press enter
Set root password? [Y/n] <-- y
New password: <-- Enter the new MariaDB root password here
Re-enter new password: <-- Repeat the password
Remove anonymous users? [Y/n] <-- y
Disallow root login remotely? [Y/n] <-- y
Reload privilege tables now? [Y/n] <-- y

尝试登陆MariaDB进行验证:

mysql -u root -p

退出MariaDB终端,输入quit,按Enter;

安装Apache2.4

执行安装命令:

apt-get -y install apache2

安装完成后,可以在浏览器中输入:localhost进行验证;
Apache 的默认虚拟主目录为:/var/www/html
主配置文件为:/etc/apache2/apache2.conf.

安装PHP7

执行以下安装命令

apt-get -y install php7.0 libapache2-mod-php7.0

然后重启Apache

systemctl restart apache2

通过PHPinfo测试是安装成功

创建测试文件:/var/www/html/info.php
内容为:<?php  phpinfo(); ?>
通过在浏览器中查看:localhost/info.php
![info.php](https://img-blog.csdn.net/20170125003859093?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYXVzdGluZGV2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

要让PHP支持MySQL,我们还得安装php7.0-mysql包,同样我们一起安装上其他必要的模块

apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php-pear php-imagick php7.0-imap php7.0-mcrypt php-memcache  php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-mbstring php-gettext

重启Apache,重新查看PHPinfo信息,确认是否已经支持;

安装APCu 加速PHP

apt-get -y install php-apcu

安装PHP5.6

如果需要切换PHP版本,必须先删除环境中已有的PHP

sudo aptitude purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`

然后开始安装

添加 PPA
add-apt-repository ppa:ondrej/php
sudo apt-get update
apt-get -y install php5.6 libapache2-mod-php5.6 

配置PHP支持MySQL/MariaDB模块

apt-get -y install php5.6-mysql php5.6-curl php5.6-gd php5.6-intl php-pear php-imagick php5.6-imap php5.6-mcrypt php-memcache  php5.6-pspell php5.6-recode php5.6-sqlite3 php5.6-tidy php5.6-xmlrpc php5.6-xsl php5.6-mbstring php-gettext

配置VSFTPD

配置ssh-sftp

  1. 安装OpenSSH服务器
sudo apt-get install openssh-server
  1. 为SFTP访问创建用户组,便于管理权限
sudo addgroup sftp-users
  1. 创建SFTP用户,并配置相应权限
sudo adduser austin
sudo usermod -G sftp-users -s /bin/false austin  
//将austin从所有其他用户组中移除并加入到sftp-users组,并且关闭其Shell访问
  1. 创建SSH用户组,并把管理员加入到该组
sudo addgroup ssh-users 
sudo usermod -a -G ssh-users admin  \\-a参数的意思是不从其他用户组用移除
sudo usermod -a -G ssh-users root \\额外增加root用户ssh访问
  1. 准备“监狱”的根目录及共享目录
sudo mkdir /home/sftp_root
sudo mkdir /home/sftp_root/shared
sudo chown admin:sftp-users /home/sftp_root/shared
sudo chmod 770 /home/sftp_root/shared
  1. 修改SSH配置文件
AllowGroups ssh-users sftp-users
Match Group sftp-users
    ChrootDirectory /home/sftp_root
    AllowTcpForwarding no
    X11Forwarding no
    ForceCommand internal-sftp

这些内容的意思是:
只允许ssh-uers及sftp-users通过SSH访问系统;
针对sftp-users用户,额外增加一些设置:将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);禁止TCP Forwarding和X11 Forwarding;强制该组用户仅仅使用SFTP。

  1. 重启系统生效

安装 phpMyAdmin

phpMyAdmin是一个网页管理MySQL的工具,方便使用
执行以下安装命令:

apt-get -y install phpmyadmin

出现下列选择项:

Web server to configure automatically: <-- Select the option: apache2
Configure database for phpmyadmin with dbconfig-common? <-- Yes
MySQL application password for phpmyadmin: <-- Press enter, apt will create a random password automatically.

MariaDB unix_socket插件,可以阻止远程的root 用户访问,以及TCP连接,我们在这里把这个使能关掉,执行以下命令:

echo "update user set plugin='' where User='root'; flush privileges;" | mysql -u root -p mysql

然后在var/www/html/目录下创建phpmyadmin软连接
执行以下命令:

sudo ln -s /usr/share/phpmyadmin /var/www/html/

修改Apache配置文件包含phpmyadmin配置文件:

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
sudo a2enconf phpmyadmin.conf
sudo service apache2 reload

通过浏览器访问localhost/phpmyadmin/进行验证;
phpmyadmin
一切顺利,搭建完毕!!!

猜你喜欢

转载自blog.csdn.net/austindev/article/details/54724288
今日推荐