前言:
本人本地的項目:ssm+maven+bootstrap,雲服務器是阿里雲的Contos 7版本,如果你創建的雲服務器是window server,可以更換系統盤。
正題:
一、遠程連接linux工具:SecurityCRT
1.安裝
https://share.weiyun.com/9ef89212a5a08f13ea41c8fb3557984a,下載安裝即可。
2.連接服務器
輸入密碼
連接成功
二、文件上傳下載服務器:FTP
1.介紹
ftp的全稱是 File Transfer Protocol : 文件傳輸協議。 顧名思義,ftp就是用來我們把本地的文件傳輸到服務器上,從服務器上下載文件用的。
2.安裝
Linux上的ftp服務器有各種型號,我們會使用vsftpd,全稱是:very secure FTP daemon 非常安全的ftp后台程序。為了使得這個服務器可以使用還要做許多配合工作,比如創建用戶,配置端口,開放端口等。
2.1.安裝命令
yum install vsftpd -y
執行完之后,在最后看見Complete!就表示安裝成功。
2.2.查看服務器狀態
systemctl status vsftpd.service
2.3.關閉和啟動服務器
systemctl stop vsftpd.service //關閉 systemctl start vsftpd.service //啟動
2.4.檢查端口
netstat -anp|grep 21
3.ftp用戶
3.1.概念
要連接上 vsftpd 服務器需要為Linux創建專門的用戶。
3.2.用戶目錄
在Linux中,不同用戶是有不同目錄訪問權限的,所以首先創建一個目錄,作為這個ftp用戶所擁有的目錄。
mkdir -p /home/wwwroot/ftptest //創建目錄,-p 父目錄沒有強制創建
3.3.創建用戶
useradd -d /home/wwwroot/ftptest -g ftp -s /sbin/nologin ftptest
-g ftp 表示該用戶屬於ftp分組 (ftp分組是內置的,本來就存在,不需要自己創建)
-s /sbin/nologin 表示這個用戶不能用來登錄secureCRT這樣的客戶端。 這種不能登陸的用戶又叫做虛擬用戶
創建過程給出的警告信息是正常的,不用理會。
3.4.設置密碼
pass ftptest
4.配置用戶
4.1.去掉匿名登陸
默認情況下vsftpd服務器是允許匿名登陸的,這樣非常不安全,所以要把這個選項關閉掉。
vi /etc/vsftpd/vsftpd.conf
修改配置
anonymous_enable=YES //將YES改為NO
至於vi命令編輯文件,大家可以在網上搜。
4.2.限制用戶訪問
本教程中創建的ftptest用戶所擁有的目錄是 /home/wwwroot/ftptest,如果不做限制,那么使用ftptest登陸之后可以切換到其他敏感目錄去,比如切換到/usr目錄去,這樣就存在巨大的安全隱患。
為了規避這個隱患,需要限制ftptest用戶只能通過ftp訪問到 /home/wwwroot/ftptest 目錄以及子目錄。
vi /etc/vsftpd/vsftpd.conf
配置修改
#chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd.chroot_list //修改為/etc/vsftpd/chroot_list
chroot_list_enable=YES: 表示對用戶訪問進行限制
chroot_list_file=/etc/vsftpd/chroot_list 表示對chroot_list里面指定的用戶進行限制
4.3.用戶清單
在chroot_list中添加ftptest用戶
vi /etc/vsftpd/chroot_list
添加一行:ftptest
添加完之后,保存退出。
4.4.允許寫權限
vsftpd服務器是這樣的,一旦某個用戶被限制訪問了,那么默認情況下,該用戶的寫權限也被剝奪了。 這就導致ftp客戶端連接上服務器之后無法上傳文件。這個時候,就需要打開此用戶的寫權限
vi /etc/vsftpd/vsftpd.conf
在最后新增一行
allow_writeable_chroot=YES
修改完成之后,保存退出。
5.配置端口
vsftpd有兩種端口,一個是21端口,用來監聽客戶端連接請求的。 這個一般說來是固定的,就一直使用21端口。
另一種是,一旦獲取到請求之后,再專門用戶服務端和客戶端傳輸數據的端口。
本知識點就是用於指定第二種端口的獲取范圍
vi /etc/vsftpd/vsftpd.conf
在最后添加:
pasv_enable=YES pasv_min_port=30000 pasv_max_port=31000
這表示使用被動模式,用於傳輸數據的端口分配從30000-31000之間。
6.重啟vsftpd服務器
systemctl restart vsftpd.service
6.1.查看狀態
systemctl status vsftpd.service
7.開放端口
在阿里雲控制台中添加安全組
7.1.安全組
7.2.當前安全組預覽
7.3.添加端口
8.FTP客戶端工具:ftprush
https://share.weiyun.com/7a00fcc9453792324cfdbc4853803c29
下載安裝即可。
8.1.ftprush
打開ftprush.exe之后看到如圖所示的界面
8.2.連接
菜單->站點->快速連接對話框
主機地址:輸入服務器地址
用戶名: ftptest
密碼:xxx
8.3.連接成功界面
8.4.上傳下載
把右邊的內容拖到左邊,就是上傳,把左邊的內容拖到右邊,就是下載。
三、JDK安裝
1.安裝命令
yum -y install java-1.8.0-openjdk.x86_64
出現Complete!表示安裝成功
2.檢測
java -version
出現java版本表示jdk安裝成功
四、Mysql
1.下載
yum上mysql的資源有問題,所以不能僅僅之用yum。在使用yum之前還需要用其他命令獲取mysql社區版。
cd /temp wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm
2.安裝
yum install mysql mysql-server mysql-devel -y
3.啟動
systemctl start mysql.service
4.檢查端口
netstat -anp|grep 3306
5.設置密碼
mysqladmin -u root password admin
給root用戶配置密碼:admin
6.登陸驗證
mysql -uroot -padmin
登陸成功之后,輸入
show databases;
能出現下圖所示,表明root賬號創建成功
7.配置遠程登陸
本地項目的數據庫數據要上傳到雲服務器上,可以用mysql客戶端連接雲服務器上mysql.server。將本地的數據傳輸到雲上。
7.1.配置遠程登陸
mysql -uroot -padmin //登陸 use mysql; //打開mysql數據庫 update user set host='%' where user='root';//將root賬號的本地登陸改為所有IP都可以登陸
按Ctrl+c退出
重啟mysql
systemctl restart mysql.service
在阿里雲服務器上添加mysql端口的安全組
7.2.本地數據傳輸到雲數據庫上
連接雲數據庫
傳輸數據准備
傳輸數據:右鍵點擊本地待傳輸的數據庫-->選擇數據傳輸選項,按照下圖所示傳輸數據
五、Tomcat
1.安裝
yum上沒有tomcat的源,所以使用如下方式下載解壓,解壓后把tomcat移動到 /usr/local/tomcat7 目錄下方便以后訪問
cd /tmp wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.82/bin/apache-tomcat-7.0.82.tar.gz tar xzf apache-tomcat-7.0.82.tar.gz mv apache-tomcat-7.0.82 /usr/local/tomcat7
2.運行
/usr/local/tomcat7/bin/startup.sh
3.驗證
netstat -anp|grep 8080
如下圖所示,8080端口處於監聽狀態
4.查看啟動日記
tail -100f /usr/local/tomcat7/logs/catalina.out
-100表示看最后100行,f表示動態查看,一旦有更新的可以立即看見。
按Ctrl+c退出
在阿里雲服務器中添加8080端口的安全規則
5.解決啟動慢
安裝工具即可
yum -y install rng-tools //安裝 systemctl start rngd //啟動
六、部署項目
1.將本地項目打成war包
右鍵點擊項目-->選擇Explort選項,按照下面圖所示操作
配置打包文件存放目錄
2.上傳war包到雲服務器上
打開ftprush軟件,連接雲vsftpd.server
將本地war文件上傳到雲服務器上
3.將雲vsftpd.server的權限目錄中war文件移動到tomcat的webapps目錄下
mv /home/wwwroot/ftptest/zy.war /usr/local/tomcat7/webapps
4.啟動tomcat,解壓zy.war文件
/usr/local/tomcat7/bin/startup.sh
5.修改applicationContext.xml
vi /usr/local/tomcat7/webapps/zy/WEB-INF/classes/applicationContext.xml
將數據庫連接ip改為雲服務器外網ip,mysql密碼修改為雲數據庫的密碼
保存退出
6.修改tomcat的server.xml文件
vi /usr/local/tomcat7/conf/server.xml
在<host></host>標簽體中添加<Context docBase="zy" path="" reloadable="true" useHttpOnly="true"/>
保存退出
重啟tomcat
/usr/local/tomcat7/bin/shutdown.sh //關閉 /usr/local/tomcat7/bin/startup.sh //啟動
部署完成,開始測試項目
在本地瀏覽器中輸入:http://雲服務器外網ip:8080/
效果如下:
總結:linux Contos 7上部署javaweb項目,前五大項部署基本一致,最后一項部署要根據個人項目情況部署,本教程中,項目是將 http://ip:8080/與登陸頁綁定,將登陸頁作為啟動頁,其他項目可能不是這樣的,各種xml文件修改,每個項目都有不同修改,本教程是簡單的javaweb項目,沒有涉及復雜配置,一般項目都可以按照此教程操作即可部署成功。