Rumah > Artikel > Operasi dan penyelenggaraan > Bagaimana untuk membina pelayan gambar pada platform Linux melalui nginx dan vsftpd
1. pemasangan nginx
1. Persekitaran pemasangan nginx
nginx dikembangkan dalam bahasa C . Tutorial ini Gunakan centos6.5 sebagai persekitaran pemasangan.
Untuk memasang nginx, anda perlu menyusun kod sumber yang dimuat turun dari tapak web rasmi terlebih dahulu. Kompilasi bergantung pada persekitaran gcc
pcre (ungkapan biasa yang serasi dengan perl) ialah pustaka perl yang termasuk pustaka ungkapan biasa yang serasi dengan perl. Modul http nginx menggunakan pcre untuk menghuraikan ungkapan biasa, jadi perpustakaan pcre perlu dipasang pada Linux.
yuminstall -y pcre pcre-devel
Nota: pcre-devel ialah perpustakaan pembangunan sekunder yang dibangunkan menggunakan pcre. nginx juga memerlukan perpustakaan ini.
Pustaka zlib menyediakan banyak kaedah pemampatan dan penyahmampatan nginx menggunakan zlib untuk gzip kandungan pakej http, jadi perpustakaan zlib perlu dipasang pada Linux.
yuminstall -y zlib zlib-devel
openssl ialah perpustakaan kriptografi lapisan soket selamat yang berkuasa, termasuk algoritma kriptografi utama, fungsi pengurusan pengkapsulan kunci dan sijil yang biasa digunakan serta protokol SSL, serta menyediakan pelbagai aplikasi untuk ujian atau kegunaan lain.
nginx bukan sahaja menyokong protokol http, tetapi juga menyokong https (iaitu, menghantar http melalui protokol ssl), jadi anda perlu memasang perpustakaan openssl pada linux.
yuminstall -y openssl openssl-devel
2. Susun dan pasang
Salin nginx-1.8.0.tar.gz ke pelayan linux.
Nyahzip:
tar -zxvf nginx-1.8.0.tar.gz
Masukkan direktori akar nginx:
cd nginx-1.8.0
a.configure
./configure --bantuan untuk menanyakan parameter terperinci (rujuk kepada lampiran tutorial ini: parameter kompilasi nginx)
Tetapan parameter adalah seperti berikut:
./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client\ --http-proxy-temp-path=/var/temp/nginx/proxy\ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi\ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi\ --http-scgi-temp-path=/var/temp/nginx/scgi
Nota: Direktori fail sementara ditentukan sebagai /var/temp/nginx di atas, dan temp dan direktori nginx perlu dibuat di bawah /var
b. Susun dan pasang
make make install
Pemasangan yang berjaya:
c. Mulakan nginx
cd /usr/local/nginx/sbin/ ./nginx
Pertanyakan proses nginx:
15098 ialah id proses proses utama nginx, 15099 ialah id proses proses pekerja nginx
Nota: Jalankan ./nginx untuk memulakan nginx di sini anda boleh menentukan fail konfigurasi nginx yang dimuatkan dengan -c, seperti berikut:
./nginx-c /usr/local/nginx/conf/nginx.conf
. Jika -c tidak dinyatakan, nginx akan memuatkan fail conf/nginx.conf secara lalai pada permulaan Fail ini Alamat juga boleh ditentukan semasa menyusun dan memasang parameter nginx./configure (--conf-path= menunjuk ke konfigurasi. fail (nginx.conf))
d. Hentikan nginx
Kaedah 1, hentian cepat:
cd /usr/local/nginx/sbin ./nginx -s stop
Kaedah ini bersamaan dengan mengetahui ID proses nginx terlebih dahulu dan kemudian menggunakan perintah bunuh untuk membunuh proses secara paksa.
Kaedah 2, hentian lengkap (disyorkan):
cd /usr/local/nginx/sbin ./nginx -s quit
Langkah henti dalam kaedah ini adalah untuk menghentikan proses nginx selepas tugasan selesai.
e. Mulakan semula nginx
Kaedah 1, berhenti dan kemudian mula (disyorkan):
Memulakan semula nginx adalah bersamaan dengan menghentikan nginx dahulu dan kemudian memulakan semula Mulakan nginx, iaitu, laksanakan arahan berhenti dahulu dan kemudian perintah mula.
adalah seperti berikut:
./nginx -s quit ./nginx
Kaedah 2, muat semula fail konfigurasi:
Apabila fail konfigurasi nginx nginx.conf diubah suai, anda mahu untuk menukar konfigurasi Untuk berkuat kuasa, anda perlu memulakan semula nginx Gunakan -s reload untuk menjadikan maklumat konfigurasi berkesan dalam nginx tanpa terlebih dahulu menghentikan nginx dan kemudian memulakannya, seperti berikut:
./nginx -s reload
f >
nginx berjaya dipasang dan memulakan nginx , anda boleh mengakses nginx pada mesin maya: Ini bermakna nginx berjaya dipasang.2. Pemasangan FTP
1. Pasang komponen vsftpd[root@bogon ~]# yum -y install vsftpdSelepas pemasangan, terdapat fail /etc/vsftpd/vsftpd.conf , iaitu fail konfigurasi vsftp. 2. Tambah pengguna ftp Pengguna ini digunakan untuk log masuk ke pelayan ftp.
[root@bogon ~]# useradd ftpuserSelepas pengguna sedemikian dicipta, anda boleh menggunakan ini untuk log masuk. Ingat untuk menggunakan log masuk biasa dan bukannya tanpa nama. Selepas log masuk, laluan lalai ialah /home /ftpuser
[root@bogon ~]# passwd ftpuserMasukkan kata laluan dua kali dan kemudian tukar kata laluan. 4. Buka port 21 dalam tembok api Oleh kerana port lalai untuk ftp ialah 21, dan centos tidak membukanya secara lalai, anda perlu mengubah suai fail iptables tidak membuka tembok api secara lalai. Tidak perlu memikirkan langkah ini.
[root@bogon ~]# vim /etc/sysconfig/iptablesTerdapat 22 pada baris -jaccept Masukkan baris lain yang serupa dengan baris itu, cuma gantikan 22 dengan 21, dan kemudian: wq untuk menyimpan.
[root@bogon ~]# service iptables restart5 Ubah suai selinuxRangkaian luaran boleh diakses, tetapi saya mendapati bahawa saya tidak boleh kembali ke direktori. (menggunakan mod Aktif ftp, mod pasif masih tidak boleh diakses), dan ia tidak boleh dimuat naik kerana selinux menyebabkan masalah. Ubah suai selinux: Laksanakan arahan berikut untuk menyemak status:
[root@bogon ~]# getsebool -a | grepftp allow_ftpd_anon_write --> off allow_ftpd_full_access --> off allow_ftpd_use_cifs --> off allow_ftpd_use_nfs --> off ftp_home_dir --> off ftpd_connect_db --> off ftpd_use_passive_mode --> off httpd_enable_ftp_server --> off tftp_anon_write --> off [root@bogon ~]#Laksanakan arahan di atas, dan kemudian kembalikan hasilnya untuk melihat bahawa kedua-dua baris dimatikan, yang bermakna rangkaian luaran tidak didayakan Lawati
[root@bogon ~]#setsebool -p allow_ftpd_full_access on [root@bogon ~]#setsebool -p ftp_home_dir on
这样应该没问题了(如果,还是不行,看看是不是用了ftp客户端工具用了passive模式访问了,如提示entering passive mode,就代表是passive模式,默认是不行的,因为ftp passive模式被iptables挡住了,下面会讲怎么开启,如果懒得开的话,就看看你客户端ftp是否有port模式的选项,或者把passive模式的选项去掉。如果客户端还是不行,看看客户端上的主机的电脑是否开了防火墙,关吧)
filezilla的主动、被动模式修改:
菜单:编辑→设置
6、关闭匿名访问
修改/etc/vsftpd/vsftpd.conf文件:
重启ftp服务:
[root@bogon ~]# service vsftpd restart
7、开启被动模式
默认是开启的,但是要指定一个端口范围,打开vsftpd.conf文件,在后面加上
pasv_min_port=30000 pasv_max_port=30999
表示端口范围为30000~30999,这个可以随意改。改完重启一下vsftpd
由于指定这段端口范围,iptables也要相应的开启这个范围,所以像上面那样打开iptables文件。
也是在21上下面另起一行,更那行差不多,只是把21 改为30000:30999,然后:wq保存,重启下iptables。这样就搞定了。
8、设置开机启动vsftpd ftp服务
[root@bogon ~]# chkconfig vsftpd on
Atas ialah kandungan terperinci Bagaimana untuk membina pelayan gambar pada platform Linux melalui nginx dan vsftpd. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!