❶ 怎么在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