Serje RHCSA: Installazzjoni, Konfigurazzjoni u Żgurar ta' Server tal-Web u FTP - Parti 9
Web server (magħruf ukoll bħala server HTTP) huwa servizz li jittratta l-kontenut (l-aktar komuni paġni tal-web, iżda tipi oħra ta’ dokumenti wkoll) lil klijent f’netwerk.
Server FTP huwa wieħed mill-eqdem u l-aktar riżorsi użati b'mod komuni (anke sal-lum) biex jagħmlu fajls disponibbli għall-klijenti fuq netwerk f'każijiet fejn l-ebda awtentikazzjoni hija meħtieġa peress li FTP juża username u password mingħajr encryption.
Is-server tal-web disponibbli f'RHEL 7 huwa l-verżjoni 2.4 tal-Apache HTTP Server. Fir-rigward tas-server FTP, se nużaw il-Very Secure Ftp Daemon (magħruf ukoll bħala vsftpd) biex nistabbilixxu konnessjonijiet assigurati minn TLS.
F'dan l-artikolu ser nispjegaw kif tinstalla, tikkonfigura u tiżgura web server u FTP server f'RHEL 7.
Installazzjoni ta' Apache u FTP Server
F'din il-gwida se nużaw server RHEL 7 b'indirizz IP statiku ta '192.168.0.18/24. Biex tinstalla Apache u VSFTPD, mexxi l-kmand li ġej:
# yum update && yum install httpd vsftpd
Meta titlesta l-installazzjoni, iż-żewġ servizzi se jkunu diżattivati inizjalment, għalhekk għandna bżonn nibdewhom manwalment għalissa u nħalluhom jibdew awtomatikament jibdew bil-boot li jmiss:
# systemctl start httpd # systemctl enable httpd # systemctl start vsftpd # systemctl enable vsftpd
Barra minn hekk, irridu niftħu l-portijiet 80 u 21, fejn id-daemons tal-web u tal-ftp qed jisimgħu, rispettivament, sabiex jippermettu aċċess għal dawk is-servizzi minn barra:
# firewall-cmd --zone=public --add-port=80/tcp --permanent # firewall-cmd --zone=public --add-service=ftp --permanent # firewall-cmd --reload
Biex tikkonferma li s-server tal-web qed jaħdem sew, qabbad il-browser tiegħek u daħħal l-IP tas-server. Għandek tara l-paġna tat-test:
Fir-rigward tas-server ftp, ikollna nikkonfigurawh aktar, li nagħmlu f'minuta, qabel nikkonfermaw li qed jaħdem kif mistenni.
Konfigurazzjoni u Żgurar ta' Apache Web Server
Il-fajl tal-konfigurazzjoni prinċipali għal Apache jinsab f'/etc/httpd/conf/httpd.conf
, iżda jista' jiddependi fuq fajls oħra preżenti ġewwa /etc/httpd/conf.d
.
Għalkemm il-konfigurazzjoni default għandha tkun biżżejjed għal ħafna każijiet, hija idea tajba li ssir familjari mal-għażliet kollha disponibbli kif deskritt fid-dokumentazzjoni uffiċjali.
Bħal dejjem, agħmel kopja ta' backup tal-fajl tal-konfigurazzjoni prinċipali qabel ma teditjah:
# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.$(date +%Y%m%d)
Imbagħad iftaħ bl-editur tat-test preferut tiegħek u fittex il-varjabbli li ġejjin:
- ServerRoot: id-direttorju fejn jinżammu l-konfigurazzjoni, l-iżball, u l-fajls log tas-server.
- Isma': jagħti struzzjonijiet lil Apache biex jisma' fuq indirizz IP u/jew portijiet speċifiċi.
- Inkludi: tippermetti l-inklużjoni ta' fajls ta' konfigurazzjoni oħra, li jridu jeżistu. Inkella, is-server se jfalli, għall-kuntrarju tad-direttiva IncludeOptional, li hija injorata skiet jekk il-fajls tal-konfigurazzjoni speċifikati ma jeżistux.
- Utent u Grupp: l-isem tal-utent/grupp biex iħaddem is-servizz httpd bħala.
- DocumentRoot: Id-direttorju li minnu Apache se jservi d-dokumenti tiegħek. B'mod awtomatiku, it-talbiet kollha jittieħdu minn dan id-direttorju, iżda links simboliċi u psewdonimi jistgħu jintużaw biex jindikaw postijiet oħra.
- ServerName: din id-direttiva tistabbilixxi l-hostname (jew l-indirizz IP) u l-port li s-server juża biex jidentifika lilu nnifsu.
L-ewwel miżura ta’ sigurtà se tikkonsisti fil-ħolqien ta’ utent u grupp iddedikat (jiġifieri tecmint/tecmint) biex iħaddem is-server tal-web kif u jibdel il-port default għal wieħed ogħla (9000 f’dan il-każ):
ServerRoot "/etc/httpd" Listen 192.168.0.18:9000 User tecmint Group tecmint DocumentRoot "/var/www/html" ServerName 192.168.0.18:9000
Tista 'tittestja l-fajl tal-konfigurazzjoni bi.
# apachectl configtest
u jekk kollox huwa OK, imbagħad terġa 'tibda l-web server.
# systemctl restart httpd
u tinsiex li tattiva l-port il-ġdid (u tiddiżattiva l-qadim) fil-firewall:
# firewall-cmd --zone=public --remove-port=80/tcp --permanent # firewall-cmd --zone=public --add-port=9000/tcp --permanent # firewall-cmd --reload
Innota li, minħabba l-politiki SELinux, tista 'tuża biss il-portijiet ritornati minn
# semanage port -l | grep -w '^http_port_t'
għas-server tal-web.
Jekk trid tuża port ieħor (jiġifieri port TCP 8100), ikollok iżżidha mal-kuntest tal-port SELinux għas-servizz httpd:
# semanage port -a -t http_port_t -p tcp 8100
Biex tiżgura aktar l-installazzjoni Apache tiegħek, segwi dawn il-passi:
1. L-utent Apache qed jaħdem kif m'għandux ikollu aċċess għal qoxra:
# usermod -s /sbin/nologin tecmint
2. Iddiżattiva l-elenkar tad-direttorju sabiex tevita li l-browser juri l-kontenut ta' direttorju jekk ma jkunx hemm index.html preżenti f'dak id-direttorju.
Editja /etc/httpd/conf/httpd.conf
(u l-fajls tal-konfigurazzjoni għall-hosts virtwali, jekk ikun hemm) u kun żgur li d-direttiva tal-Għażliet, kemm fil-livelli ta’ fuq kif ukoll fil-blokk tad-Direttorju, tkun issettjata lil Xejn:
Options None
3. Aħbi l-informazzjoni dwar is-server tal-web u s-sistema operattiva fit-tweġibiet HTTP. Editja /etc/httpd/conf/httpd.conf
kif ġej:
ServerTokens Prod ServerSignature Off
Issa inti lest biex tibda sservi kontenut mid-direttorju /var/www/html tiegħek.
Konfigurazzjoni u Sigurtà FTP Server
Bħal fil-każ ta' Apache, il-fajl tal-konfigurazzjoni prinċipali għal Vsftpd (/etc/vsftpd/vsftpd.conf)
huwa kkummentat tajjeb u filwaqt li l-konfigurazzjoni default għandha tkun biżżejjed għal ħafna applikazzjonijiet, għandek issir familjari mal- dokumentazzjoni u l-paġna man (man vsftpd.conf)
sabiex topera s-server ftp b'mod aktar effiċjenti (ma nistax nenfasizza dan biżżejjed!).
Fil-każ tagħna, dawn huma d-direttivi użati:
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES chroot_local_user=YES allow_writeable_chroot=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES
Billi tuża chroot_local_user=YES
, l-utenti lokali se jitqiegħdu (b'mod awtomatiku) f'ħabs chroot'ed fid-direttorju tad-dar tagħhom eżatt wara l-login. Dan ifisser li l-utenti lokali mhux se jkunu jistgħu jaċċessaw l-ebda fajl barra d-direttorji tad-dar korrispondenti tagħhom.
Fl-aħħarnett, biex tippermetti lil ftp jaqra fajls fid-direttorju tad-dar tal-utent, issettja l-boolean SELinux li ġej:
# setsebool -P ftp_home_dir on
Issa tista' tikkonnettja mas-server ftp billi tuża klijent bħal Filezilla:
Innota li l-ġurnal /var/log/xferlog
jirreġistra t-tniżżil u l-uploads, li jaqblu mal-lista tad-direttorju ta’ hawn fuq:
Sommarju
F'dan it-tutorja spjegajna kif twaqqaf web u server ftp. Minħabba l-kobor tas-suġġett, mhuwiex possibbli li jiġu koperti l-aspetti kollha ta 'dawn is-suġġetti (jiġifieri web hosts virtwali). Għalhekk, nirrakkomanda li tiċċekkja wkoll artikoli eċċellenti oħra f'din il-websajt dwar Apache.