ubuntu下安装Apache + PHP + Mysql
首次登录
在本地设备中打开终端,执行ssh命令,登陆服务器。
ssh root@139.196.222.22
输入根用户密码,按回车确认。升级软件
为了确保操作系统中的默认的软件安装了最新的更新和补丁,我们需要升级系统软件。在终端中输入:
apt-get update
apt-get upgrade安装PHP
#确保操作系统中有add-apt-repository,这个命令会安装包含add-apt-repository二进制文件的software-properties-common包。现在可以添加自定义的PPA了。
sudo apt-get install software-properties-common
#添加ppa:ondrej/php5-5.6 PPA
sudo add-apt-repository ppa:ondrej/php5-5.6
#ubuntu会缓存所有可用的软件,因此添加新软件源后,要刷新这个缓存
sudo apt-get update
#安装PHP
sudo apt-get install php5
#安装apache2
sudo apt-get install apache2
#libapache2-mod-php5目的是为了让apache支持php5
sudo apt-get install libapache2-mod-php5
#可选,开启GD库支持, 例如wordpress上传图片需要GD库.
sudo apt-get install php5-gd
#enable rewrite module
sudo a2enmod rewrite
#重启apache2
sudo service apache2 restart
配置Apache (仅开启HTTPS)
将www.test.com.crt证书复制到/etc/ssl/certs/文件夹下
将密钥www.test.com.key复制到/etc/ssl/private/文件夹下
将root_bundle.crt复制到/etc/ssl/certs/文件夹下
#在sites-available文件夹下创建test-ssl.config文件
cd /etc/apache2/sites-available
touch test-ssl.config
复制下述内容到test-ssl.config文件中。
<VirtualHost *:443>
ServerAdmin www.test.com
ServerName www.test.com
DocumentRoot /var/www/test
ErrorLog /var/www/logs/error.log
CustomLog /var/www/logs/access.log
combined
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
SSLCertificateFile /etc/ssl/certs/www.test.com.crt
SSLCertificateKeyFile /etc/ssl/private/www.test.com.key
SSLCertificateChainFile /etc/ssl/certs/root_bundle.crt
</VirtualHost>
如果只是开启HTTP,可以将文件命名为test.config,端口改成80或其他需要的端口,config文件中不需要SSLEngine on以下的设置。#重启apache2
sudo service apache2 restart
非根用户
我们需要创建非根用户以加强服务器的安全性。我们应该尽量让别人不能使用根用户访问服务器,因为根用户在服务器中拥有超级权限,可以执行任何命令。
#创建非根用户
adduser deploy
#把deploy用户加入sudo用户组,让deploy用户拥有sudo权限,这样通过密码认证后可以执行需要特殊权限的#任务。
usermod –a –G sudo deploy
SSH密钥对认证
在本地设备执行可以执行下述命令,以非根用户登陆服务器:
ssh deploy@139.196.222.22
这个命令会要求你输入deploy用户的密码,然后登陆服务器。由于密码认证会受到暴力攻击,使用ssh登陆服务器应该使用ssh密钥对认证。
在本地设备中执行下述命令生成~/.ssh/id_rsa.pub(公钥)和~/.ssh/id_rsa(私钥)。
ssh-keygen
私钥保存在本地,公钥复制到服务器上:
#注意,最后的冒号一定要有
scp ~/.ssh/id_rsa.pub deploy@139.196.222.22:
登录服务器,确保~/.ssh文件夹存在,如果不存在,执行下述命令创建~/.ssh文件夹。
mkdir ~/.ssh
#创建authorized_keys文件
touch ~/.ssh/authorized_keys
#该文件的内容是一系列登录这台远程服务器的公钥,执行下述命令,把刚上传的公钥添加到该文件
cat ~/id_rsa.pub>> ~/.ssh/authorized_keys
禁用密码,禁止根用户登录
在文本编辑器中打开/etc/ssh/sshd_config文件,找到PermitRootLogin设置,将其值改为no。找PasswordAuthentication设置,将其值改为no。在终端窗口输入下述命令使改动生效:
sudo service ssh restart
ubuntu下安装Apache + PHP + Mysql的更多相关文章
- ubuntu 下安装 apache php mysql
ubuntu 安装 apache+php+mysql1.打开终端,输入“sudo apt-get install apache2”,回车;(安装apache2.0或2.x新版本,系统会自动查找新的版本 ...
- ubuntu下安装Apache+PHP+Mysql(转)
转载自:http://www.comflag.com/2011/05/01/apache-web.htm 步骤一,安装apache2 1 sudo apt-get install apache2 安装 ...
- zhuan:ubuntu下安装Apache2+php+Mysql
from: http://www.cnblogs.com/lynch_world/archive/2012/01/06/2314717.html ubuntu下安装Apache+PHP+Mysql 转 ...
- Ubuntu下关闭apache和mysql的开机启动
Ubuntu下关闭apache和mysql的开机启动 sudo apt-get install sysv-rc-conf sudo sysv-rc-conf sudo vi /etc/init/mys ...
- ubuntu下的apache+php+mysql的安装
平时我都时在windows下搭配apache+php+mysql环境的,只不过后来听别人说在linux下搭配apache+php+mysql更受欢迎,而且一般公司也是用这样的搭配,所以今天在试着在ub ...
- 在Ubuntu下安装Apache
在Ubuntu下安装软件其实非常方便,Ubuntu提供了apt-get工具,可以使用该工具直接下载安装软件. 在Linux里,系统最高权限账户为root账户,而默认登录的账户并非root账户,例如不具 ...
- ubuntu12.04下安装Apache+PHP+MySQL
一.Apache1.安装apache2: sudo apt-get install apache2 2.重启apache2: sudo /etc/init.d/apache2 restart 3.在浏 ...
- ubuntu下安装jdk,tomcat,mysql,ftp,telnet,svn
需求分析:自己弄了个小网站,想放到云服务器上,同时把自己积累的代码也放上去,服务器上的文件可以简单的在windows上查看,也可以方便的通过windows连接linux服务器. 解决:运行网站要用到j ...
- Ubuntu下的Apache、Mysql、PHP环境搭建
由于刚学习Linux,选择了界面比较友好的Ubuntu进行研究.命令行+可视化对于初学者来说组合还是比较不错的,图形界面作为命令行的一个过渡能比较直观的看到效果.在应用中学习是一个比较好的办法,我就是 ...
随机推荐
- Android 手机上获取物理唯一标识码[转]
所有添加有谷歌账户的设备可以返回一个 ANDROID_ID 所有的CDMA设备对于 ANDROID_ID 和 TelephonyManager.getDeviceId() 返回相同的值(只要在设置时添 ...
- Dapper学习 - Dapper.Rainbow(一) - Create
Dapper这个ORM有许多扩展, 我自己用过两种, 也算是比较主流的两种, Rainbow和Extension, 这里就先介绍下Rainbow吧, 毕竟这个先用, 当然, 由于我使用的是mysql数 ...
- C#执行存储过程的简化
下面的方法是我在实际开发中摸索出来的,可以在很大程度上简化调用存储过程的代码. 首先来看一下C#调用存储过程的一般过程:1.打开数据库连接SqlConnection:2.生成一个SqlCommand: ...
- 水晶报表13.x(Crystal Reports for VS2010)的安装部署经验
这两天搞安装包真心坎坷,一个问题接一个问题,先是为了实现自定义动作现啃vbs,后面又是安装过程老是报错: 各种搜索.各种尝试,总算搞掂,积累了些经验,分享一下. 首先CR for VS2010的所有东 ...
- 一个疑难杂症 IIS URL区分大小写(FF的自动变换URL问题)?
(II8 VS14 CTP3 Windows7 ASP.NET WEBFORM) 在我的印象里面,IIS的URL在一般情况下面是不分大小写的. 所以下面两个URL应该是一样的. http://loca ...
- Asp.net Mvc模块化开发系列(目录)
模块化开发是非常重要的,模块化开发是个系统性问题,为此我觉得有必须要写一个系列的文章才能基本说的清楚 那又为什么要写一个目录呢? 其一.是对我昨天承诺写一个系列新的文章的回应 其二.是先写出一个大纲, ...
- 查看Eclipse版本
点击Help->About Eclipse,在弹出的对话框下部有很多logo. 鼠标在logo上停留,会有提示,找出提示为Eclipse.org的那个logo,即为Eclipse的logo,点击 ...
- python3.4怎么连接mysql pymysql连接mysql数据库
本文介绍了python3 4连接mysql数据库的方法,在python3 4中使用原来python2 7的mysqldb已不能连接mysql数据库了,可以使用pymysql. 在python3.4 ...
- 如何改变 FMX ListView 颜色
需求:改变 ListView 颜色 适用:Firemonkey 任何平台 操作:Style 是改变控件外观最便捷的途径,ListView 也不例外,下面示范使用 StyleBook 来设定 ListV ...
- mysql乱码解决
在 /etc/my.cnf加上下面二句: skip-character-set-client-handshakecharacter-set-server = utf8