❶ 怎麼在linux搭建web伺服器
1.開始說明
本教程中使用的IP地址是192.168.0.100,主機名稱為Server1.example.com 這些設置可能會有所不同,你需要根據不同情況進行修改。
CentOS 6.2下安裝MySQL
2.開始安裝MySQL5
首先我們應該先用下面的命令安裝MySQL:
yum install mysql mysql-server
然後我們需要創建MySQL系統的啟動鍵鏈接啟動MySQL伺服器,這樣以便於MySQL在系統啟動時自動啟動
chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start
為MySQL root帳戶設置密碼:
mysql_secure_installation
會出現下面的一系列提示:
root@server1 ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user. If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] <-- ENTER
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
proction environment.
Remove anonymous users? [Y/n] <-- ENTER
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] <-- ENTER
... Success!
By default, MySQL comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a proction environment.
Remove test database and access to it? [Y/n] <-- ENTER
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <-- ENTER
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
[root@server1 ~]#
CentOS 6.2下安裝Apache
3.安裝阿帕奇2
Apache2的是作為一個CentOS的軟體包,因此我們可以直接用下面命令安裝它:
yum install httpd
現在配置系統在引導時啟動Apache
chkconfig --levels 235 httpd on
並啟動Apache
/etc/init.d/httpd start
現在,您的瀏覽器到http://192.168.0.100,你應該看到Apache2的測試頁:
Apache 2測試網頁
Apache的默認文檔根目錄是在CentOS上的/var/www/html 目錄 ,配置文件是/etc/httpd/conf/httpd.conf。配置存儲在的/etc/httpd/conf.d/目錄。
4.安裝php5
我們可以用下面的命令來安裝PHP5
yum install php
安裝完需要重啟
/etc/init.d/httpd restart
CentOS 6.2下安裝PHP5
5.我們可以安裝PHP5和Apache的PHP5的模塊如下:
默認網站的文件根目錄是在/srv/www/html中。現在我們將在該目錄中創建一個小型PHP文件(info.php的)在瀏覽器中調用它。該文件將顯示很多關於我們的PHP安裝,如安裝的PHP版本和有用的一些細節。
vi /var/www/html/info.php
修改細節
現在,我們可以用瀏覽器訪問例如http://192.168.0.100/info.php文件
PHP頁面
正如你所看到的,PHP5的工作,它通過Apache 2.0的處理程序,在伺服器API線。如果你繼續向下滾動,你會看到所有在PHP5中已經啟用的模塊。MySQL是沒有列出,這意味著我們沒有在PHP5支持MySQL。
6.PHP5獲得MySOL的支持
讓PHP在MySQL中獲得支持,我們可以安裝的php-mysql軟體包。安裝一些其他的PHP5模塊,以及您可能需要的應用程序,這是一個好主意:
yum search php
還安裝需要安裝的
yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc
現在重新啟動Apache2的:
/etc/init.d/httpd restart
現在,重載http://192.168.0.100/info.php在您的瀏覽器,並再次向下滾動到模塊部分。現在,你應該找到許多新的模塊,包括MySQL模塊:
MySQL頁面
CentOS 6.2下安裝phpMyAdmin
7.安裝phpMyAdmin
phpMyAdmin是一個網路介面,通過它可以管理你的MySQL資料庫。
首先,我們使CentOS系統RPMForge軟體庫的phpMyAdmin,而不是官方的CentOS 6.2庫:
所以需要導入RPMForge的GPG密鑰:
rpm --import
x86_64系統:
yum install
在i386系統:
yum install
安裝phpmyadmin
yum install phpmyadmin
現在我們可以設置phpMyAdmin,了我們可以改變Apache的配置來讓phpMyAdmin不僅僅只能從localhost登錄。
vi /etc/httpd/conf.d/phpmyadmin.conf
配置
下一步,我們從HTTP改變的phpMyAdmin的cookie來身份驗證:
vi /usr/share/phpmyadmin/config.inc.php
修改身份驗證
重啟阿帕奇
/etc/init.d/httpd restart
在地址欄輸入http://192.168.0.100/phpMyAdmin/:你就可以訪問phpMyAdmin了。
phpmyadmin頁面
CentOS可以得到RHEL的所有功能,甚至是更好的軟體。但CentOS並不向用戶提供商業支持,當然也不負上任何商業責任。
如果你要將你的RHEL轉到CentOS上,因為不希望為RHEL升級而付費。當然,你必須有豐富linux使用經驗,因此RHEL的商業技術支持對你來說並不重要。但如果你是單純的業務型企業,那麼還是建議你選購RHEL軟體並購買相應服務。這樣可以節省你的IT管理費用,並可得到專業服務。
❷ linux伺服器怎麼搭建p
最近要涉及到伺服器的部署,用linux,所以新潮熱血,學了點linux伺服器的部署,配置,搭建,這里總結一下,不為別的,反正是日後留著來回顧一下就夠了,回憶一下大體步驟:
准備食材:
虛擬機:VMware_workstation_full_12.5.2
linux鏡像文件:ubuntu-14.04.1-desktop-amd64.iso
jdk1.8:jdk-8u11-linux-x64.tar.gz
tomcat:apache-tomcat-8.0.39-windows-x64.zip
首先,我需要一台虛擬機來構建自己的linux伺服器,於是搜索網上下載了VMvare,有很多,下了個最新的試試,感覺不錯,然後,再下個linux鏡像文件,在網上搜索下,虛擬機的安裝教程,一步一步的裝上,這里用了兩三天,主要是軟體問題,找了好多路子,但回頭一看,就用網上什麼系統之家,腳本之家,或者推薦的就行,從CSDN下載的一個也用不了,浪費了好多積分,讓我對它失望了一點,本來以為它是萬能的,不過沒事,路子多。也搜了好多文章,遇到點問題,如:系統不兼容,版本不匹配啥的,反正不好使就從來,一步一步,最後可算安成了,初次欣喜。
然後就是接下來重要的了,linux系統有了,可以先下個linux命令文檔,先敲一敲,因為我主要就是部署一下,也不用太多的命令,所以就學幾頁就不往下看了,以後有機會可以繼續看看。
熗鍋准備:先安裝個jdk,用得1.8,最新的,不過版本不重要,除非項目需要的jdk版本高,安裝好的linux很全,裡面的瀏覽器就可以下,注意是linux for jdk,要不然可不行。然後新建一個java文件夾在根目錄的(這里的根目錄要通過cd 再接/usr/進入,而不是home/xxx,可以通過pwd查看當前所在路徑)/usr/下,用來放置解壓後的jdk文件,這里因為後綴名是tar.gz所以直接用tar -xf 命令解壓,命令都是最簡單的,具體的中間-xf可以網路一下,不做詳解。
切菜:配置JDK的環境變數,這里用了點時間,因為感覺這個有點別扭,跟windows下不一樣,配置環境變數需要注意,自己的用戶可能沒有許可權,需要使用root許可權,而我剛開始許可權密碼不知道,就通過sudo passwd設置一下初始密碼,然後通過su root輸入密碼才進去的,當然密碼是看不見的。進去之後,到/etc/文件夾找到profile文件,通過文件編輯命令vi profile在文件的末尾加上變數參數:
JAVA_HOME=/usr/java/jdk1.8.0_11
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
這里是有不同,不用懷疑,比如說那個PATH,加進去之後:wq保存退出,然後可以查看一下,echo $PATH查看PATH,這時是沒有配上的,需要命令:source profile激活一下,把環境變數保存在profile里需要每次進來都要通過source激活一下,如果想只看不編輯文件的話可以輸入cat+文件名來查看。
炒菜:這下可以把下好的tomcat解壓到自定義的一個文件夾里了,我的是home/pengyy/tomcat/下,到config文件里修改一下埠號,vi命令編輯server.xml,裡面後來啟動的時候8005那個埠有沖突,我直接改了8088,然後又把http請求的埠改成了8001,OK,tomcat配置完成,沒什麼過多的步驟。
上菜:將一個完成的web項目打成war包,放在tomcat下的webapps里解壓,網上說,tomcat啟動情況下,放進去可以自動解壓,不過我的沒發生,不知道為啥,所以就人工解壓了,新建個文件夾,和項目根路徑相同,然後用jar -xvf xxx.war 命令解壓,不過如果報jar命令沒有找到,則是因為jdk環境變數,沒有激活的原因,這個地方我卡了好久,因為jar命令是基於jdk里的,除非你用unzip命令解壓,unzip命令的好處可以解壓並新建文件夾。不過我用著不好使,所以就用jar了,是麻煩了一點。
開吃:進入到tomcat下的bin目錄,輸入命令啟動:./start.sh&,終止命令是./shutdown.sh&,按TAB鍵時可以提示的哈,其實(./)是當前路徑的意思,可以不加&,如果加了,啟動或終止完事需要按ctrl+c返回到命令行。這樣項目就啟動了,可以查看日誌,去tomcat的logs目錄底下查看catalina.out日誌文件,可以通過cat查看文件命令,也可以tail -f(倒數多少行可以為數字) catalina.out來查看。如果埠號被佔用,可以用命令lsof -i:埠號 來查看埠號被佔用的進程號,或者停止該進程,或者修改tomcat的埠號都可以。而當你不確定是否終止了哪個項目的時候,可以通過輸入命令ps -ef|grep java來查看一下是否有在運行的項目,通過kill -9 進程號就可以幹掉哪個正在運行的項目了。最後通過ifconfig或者ip命令獲取虛擬機的Ip地址,在主機上通過ip+埠號+項目根路徑的方式訪問即可。
吃後感:感覺已經很詳細了,雖然有點啰嗦,但因為第一次寫,不僅是為了回顧一下,也是為了練練自己的總結能力,如果有太多錯誤的地方請及時指出,我會多加修改的,通過這次學習,感覺自己得到的好處真的不少,以前對這真是一竅不通,但,從安裝到遇到問題,到解決,到最後成功運行,幫助自己了解了太多的細節和不懂的地方,也許不是那麼精通,但已經比以前進步太多了。希望所有人都不只是去看一個東西,要多實踐才能往前走得更遠,加油!小小程序員。
附加甜點(命令):
cat(查看文本),
vi編輯文本命令:a(在字元右側插入),i(在字元左側插入),:wq,ZZ(保存退出),:q,q!(不保存退出) :w(保存繼續編輯),ctrl+F(翻頁),/字元(向後查找),?字元(向前查找),:!bash(退出,執行命令,exit返回繼續編輯),x(刪除單個字元),dd(刪除正行),u(回退修改)
mv file fileFolder(移動文件)
cp file fileFolder(復制文件)
rm -rf/f file(刪除文件夾/文件)
ls(查看文件目錄)
ls -a(查看所有文件包括隱藏)
ll(列出所有文件包括許可權等內容)
❸ Linux怎麼搭建Web伺服器
Linux怎麼搭建Web伺服器
1,基於apache的web伺服器基礎搭建:
(1)實驗環境:一台ip為192.168.10.10的rhel5.9主機作為web伺服器,一台ip為192.168.10.15的win7主機作為測試機
(2)查看服務主機軟體是否安裝
[root@ser1 ~]# rpm -q httpd httpd-manual httpd-devel
package httpd is not installed
package httpd-manual is not installed
package httpd-devel is not installed
(3)安裝軟體包
[root@ser1 ~]# yum install -y httpd httpd-manual httpd-devel
(4)啟動服務
[root@ser1 ~]# service httpd start
啟動httpd: [確定]
[root@ser1 ~]# chkconfig httpd on
(5)在win7上測試,無網頁預設下顯示紅帽測試頁
<報錯頁面存放位置/var/www/error/noindex.html>
.jpg
(6)打開配置文件
[root@ser1 ~]# vim /etc/httpd/conf/httpd.conf
可獲得以下重要欄位:
目錄設置:
<Directory 目錄> .. .. </Directory>
訪問位置設置:
<LocationURL> .. .. </Location>
虛擬主機設置:
<VirtualHost 監聽地址> .. .. </VirtualHost>
常用的全局設置參數:
ServerName本站點的FQDN名稱
DocumentRoot網頁文檔的根目錄:預設/var/www/html/
DirectoryIndex默認索引頁/首頁文件:一般設為index.html index.php
ErrorLog錯誤日誌文件的位置
CustomLog 訪問日誌文件的位置
Listen 監聽服務的IP地址、埠號
ServerRoot 服務目錄:/etc/httpd/
Timeout網路連接超時,默認 300 秒
KeepAlive是否保持連接,可選On或Off
MaxKeepAliveRequests每次連接最多處理的請求數
KeepAliveTimeout保持連接的超時時限
Include 可包含其他子配置文件: /etc/httpd/conf.d/
(7)創建測試網頁
[root@ser1 ~]# vim /var/www/html/index.html
<h1>
This is a test page !!!
</h1>
~
(8)win7下測試,主頁變為測試網頁
.jpg
2,基於apache的web伺服器的訪問控制:
(1)web服務的地址限制
I,rder 配置項,定義控制順序
allow,deny 先允許後拒絕,預設拒絕所有;沖突時,拒絕生效;allow不設置,拒絕所有
deny,allow 先拒絕後允許,預設允許所有;沖突時,允許生效;deny不設置,允許所有
II,Allow/Deny from 配置項,設置許可權
Allow from 地址1 地址2 .. ..
Deny from 地址1 地址2 .. ..
配置如下:
[root@ser1 ~]# vim /etc/httpd/conf/httpd.conf
331 #
332 Orderallow,deny
333 Allowfrom 192.168.20.0/24
334
335 </Directory>
[root@ser1 ~]# service httpd restart……重啟服務
停止httpd: [確定]
啟動httpd: [確定]
在win7上測試,測試完成並還原配置文件:
.jpg
看過「 Linux怎麼搭建Web伺服器 」的人還看了:
1.win7如何搭建Web伺服器
2.基於WebRTC的瀏覽器端Web伺服器的研究論文
3.LINUX下配置管理APACHE伺服器的方法
4.如何安全設置Apache Web伺服器
5.全國網路技術水平考試二級實踐指導書
❹ linux怎麼搭建ftp伺服器
FTP 是文件傳輸協議(File Transfer Protocol)的縮寫。顧名思義,FTP用於計算機之間通過網路進行文件傳輸。你可以通過FTP在計算機賬戶間進行文件傳輸,也可以在賬戶和桌面計算機之間傳輸文件,或者訪問在線軟體歸檔。但是,需要注意的是多數的FTP站點的使用率非常高,可能需要多次重連才能連接上。 今天來說一下在RHEL5下使用VSftpd來搭建ftp伺服器,在搭建之前首先要考慮自己的工作環境,我搭建ftp干什麼,公司的具體要求是什麼,然後再根據公司的需求來具體實施。下面是搭建的具體實驗步驟: 一、首先確定系統中已經安裝了VSftpd軟體包,可以使用如下命令來查看並安裝: liwei@linux# rpm -qagrep vsftpd (如果有的話執行第二條就行了,若沒安裝,可以使用如下命令來安裝) liwei@linux# mount /dev/cdrom /media //掛載光碟到系統中 liwei@linux# rpm -vih /media/Server/vsftpd-版本號 //安裝VSftpd 二、安裝好VSftpd軟體包後,然後就是給伺服器配置一個靜態IP地址,當然動態也可以,但一般伺服器最好使用靜態IP。配置IP地址的方法如下,我以配置192.168.0.1地址為例: liwei@linux# vi /etc/sysconfig/network-scritps/ifcfg-eth0 在打開的配置文件中修改: 復制代碼代碼如下: DEVICE=eth0 BOOTPROTO=static HAWADDR=00:0C:29:A2:8B:B8 ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 三、配置好IP地址後,然後就可以根據你自己的要求來修改vsftpd的配置文件來達到你的目標了,vsftpd的主配置文件為/etc/vsftpd/vsftpd.conf。下面用幾個例子來說明一下vsftpd的各個配置選項的作用。 1.匿名用戶配置: 在vsftpd.conf配置文件中,默認是允許匿名用戶登錄FTP伺服器的,但不允許上傳文件、不允許在伺服器上創建目錄,我們可以修改以下一些配置項來達到自己的要求: 復制代碼代碼如下: anonymous_enable=YES //接受匿名用戶 no_anon_password=YES //匿名用戶登錄時不詢問口令 anon_root=目錄路徑 //匿名用戶登錄後所在的位置,可以根據自己的實際需求來修改 write_enable=YES //可以上傳(全局控制) file_open_mode=0666 //上傳文件的許可權,配合umask使用 anon_upload_enable=NO //匿名用戶可以上傳 anon_mkdir_write_enable=YES //匿名用戶可以建立目錄 anon_other_write_enable=YES //匿名用戶可以重名名、刪除等許可權 anon_world_readable_only=YES //如果設為YES,匿名用戶登入者會被允許下載可閱讀的文檔 chown_uploads=YES //所有匿名上傳的文件的所屬用戶將會被更改為chown_username chown_username=user //匿名上傳文件所屬用戶名 除了以上這些匿名用戶的選項外我們還可以添加一些設置FTP伺服器的公共選項,通過這些選項可以為FTP伺服器設置一些不同的歡迎信息。 復制代碼代碼如下: ftpd_banner=Welcom to my FTP Server!!! //登錄時顯示的歡迎信息 dirmessage_enable=YES //允許為目錄配置顯示信息,顯示每個目錄下面message_file文件的內容 setproctitle_enable=YES //顯示會話狀態信息 下面來舉個例子來說明一下匿名用戶的應用: 為了公司的員工工作方便,公司決定搭建一台FTP伺服器,要達到的功能如下: 1.允許公司的任何員工把自己的一些文檔傳上FTP伺服器上保存起來以便下次使用, 2.允許員工自己創建目錄 3.員工登錄成功後顯示歡迎信息 如果要達到以上的要求只需要在vsftpd.conf配置文件中修改以下選項就OK了,如果默認沒有一些選項,可以自己手動添加: 復制代碼代碼如下: anonymous_enable=YES write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES ftpd_banner=Welcom to my FTP Server!!! 注意:如果只設置了anon_upload_enable=YES,但選項write_enabl未設置(或者設置成了NO),則匿名用戶仍然不能上傳文件。還有別忘記了修改FTP所處的文件夾的許可權。 修改完以上配置文件後,使用命令service vsftpd restart重啟一下vsftpd服務然後測試就OK了,其實上面這個例子很不安全,我只是舉個例子,如果實際中使用,可以使用下面講到的另兩種方法都可以。 2.本地用戶配置: 復制代碼代碼如下: local_enable=YES //啟用本地用戶 local_umask=022 //本地用戶上傳的文件的許可權,可以參考linux許可權部分來了解 local_root=目錄路徑 //本地用戶登錄FTP伺服器後所處的目錄 chroot_local_user=YES //限制本地用戶的根目錄為自己的主目錄 chroot_list_enable=YES //如果啟動這項功能,則所有列在chroot_list_file之中的使用者都不能更改根目錄 chroot_list_file=限制的用戶所處的文件路徑 在FTP伺服器上通常會有很多的本地用戶,那麼有時候我們希望一些用戶可以登錄FTP伺服器,而有的用戶我們不希望他們登錄,遇到這種情況該怎麼解決呢?可以使用如下選項來實現些功能: 復制代碼代碼如下: userlist_enable=YES //啟用userlist功能模塊 userlist_deny=YES //拒絕userlist文件中列出的用戶登錄FTP伺服器 userlist_file=userlist文件的的路徑 以上選項的意思就是我們假如不想讓一部分人登錄FTP伺服器,那麼我們可以寫一個文件把這些用戶加入到這個文件中去,然後把上面這個功能打開然後在userlist_file選項那指向這個文件的所在地,這樣這個文件中的用戶就不能登錄FTP伺服器了。相反假如我們userlist_deny設置成NO的話,意思就是userlist_file指向的那個文件里的用戶可以登錄FTP伺服器,其它用戶則不能登錄FTP伺服器。 本地用戶的應用比較簡單,只要系統中可以登錄的用戶要登錄FTP伺服器,直接輸入系統的用戶名和密碼就可以登錄了,默認登錄後是在自己的家目錄里,也就是/home/用戶文件夾里。許可權的控制就是修改這個目錄的許可權來控制就OK了。如果想控制某些用戶禁止登錄,則可以按照上面的userlist功能來進行限制就行了。 除了以上匿名用戶和本地用戶外的一些參數外還有網路和連接參數及下面會提到的日誌功能配置。 四、網路和連接參數配置, 下面是一些常用的網路和連接參數: 復制代碼代碼如下: max_clients=1000 //可接受的最大連接數,可以根據自己的實際情況來修改 max_per_ip=5 //每個IP地址的最大連接數,可以根據自己的實際情況來修改 anon_max_rate=51200 //匿名用戶的帶寬(b/s) local_max_rate=5120000 //本地用戶的帶寬(b/s) idle_session_timeout=600 //空閑連接超時時間 data_connection_timeout=120 //數據傳輸超時時間 ACCEPT_TIMEOUT=60 //PAVS請求超時時間 connect_timeout=60 //PORT模式連接超時時間 connect_from_port_20=YES //使用標準的20埠來連接FTP listen_address=地址或網段 //綁定到某個IP或網段,其他IP不能訪問該FTP listen_port=2121 //綁定到某個埠 ftp_data_port=2020 //數據傳輸埠 pasv_max_port=0 //PASV連接模式時可以使用port范圍的上界,0表示任意。 pasv_min_port=0 //PASV連接模式時可以使用port范圍的下界,0表示任意。 以上各個選項後都有說明,有需要的可以自己根據自己的情況來添加,這里就不再詳述了。其中PORT模式是FTP工作模式中的主動模式,PASV模式是FTP工作模式中的被動模式。 五、日誌功能配置 vsftpd可啟用日誌功能,這樣,文件的上傳與下載信息將被完整地記錄在xferlog_file選項所設置的日誌文件中,設置日誌功能的選項如下: 復制代碼代碼如下: xferlog_enable=YES //開啟日誌功能 xferlog_file=文件路徑 //日誌文件的存放位置 xferlog_std_format=YES //使用標准格式記錄日誌 vsftpd的專用日誌模式配置選項: 復制代碼代碼如下: al_log_enable=YES //採用vsftpd自己專用的日誌記錄方式 log_ftp_enable=YES //記錄所有的FTP命令日誌 vsftpd_log_file=文件路徑 //指定vsftpd日誌文件的位置 當以上兩種日誌功能都設置為NO時,還可以使用系統日誌來記錄FTP的日誌,設置選項如下: syslog_enable=YES //啟用後,默認的日誌寫入到/var/log/messages里 雖然可以使用這種方式來記錄FTP日誌,但是推薦使用最上面的兩種,因為這樣查看日誌時候比較清楚,容易分析日誌。 六、其他常用選項設置 復制代碼代碼如下: ascii_upload_enable=YES //用ASCII模式上傳, ascii_download_enable=YES //用ASCII模式下載 dirmessage_enable=YES //設置每個子目錄的歡迎信息。 banner_file=文件路徑 //設置歡迎信息的文件 ls_recurse_enable=YES //允許用戶使用ls -R命令 pam_service_name=vsftpd //定義PAM使用的名稱,默認為vsftpd guest_enable=YES //將所有的非匿名用戶都視為guest,即啟用虛擬用戶 guest_username=virtual //定義guest的使用者名稱
❺ Linux怎麼搭建Web伺服器
Linux系統使用AMH就可以簡單方便的搭建web伺服器
一、使用xshell登錄linux伺服器
至此,在linux下的web伺服器已經安裝完成
❻ 如何搭建一個linux伺服器
在開發過程中,必然會出現多人同時工作、協著的情況,在嵌入式開發項目中更為平常,這樣可以加快項目周期,為產品上市佔得時間先機。目前,使用Linux作為開發產品的操作系統情況越來越多,使用越來越廣泛。為了交叉編譯,為了最接近開發目標,我們一般都會自己搭建一台Linux開發伺服器。Linux開發伺服器一些常用的功能必須支持,比如Samba、nfs、tftp、httpd等。
首先我們需要選擇合適的Linux操作系統作為伺服器的系統,推薦使用Fedora8、Fedora10等,筆者在長期使用的過程中覺得比較穩定吧!如何安裝該操作系統就不多說了。 裝好系統後,需要增加Linux OS用戶,可以使用命令#adser XXX;增加XXX用戶,
❼ linux怎麼搭建ftp伺服器
第一步:在 Ubuntu 中安裝 VSFTPD 伺服器
首先,我們需要更新系統安裝包列表,然後像下面這樣安裝 VSFTPD 二進制包:
$ sudo apt-get update
$ sudo apt-get install vsftpd
一旦安裝完成,初始情況下服務被禁用。因此,我們需要手動開啟服務,同時,啟動它使得在下次開機時能夠自動開啟服務:
------------- On SystemD -------------
# systemctl start vsftpd
# systemctl enable vsftpd
------------- On SysVInit -------------
# service vsftpd start
# chkconfig --level 35 vsftpd on
接下來,如果你在伺服器上啟用了 UFW 防火牆(默認情況下不啟用),那麼需要打開埠 20 和 21 —— FTP 守護進程正在監聽它們——從而才能允許從遠程機器訪問 FTP 服務,然後,像下面這樣添加新的防火牆規則:
$ sudo ufw allow 20/tcp
$ sudo ufw allow 21/tcp
$ sudo ufw status
第二步:在 Ubuntu 中配置並保護 VSFTPD 伺服器
讓我們進行一些配置來設置和保護 FTP 伺服器。首先,我們像下面這樣創建一個原始配置文件 /etc/vsftpd/vsftpd.conf 的備份文件:
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
接下來,打開 vsftpd 配置文件。
$ sudo vi /etc/vsftpd.conf
OR
$ sudo nano /etc/vsftpd.conf
把下面的這些選項添加/改成所展示的值:
anonymous_enable=NO # 關閉匿名登錄
local_enable=YES # 允許本地用戶登錄
write_enable=YES # 啟用可以修改文件的 FTP 命令
local_umask=022 # 本地用戶創建文件的 umask 值
dirmessage_enable=YES # 當用戶第一次進入新目錄時顯示提示消息
xferlog_enable=YES # 一個存有詳細的上傳和下載信息的日誌文件
connect_from_port_20=YES # 在伺服器上針對 PORT 類型的連接使用埠 20(FTP 數據)
xferlog_std_format=YES # 保持標准日誌文件格式
listen=NO # 阻止 vsftpd 在獨立模式下運行
listen_ipv6=YES # vsftpd 將監聽 ipv6 而不是 IPv4,你可以根據你的網路情況設置
pam_service_name=vsftpd # vsftpd 將使用的 PAM 驗證設備的名字
userlist_enable=YES # 允許 vsftpd 載入用戶名字列表
tcp_wrappers=YES # 打開 tcp 包裝器
現在,配置 VSFTPD ,基於用戶列表文件/etc/vsftpd.userlist 來允許或拒絕用戶訪問 FTP。
注意,在默認情況下,如果通過userlist_enable=YES 啟用了用戶列表,且設置userlist_deny=YES 時,那麼,用戶列表文件/etc/vsftpd.userlist 中的用戶是不能登錄訪問的。
但是,選項userlist_deny=NO 則反轉了默認設置,這種情況下只有用戶名被明確列出在/etc/vsftpd.userlist 中的用戶才允許登錄到 FTP 伺服器。
userlist_enable=YES # vsftpd 將會從所給的用戶列表文件中載入用戶名字列表
userlist_file=/etc/vsftpd.userlist # 存儲用戶名字的列表
userlist_deny=NO
重要的是,當用戶登錄 FTP 伺服器以後,他們將進入 chrooted 環境,即當在 FTP 會話時,其 root 目錄將是其 home 目錄。
接下來,我們來看一看兩種可能的途徑來設置 chrooted(本地 root)目錄,正如下面所展示的。
這時,讓我們添加/修改/取消這兩個選項來將 FTP 用戶限制在其 home 目錄
chroot_local_user=YES
allow_writeable_chroot=YES
選項chroot_local_user=YES 意味著本地用戶將進入 chroot 環境,當登錄以後默認情況下是其 home 目錄。
並且我們要知道,默認情況下,出於安全原因,VSFTPD 不允許 chroot 目錄具有可寫許可權。然而,我們可以通過選項 allow_writeable_chroot=YES 來改變這個設置
保存文件然後關閉。現在我們需要重啟 VSFTPD 服務從而使上面的這些更改生效:
------------- On SystemD -------------
# systemctl restart vsftpd
------------- On SysVInit -------------
# service vsftpd restart
第三步:在 Ubuntu 上測試 VsFTP 伺服器
現在,我們通過使用下面展示的 useradd 命令創建一個 FTP 用戶來測試 FTP 伺服器:
$ sudo useradd -m -c "Aaron Kili, Contributor" -s /bin/bash aaronkilik
$ sudo passwd aaronkilik
然後,我們需要像下面這樣使用 echo 命令和 tee 命令來明確地列出文件/etc/vsftpd.userlist 中的用戶 aaronkilik:
$ echo "aaronkilik" | sudo tee -a /etc/vsftpd.userlist
$ cat /etc/vsftpd.userlist
現在,是時候來測試上面的配置是否具有我們想要的功能了。我們首先測試匿名登錄;我們可以從下面的輸出中很清楚的看到,在這個 FTP 伺服器中是不允許匿名登錄的:
# ftp 192.168.56.102
Connected to 192.168.56.102 (192.168.56.102).
220 Welcome to TecMint.com FTP service.
Name (192.168.56.102:aaronkilik) : anonymous
530 Permission denied.
Login failed.
ftp> bye
221 Goodbye.
接下來,我們將測試,如果用戶的名字沒有在文件/etc/vsftpd.userlist 中,是否能夠登錄。從下面的輸出中,我們看到,這是不可以的:
# ftp 192.168.56.102
Connected to 192.168.56.102 (192.168.56.102).
220 Welcome to TecMint.com FTP service.
Name (192.168.56.10:root) : user1
530 Permission denied.
Login failed.
ftp> bye
221 Goodbye.
現在,我們將進行最後一項測試,來確定列在文件/etc/vsftpd.userlist 文件中的用戶登錄以後,是否實際處於 home 目錄。從下面的輸出中可知,是這樣的:
# ftp 192.168.56.102
Connected to 192.168.56.102 (192.168.56.102).
220 Welcome to TecMint.com FTP service.
Name (192.168.56.102:aaronkilik) : aaronkilik
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
在 Ubuntu 中確認 FTP 登錄
警告:設置選項allow_writeable_chroot=YES 是很危險的,特別是如果用戶具有上傳許可權,或者可以 shell 訪問的時候,很可能會出現安全問題。只有當你確切的知道你在做什麼的時候,才可以使用這個選項。
我們需要注意,這些安全問題不僅會影響到 VSFTPD,也會影響讓本地用戶進入 chroot 環境的 FTP daemon。
因為這些原因,在下一步中,我將闡述一個更安全的方法,來幫助用戶設置一個非可寫本地 root 目錄。
第四步:在 Ubuntu 中配置 FTP 用戶的 Home 目錄
現在,再次打開 VSFTPD 配置文件。
$ sudo vi /etc/vsftpd.conf
OR
$ sudo nano /etc/vsftpd.conf
然後像下面這樣用# 把不安全選項注釋了:
#allow_writeable_chroot=YES
接下來,為用戶創建一個替代的本地 root 目錄(aaronkilik,你的可能和這不一樣),然後設置目錄許可權,取消其他所有用戶對此目錄的寫入許可權:
$ sudo mkdir /home/aaronkilik/ftp
$ sudo chown nobody:nogroup /home/aaronkilik/ftp
$ sudo chmod a-w /home/aaronkilik/ftp
然後,在本地 root 目錄下創建一個具有合適許可權的目錄,用戶將在這兒存儲文件:
$ sudo mkdir /home/aaronkilik/ftp/files
$ sudo chown -R aaronkilk:aaronkilik /home/aaronkilik/ftp/files
$ sudo chmod -R 0770 /home/aaronkilik/ftp/files/
之後,將 VSFTPD 配置文件中的下面這些選項添加/修改為相應的值:
user_sub_token=$USER # 在本地 root 目錄中插入用戶名
local_root=/home/$USER/ftp # 定義各個用戶的本地 root 目錄
保存文件並關閉。然後重啟 VSFTPD 服務來使上面的設置生效:
------------- On SystemD -------------
# systemctl restart vsftpd
------------- On SysVInit -------------
# service vsftpd restart
現在,讓我們來最後檢查一下,確保用戶的本地 root 目錄是我們在他的 Home 目錄中創建的 FTP 目錄。
# ftp 192.168.56.102
Connected to 192.168.56.102 (192.168.56.102).
220 Welcome to TecMint.com FTP service.
Name (192.168.56.10:aaronkilik) : aaronkilik
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
建議你看下這篇文檔http://www.linuxprobe.com/ubuntu-ftp-service.html,我覺得挺詳細的
❽ linux怎麼搭建ftp伺服器
vsftpd是一款在Linux發行版中最受推崇的FTP伺服器程序。特點是小巧輕快,安全易用。並且是一個完全免費開放源碼的ftp軟體方法/步驟1、用在線安裝 yum install vsftpd pam* db4*-y使用命令將vsftp配置為系統服務 chkconfig --level 35 vsftpd on2、配置vsftpd服務的宿主 useradd vsftpdadmin -s /sbin/nologin -M 這個vsftpdadmin只是用來替換root的,並不需要登錄3、建立ftp虛擬宿主帳戶 useradd vsftpuser -s /sbin/nologin -M 這ftpuser只個虛擬帳戶的宿主,本身是不用登錄的4、配置vsftpd.conf 配置之前要先備份一下原來的 vi /etc/vsftpd/vsftpd.conf anonymous_enable=YES -- anonymous_enable=NO //不允許匿名用戶訪問,默認是允許。chroot_list_enable=YES -- chroot_list_enable=YES //不允許FTP用戶離開自己主目錄 增加 #設定虛擬用戶個人Vsftp的配置文件存放路徑。也就是說,這個被指定的目錄里,將存放每個Vsftp虛擬用戶個性的配置文件,一個需要注意的地方就是這些配置文件名必須和虛擬用戶名相同。 user_config_dir=/etc/vsftpd/vconf/userlocal#這一步非常重要,要記住這一步。一會要根據這個配置新建文件夾 #修改埠號 ftp_data_port=4040 reverse_lookup_enable=NO pasv_enable=yes pasv_min_port=48790 pasv_max_port=48800 listen_port=48796 #埠可以根據你自己實際情況配置,也可以用默認埠。但是為了安全考慮根據自己實際情況配置5、建立虛擬用戶文件 mkdir /etc/vsftpd/vconf touch /etc/vsftpd/vonf/vir_user6、建立虛擬用戶 vi /etc/vsftpd/vonf/vir_user virtualuser //用戶名 12345678 //密碼7、生成資料庫 db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_user.db8、設置資料庫文件訪問許可權 chmod 600 /etc/vsftpd/vconf/vir_user chmod 600 /etc/vsftpd/vconf/vir_user.db9、修改/etc/pam.d/vsftpd auth sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user account sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user (要想同時使用系統用戶和虛擬用戶,就需要把required改成sufficient)10根據第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal 新建userlocal文件夾 mkdir /etc/vsftpd/vconf/userlocal11、根據第六步建立的用戶名建立一個文件 例如第六步建立的帳號是virtualuser,則新建一個virtualuser文件 touch /etc/vsftpd/conf/userlocal/virtualuser12、編輯該用戶訪問的文件路徑 vi /etc/vsftpd/conf/userlocal/virtualuser 輸入如下 local_root= //需要指定的網站根目錄,例如www..com所在文件夾為/www/ anonymous_enable=NO #禁止匿名用戶訪問 write_enable=YES #開啟寫許可權 local_umask=022 #上傳後文件的許可權掩碼 anon_upload_enable=NO #關閉匿名下載 anon_mkdir_write_enable=NO #關閉匿名創建文件夾 idle_session_timeout=60 #會話自動關閉時間 60是因分鍾 data_connection_timeout=120 #數據延遲時間 max_clients=10 #最大連接數 max_per_ip=5 #同一個ip同時允許5個IP聯機 local_max_rate=1048576 #實體用戶傳輸速度限制,單位B/s。0代表不限制13、配置就此完成,重啟vsftpd服務:service vsftpd restart。查看系統埠狀態:netstas -tulnp。如果能看到48796埠正在被vsftpd調用說明啟動成功。如有不清楚的可以再繼續看看網路經驗。
❾ Linux怎麼搭建DNS伺服器
Linux搭建DNS伺服器簡要步驟:
1
簡要步驟:
1.在bind的主配置文件中添加該域
2.在/var/named中創建該域的zone文件
3.編輯zone文件,添加需要的信息
4.檢測防火牆或selinux設置
5.啟動bind服務,重啟網路服務
6.用戶端測試域名解析
END
搭建DNS伺服器詳細步驟:
1
1、安裝DNS伺服器組件
安裝bind
yum install -y bind bind-chroot bind-utils
2
2、編輯DNS主配置文件
vi /etc/named.conf修改主配置文件,如下圖:
修改完畢,保存退出
3
3、接著修改named.rfc1912.zones文件,vi /etc/named.rfc1912.zones,如下圖:
4
4、添加設置DNS正向解析
修改zone配置文件,正向解析:
cd /var/named/
cp named.localhost szlpt.cn.zone
vi szlpt.cn.zone(要和主配置文件[/etc/named.rfc1912.zones]裡面定義的zone文件名一致)
5
5、修改zone配置文件,反向解析:
cd /var/named/
cp named.localhost 32.168.192.zone
vi 0.168.192.zone(要和主配置[/etc/named.rfc1912.zones]文件裡面定義的zone文件名一致)
6
6、更改防火牆設置和selinux設置
Getenforce(查看selinux是否開啟)
setenforce 0
vi /etc/sysconfig/iptables #配置防火牆埠
-AINPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 953 -j ACCEPT
service iptables restart #重啟防火牆,使規則生效
7
7、啟動DNS服(注意DNS服務名稱在linux是叫做bind)
service named start
8
8、測試檢測域信息是否正常(重要)
檢查之前先看下 配置文件有沒有讀取許可權 ll /var/named
(如果沒有讀取全線, chmod +r /var/named/* 即可)
9
9、檢查bind文件配置過程中容易出錯
以下命令用以檢查bind配置文件及zone文件語法
named-checkconf /etc/named.conf
named-checkzone szlpt.cn /var/named/ szlpt.cn.zone
10
10、啟動重啟DNS服務,查看服務狀態
service named restart
service network restart
用戶端測試解析,通過nslookup進行測試。
END
注意事項
以上經驗截圖是以centos系統版本為例,其他linux版本配置文件可能有所不同。根據實際情況修改
本經驗小編親測截圖,如果您覺得對您有幫助,就點擊支持我吧。點擊關注「咗嚛」,及時獲取最新經驗資訊!
❿ 如何在linux搭建完整的web伺服器
可以參考如下Web伺服器的建立過程。示例環境及web伺服器軟體:
Ubuntu 12.04
LAMP(Linux,Apache,Mysql,PHP)
1、安裝Apache
(1)在安裝HTTP Server之前需安裝APR(Apache Portable Runtime)和APR-util安裝APR
$ tar zxvf apr-1.4.6.tar.gz
$ cd apr-1.4.6/
$ ./configure
$ make
$ sudo make install
(2)安裝APR-util
$ tar zxvf apr-util-1.4.1.tar.gz
$ cd apr-util-1.4.1
$ ./configure –with-apr=/usr/local/apr (whereis apr)
$ make
$ sudo make install
(3)安裝httpd-2.4.2.tar.bz2默認安裝位置/usr/local/apache2網頁放在/usr/local/apache2/htdocs配置文件/usr/local/apache2/conf/httpd.conf
$ tar jxvf httpd-2.4.2.tar.bz2
$ cd httpd-2.4.2/
$ ./configure
$ make
$ sudo make install
(4)啟動HTTP Server$ sudo /usr/local/apache2/bin/apachectl startAH00558: httpd: Could not reliably determine the server』s fully qualified domain name, using 127.0.1.1. Set the 『ServerName』 directive globally to suppress this message
(5)查看http是否正常運行$ netstat -a | grep httptcp 0 0 *:http *:* LISTEN
(6)在瀏覽器輸入127.0.0.1如果正常應該顯示「It works!」
2、安裝MySQL
(1)、下載安裝mysql-5.5.25.tar.gz,默認安裝位置/usr/local/mysql/
$ tar zxvf mysql-5.5.25.tar.gz
$ cd mysql-5.5.25/
$ sudo groupadd mysql
$ sudo useradd -r -g mysql mysql
$ cmake .
$ make
$ sudo make install
$ cd /usr/local/mysql/
$ sudo chown -R mysql .
$ sudo chgrp -R mysql .
$ sudo scripts/mysql_install_db –user=mysql
$ sudo chown -R root .
$ sudo chown -R mysql data/
$ sudo cp support-files/my-medium.cnf /etc/my.cnf
$ sudo cp support-files/mysql.server /etc/init.d/mysql.server
(2)、啟動MySQL:
方法1:$ sudo service mysql.server start
方法2:$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
3、安裝PHP
(1)安裝下載php-5.4.4.tar.gz
$ tar zxvf php-5.4.4.tar.gz
$ cd php-5.4.4
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-mysqli --enable-mbstring --with-mcrypt(可能需要安裝libmcrypt-dev )
$ sudo make install
$ sudo cp php.ini-development /usr/local/lib/php.ini
(2)配置HTTP Server使之支持PHPapache配置文件/usr/local/apache2/conf/httpd.conf修改或添加如下配置
<;IfMole dir_mole>
DirectoryIndex index.php
<;/IfMole>
<;FilesMatch \.php$>
SetHandler application/x-httpd-php
<;/FilesMatch>
(3)重啟HTTP Server
$ sudo /usr/local/apache2/bin/apachectl restart