1、 apt update # 获取最新资源包
2、 apt upgrade # 本机软件全部更新
3、 apt dist-upgrade # 本机系统软件更新
apt install apache2
systemctl start apache2 # 开启
systemctl stop apache2 # 关闭
systemctl restart apache2 # 重启
ufw allow 80 #防火墙开放80端口
打开浏览器并输入IP地址,看到Apache的默认信息页面即表示安装成功。
在/var/www/html/ 下面替换自己的网页文件即可。
卸载软件命令,如卸载apache
apt-get purge apache*
apt install mysql-server
mysql_secure_installation
在此过程中即可对数据库密码重置等一系列操作
注意:如何此过程没有出现设置root密码,跳过了。那么登录进去设置
mysql #无密码直接登录
mysql> use mysql;
mysql> select user,host,plugin from mysql.user;
+------------------+-----------+-----------------------+
| user | host | plugin |
+------------------+-----------+-----------------------+
| debian-sys-maint | localhost | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session | localhost | caching_sha2_password |
| mysql.sys | localhost | caching_sha2_password |
| root | localhost | auth_socket |
+------------------+-----------+-----------------------+
5 rows in set (0.00 sec)
#设置root密码并修改加密方式为mysql_native_password
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
#再将root用户的host修改为 % ,允许远程连接
mysql> update user set host='%' where user ='root';
#刷新生效
mysql> flush privileges;
#修改mysqld.cnf配置文件中bind-address为0.0.0.0
vim /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 0.0.0.0
#重启mysql
systemctl restart mysql
#查看防火墙状态
ufw status
#开放端口
ufw allow 3306
#开启或关闭防火墙
ufw enable
ufw disable
#cd到新建的mysql目录下
mkdir mysql
cd mysql
docker run -id \
-p 3306:3306 \
--name=d_mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:8.0
- 参数说明:
- **-p 3307:3306**:将容器的 3306 端口映射到宿主机的 3307 端口。
- **-v $PWD/conf:/etc/mysql/conf.d**:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。配置目录
- **-v $PWD/logs:/logs**:将主机当前目录下的 logs 目录挂载到容器的 /logs。日志目录
- **-v $PWD/data:/var/lib/mysql** :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。数据目录
- **-e MYSQL_ROOT_PASSWORD=123456:**初始化 root 用户的密码。
#进入mysql容器
docker exec -it d_mysql /bin/bash
#登录mysql,密码就是刚刚设置的123456
mysql -uroot -p
#下面开始设置远程root密码并运行远程访问
mysql> use mysql;
mysql> alter user 'root'@'%' identified with mysql_native_password by '123456';
mysql> flush privileges;
*** 注意:*** 如果登录报错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 那么使用 mysql -h 127.0.0.1 -p 先登录一下生成mysqld.sock即可。或者退出到主机中重启该容器再进入试一下
navicat远程连接mysql就成功了。
到此可以远程登录mysql了!
apt install php
php -v #显示安装版本信息
随后在/var/www/html 下新建一个index.php文件,内容如下:
<?php
phpinfo();
?>
打开浏览器http://ip/index.php 页面输出php信息说明PHP安装成功。
apt install phpmyadmin
ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
然后打开浏览器输入:IP地址/phpmyadmin 即可看到phpmyadmin的主页面
ubuntu18,20版本默认防火墙配置工具是ufw,主要为简化 iptables 防火墙配置而开发。
1.执行apt update命令更新包列表。
apt update
2.执行apt install ufw命令下载ufw。
apt install ufw
1.执行ufw status命令查看防火墙状态,默认关闭。
ufw status
Status: inactive
执行ufw enable命令开启防火墙。
ufw enable
执行ufw disable命令关闭防火墙。
ufw disable
1.执行ufw reload命令重启防火墙。
ufw reload
执行ufw allow 22命令开放指定端口,这里以SSH为例。
ufw allow 22
也可以允许从特定主机或网络访问端口,类似于网络上的高级ACL中的rule。
ufw allow proto tcp from 192.168.100.0/24 to any port 22
执行ufw deny 22命令关闭指定端口,这里以SSH为例。
ufw deny 22
也可以拒绝从特定主机或网络访问端口,类似于网络上的高级ACL中的rule。
ufw deny proto tcp from 192.168.100.0/24 to any port 22
执行ufw status 命令会显示相关的端口信息
ufw status