Linux系统管理实训任务四之应用服务器配置
yuyutoo 2024-10-15 16:58 3 浏览 0 评论
工作任务1: samba服务器匿名模式的配置
实践1:安装SAMBA服务器程序
1、查看系统中samba软件是否已经安装
2、安装Samba服务器程序的软件包,如下所示
3、为了解决软件安装依赖性的问题,使用YUM本地仓库进行安装
实践2:配置匿名访问模式
公司现在要共享一个文件夹,需要添加samba服务器作为共享文件的服务器,并发布共享目录/share ,这个目录允许公司中所有员工进行访问和读写操作
1、首先配置SAMBA服务器的IP地址
2、建立samba服务器的共享目录 /share
3、利用touch命令在共享目录里创建一个测试文件 test.txt
4、利用echo命令向测试文件中写入一些内容
5、使用VIM编辑器打开SAMBA服务器的配置文件之前,先备份一下,配置文件存放在 /etc/samba/smb.conf
打开后文件特别长,有很多的#好注释,所以我们将备份文件删除,重新执行下面那句话,这样文件内容会变少很多
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak ;egrep -v "#|^#34; /etc/samba/smb.conf.bak |grep -v "^;" >/etc/samba/smb.conf
6、打开配置文件进行编辑,使其能够匿名访问共享的内容
7、首先设置
security = share 安全级别设为匿名访问
passdb backend = tdbsam
在配置文件最后面加入下面内容
8、然后进行匿名模式的的修改
9、查看samba的服务,处于停止状态,启动系统中的SAMBA服务
10、利用客户端进行访问
访问samba服务的常用方法,通过“运行”程序,输入 \\samba服务器IP地址 访问共享
如果访问不了使用如下办法处理(如果没有问题请忽略):
- 将SELIUNX设置成disabled
- 关闭防火墙
(3)修改本地安全策略
运行secpol.msc在本地安全策略窗口中依次打开“本地策略”-》“安全选项”,然后再右侧的列表中找到“网络安全:LAN 管理器身份验证级别”,把这个选项的值改为“发送 LM 和 NTLM – 如果已协商,则使用 NTLMv2 会话安全”,最后确定。
修改 /etc/samba/smb.conf,在Global项下增加 ntlm auth = yes 参数
(4)修改注册表
修改
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa下的LmCompatibilityLevel的值为1。
(5)在Linux 中,可執行下列指令:
setsebool -P samba_enable_home_dirs on
11、创建一个新文件123,测试是否有写入权限
12、查看并修改权限
练习:samba服务器USER模式的配置?
工作任务2 .NFS服务器的配置
实践1:配置NFS服务器
- 安装NFS服务器程序和PORTMAP程序
- 安装完成后启动服务,注意启动顺序
service nfs start
- 设置NFS服务器配置文件,NFS配置文件所在位置/data/wzy/
chmod 666 /data/wzy/
编辑export文件
/data/wzy 192.168.1.111/24(rw,no_root_squash,no_all_squash,sync)
参数值 内容说明
Rw ro 该目录分享的权限是可擦写 (read-write) 或只读 (read-only),但最终能不能读写,还是与文件系统的 rwx 及身份有关。
Sync async sync 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘!
no_root_squash root_squash 客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果你想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash 才行!
all_squash 不论登入 NFS 的使用者身份为何, 他的身份都会被压缩成为匿名用户,通常也就是 nobody(nfsnobody)
anonuid anongid anon 意指 anonymous (匿名者) 前面关于 *_squash 提到的匿名用户的 UID 设定值,通常为 nobody(nfsnobody),但是你可以自行设定这个 UID 的值!当然,这个 UID 必需要存在于你的 /etc/passwd 当中! anonuid 指的是 UID 而 anongid 则是群组的 GID
配置生效:exportfs –r
查看 RPC 服务的注册状况 rpcinfo -p localhost
在你的 NFS 服务器设定妥当之后,我们可以在 server 端先自我测试一下是否可以联机 就是利用 showmount 这个指令来查阅! (连通的客户端机器都可以测试)
showmount -e ip
创建挂载目录
查看服务器抛出的共享目录信息
为了提高NFS的稳定性,使用TCP协议挂载,NFS默认用UDP协议
mount -t nfs 192.168.1.111:/data/wzy /gztest -o proto=tcp -o nolock
查看挂载结果
工作任务3 FTP服务器匿名模式的配置
实践1 配置匿名模式访问FTP服务器
公司的产品价格每天都在变动,所以需要搭建一台FTP服务器,用于各地经销商下载公司最新的产品价格,允许所有经销商下载文件,允许匿名用户登录后创建自己的目录。
1、配置FTP服务器的IP地址
2、使用YUM方式安装FTP服务器程序
yum install -y vsftpd
3、打开FTP服务的配置文件 /etc/vsftpd/vsftpd.conf
4、修改配置文件,实现允许匿名用户访问,并且允许上传和下载文件
让匿名用户可以访问
anonymous_enable=YES
把以下两条语句的注释符号#去掉,功能即可启用
允许匿名用户上传
anon_upload_enable=YES
允许匿名用户创建文件夹
anon_mkdir_write_enable=YES
5、修改完配置文件后保存退出
6、进入FTP共享目录,FTP的匿名用户默认共享目录在/var/ftp/pub
7、利用touch命令在/var/ftp/pub 目录下创建一个测试文件123.txt
8、查看vsftpd服务的当前状态并启动vsftpd服务
9、使用win7客户端匿名用户登录FTP服务器,使用浏览器来测试linux的FTP服务器共享,在地址栏中输入ftp://ftp服务器的IP地址 来登陆FTP服务器
10、使用文件资源管理器登陆FTP服务器
11、进入pub目录后,将共享文件123.txt下载到win7系统的桌面,测试下载权限是否可用
12、在windows桌面创建一个文件 456.txt,上传到FTP服务器的共享目录中,测试上传权限
13、会弹出上传失败的提示,没有上传成功的原因是因为共享文件夹的权限太低,修改FTP的共享文件夹权限,把它的权限设置到最低
14、测试FTP匿名用户上传
实践2 FTP客户端软件的使用
1、打开FTP客户端软件flash fxp,此款软件绿色便携,所有文件不写入其它目录,无需安装,可用 u 盘随身带走
2、初次运行时提示输入key,点“输入代码”即可自动完成注册。
3、在右侧的按钮中点击”快速连接”新建一个FTP站点,然后会弹出一个窗口,提示你输入站点的相关信息。
4、在对话框中选择连接类型“FTP”,填写FTP服务器的IP地址,在“用户名”和“密码”处由于是匿名连接,暂时不需要填写,把“匿名”的钩打上
5、填写完后点击“连接”完成设置。可以成功连接上。
练习:FTP服务器USER模式的配置?
工作任务4 LAMP的配置
1、首先设置服务器的IP地址
2、安装APACHE程序httpd
3、启动服务
出现问题,如果没有出现可忽略,可直接进入第4步
问题描述: Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
进入目录
编辑httpd.conf文件,搜索"#ServerName",添加ServerName localhost:80
然后重启
4、打开浏览器,输入IP地址,查看是否能显示测试主页
实践2、配置网站
公司部门内部搭建一台WEB服务器,采用的IP地址和端口为192.168.155.200,首页采用index.html文件。管理员E-mail地址为 admin@abc.com,网页的编码类型采用UTF-8,所有网站资源都存放在/var/www/html目录下,并将Apache的配置文件根目录设置为/etc/httpd目录。
配置如下
DirectoryIndex index.html index.php #指定默认首页 AddDefaultCharset UTF-8 #设置服务器的默认编码为: UTF-8
2、写入网站主页文件
echo 'welcome to www.abc.com' > /var/www/html/index.html
3、打开浏览器,输入IP地址,查看是否能显示刚才制作的主页
4、安装
yum install httpd mysql-server php php-mysql -y
启动服务
进入mysql
输入quit退出
测试apahce是否支持PHP
输入内容
重启服务
访问页面
检查是否安装php,如果没有的话,使用YUM 自动安装yum -y install php我已经安装过了
安装PHP组件,使 PHP5 支持 MySQL
yum install –y php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt
重启MySql和启Apche
编辑文件/etc/httpd/conf/httpd.conf
44 ServerTokens OS #在44行 修改为:ServerTokens Prod (在出现错误页的时候不显示服务器操作系统的名称)
537 ServerSignature On #在537行 修改为:ServerSignature Off (在错误页中不显示Apache的版本)
332 Options Indexes FollowSymLinks #在332行 修改为:Options Includes ExecCGI FollowSymLinks(允许服务器执行CGI及SSI,禁止列出目录)
797 #AddHandler cgi-script .cgi #在797行 取消“#” 修改为:AddHandler cgi-script .cgi .pl (允许扩展名为.pl的CGI脚本运行)
339 AllowOverride None #在339行 修改为:AllowOverride All (允许.htaccess)
555 Options Indexes MultiViews FollowSymLinks #在555行 修改为 Options MultiViews FollowSymLinks(不在浏览器上显示树状目录结构)
76 KeepAlive Off #在76行 修改为:KeepAlive On (允许程序性联机)
83 MaxKeepAliveRequests 100 #在83行 修改为:MaxKeepAliveRequests 1000 (增加同时连接数)
:wq #保存退出
重启服务
备份
cp /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.confbak
cp /var/www/error/noindex.html /var/www/error/noindex.htmlbak
删除
rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html
重启服务
编辑vim /etc/php.ini
946 ;date.timezone = PRC #在946行 把前面的分号去掉,改为date.timezone = PRC
386 disable_functions = #在386行 添加disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,
proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,
popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,
posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,
posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,
posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname列出PHP可以禁用的函数,如果某些程序需要用到这个
函数,可以删除,取消禁用。
432 expose_php = On #在432行 修改为:expose_php = Off禁止显示php版本的信息
745 magic_quotes_gpc = Off #在745行 修改为:magic_quotes_gpc = On打开magic_quotes_gpc来防止SQL注入
229 short_open_tag = Off #在229行 修改为short_open_tag = On,支持php短标签
380 ;open_basedir = #在380行 把前面的分号去掉,改为open_basedir = .:/tmp/ 设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,
如果改了之后安装程序有问题,可以注销此行,或者直接写上程序的目录/data/www.osyunwei.com/:/tmp/
:wq #保存退出
重启MySql
重启Apche
编辑vim /var/www/html/index.php
:wq #保存退出
访问地址
相关推荐
- jQuery VS AngularJS 你更钟爱哪个?
-
在这一次的Web开发教程中,我会尽力解答有关于jQuery和AngularJS的两个非常常见的问题,即jQuery和AngularJS之间的区别是什么?也就是说jQueryVSAngularJS?...
- Jquery实时校验,指定长度的「负小数」,小数位未满末尾补0
-
在可以输入【负小数】的输入框获取到焦点时,移除千位分隔符,在输入数据时,实时校验输入内容是否正确,失去焦点后,添加千位分隔符格式化数字。同时小数位未满时末尾补0。HTML代码...
- 如何在pbootCMS前台调用自定义表单?pbootCMS自定义调用代码示例
-
要在pbootCMS前台调用自定义表单,您需要在后台创建表单并为其添加字段,然后在前台模板文件中添加相关代码,如提交按钮和表单验证代码。您还可以自定义表单数据的存储位置、添加文件上传字段、日期选择器、...
- 编程技巧:Jquery实时验证,指定长度的「负小数」
-
为了保障【负小数】的正确性,做成了通过Jquery,在用户端,实时验证指定长度的【负小数】的方法。HTML代码<inputtype="text"class="forc...
- 一篇文章带你用jquery mobile设计颜色拾取器
-
【一、项目背景】现实生活中,我们经常会遇到配色的问题,这个时候去百度一下RGB表。而RGB表只提供相对于的颜色的RGB值而没有可以验证的模块。我们可以通过jquerymobile去设计颜色的拾取器...
- 编程技巧:Jquery实时验证,指定长度的「正小数」
-
为了保障【正小数】的正确性,做成了通过Jquery,在用户端,实时验证指定长度的【正小数】的方法。HTML做成方法<inputtype="text"class="fo...
- jquery.validate检查数组全部验证
-
问题:html中有多个name[],每个参数都要进行验证是否为空,这个时候直接用required:true话,不能全部验证,只要这个数组中有一个有值就可以通过的。解决方法使用addmethod...
- Vue进阶(幺叁肆):npm查看包版本信息
-
第一种方式npmviewjqueryversions这种方式可以查看npm服务器上所有的...
- layui中使用lay-verify进行条件校验
-
一、layui的校验很简单,主要有以下步骤:1.在form表单内加上class="layui-form"2.在提交按钮上加上lay-submit3.在想要校验的标签,加上lay-...
- jQuery是什么?如何使用? jquery是什么功能组件
-
jQuery于2006年1月由JohnResig在BarCampNYC首次发布。它目前由TimmyWilson领导,并由一组开发人员维护。jQuery是一个JavaScript库,它简化了客户...
- django框架的表单form的理解和用法-9
-
表单呈现...
- jquery对上传文件的检测判断 jquery实现文件上传
-
总体思路:在前端使用jquery对上传文件做部分初步的判断,验证通过的文件利用ajaxFileUpload上传到服务器端,并将文件的存储路径保存到数据库。<asp:FileUploadI...
- Nodejs之MEAN栈开发(四)-- form验证及图片上传
-
这一节增加推荐图书的提交和删除功能,来学习node的form提交以及node的图片上传功能。开始之前需要源码同学可以先在git上fork:https://github.com/stoneniqiu/R...
- 大数据开发基础之JAVA jquery 大数据java实战
-
上一篇我们讲解了JAVAscript的基础知识、特点及基本语法以及组成及基本用途,本期就给大家带来了JAVAweb的第二个知识点jquery,大数据开发基础之JAVAjquery,这是本篇文章的主要...
- 推荐四个开源的jQuery可视化表单设计器
-
jquery开源在线表单拖拉设计器formBuilder(推荐)jQueryformBuilder是一个开源的WEB在线html表单设计器,开发人员可以通过拖拉实现一个可视化的表单。支持表单常用控件...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)