当前位置:首页 » 云服务器 » 本地ubuntu服务器搭建

本地ubuntu服务器搭建

发布时间: 2024-05-28 20:40:03

① 一、服务器从零到一——Ubuntu搭建nginx静态服务器

Ubuntu 18.04上的Nginx默认启用了一个服务器模块,该模块被配置为在/var/www/html目录下提供文档。 虽然这适用于单个站点,但如果您托管多个站点,它可能会变得很笨重。 我们不必修改/var/www/html ,而是在/var/www为我们的 example.com 网站创建一个目录结构,并将/var/www/html保留为默认目录,如果客户端请求没有匹配任何其他网站。

按如下所示为example.com创建目录,使用-p标志创建任何必需的父目录:

$ sudo mkdir -p /var/www/ example.com/html

接下来,使用$USER环境变量分配目录的所有权:

USER:$USER /var/www/ example.com/html/

如果你没有修改你的umask值,你的web根目录的权限应该是正确的,但是你可以通过输入:

$ sudo chmod -R 755 /var/www/ example.com/

接下来,使用gedit或您最喜欢的编辑器创建一个index.html页面示例:

$ gedit /var/www/ example.com/html/index.html

在里面,添加下面的示例HTML:

<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com server block is working!</h1>
</body>
</html>
为了让Nginx提供这些内容,有必要创建一个具有正确指令的服务器块。 我们不要直接修改默认配置文件,而是在/etc/nginx/sites-available/ example.com上创建一个新文件:

$ sudo gedit /etc/nginx/sites-available/example.com

粘贴到以下配置块中,该块类似于默认值,但已更新陵森州为我们的新目录和域名:

server {
listen 80;
listen [::]:80;

}
请注意,我们已将root配置更新到我们的新目录,并将server_name为我们的域名。

接下来,让我们通过创春岩建一个链接到启动sites-enabled目录来启用该文件,该目录是Nginx在启动过程中读取的:

$ sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

现在启用两个服务器模块并将其配置为基于listen和server_name指令响应请求(您可以阅读关于Nginx如何处理这些指令的更多信息):

example.com :将响应 example.com 和 www.example.com 请求。
default :将响应端口80上与其他两个块不匹配的任何请求。
为了避免添加额外的服务器名称可能导致的哈希桶内存问题,有必要调整/etc/nginx/nginx.conf文件中的单个值。

打开文件:sudo gedit /etc/nginx/nginx.conf

找到server_names_hash_bucket_size指令并删除#符号以取消注释该行:

...
http {
...
server_names_hash_bucket_size 64;
...
}
...
接下来尺蔽,测试以确保您的Nginx文件中没有语法错误:

$ sudo nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

如果没有任何问题,请重新启动Nginx以启用您的更改:

$ sudo systemctl restart nginx

熟悉重要的Nginx文件和目录

nginx服务器配置文件:

/etc/nginx :Nginx配置目录。 所有的Nginx配置文件都驻留在这里。
/etc/nginx/nginx.conf :主要的Nginx配置文件。 这可以修改,以更改Nginx全局配置。
/etc/nginx/sites-available/ :可存储每个站点服务器块的目录。 除非将Nginx链接到sites-enabled了sites-enabled目录,否则Nginx不会使用此目录中的配置文件。 通常,所有服务器块配置都在此目录中完成,然后通过链接到其他目录启用。
/etc/nginx/sites-enabled/ :存储启用的每个站点服务器块的目录。 通常,这些是通过链接到sites-available目录中的配置文件创建的。
/etc/nginx/snippets :这个目录包含可以包含在Nginx配置其他地方的配置片段。 可重复配置的片段可以重构为片段。
nginx服务器日志文件:

/var/log/nginx/access.log :除非Nginx配置为其他方式,否则每个对您的Web服务器的请求都会记录在此日志文件中。
/var/log/nginx/error.log :任何Nginx错误都会记录在这个日志中。

② 怎么在Ubuntu下搭建服务器

在Ubuntu下搭建服务器

是什么?中文翻译叫做:虚拟专用网络。功能是,在公用网络上建立专用网络,进行加密通讯。

适用的场合:

1.你的公司网络在一个局域网,不能外部访问。有一天你外出度假了,想访问一下公司的内部网络,外网是不能直接访问的。如果公司的网络有一台主机设置了,你就可以通过连上这台主机,来访问公司内部网络啦。

2.如果你的主机是在国外,你可以在这台主机上配置,然后你的电脑连上之后就可以啦。

3.某台服务器(如游戏服务器)限制了一些IP连接到它上面,这时你配置,连上之后,就可以继续访问那台服务器。

我们以Ubuntu为例,说一下怎样配置服务器。

1、用root账户登陆服务器

2、安装PPTPD

apt-get install pptpd

3、编辑pptpd.conf文件

vi /etc/pptpd.conf

取消注释下面内容

localip 192.168.0.1

remoteip 192.168.0.234-238,192.168.0.245

这几句的意思是:当外部计算机通过pptp联接到后所能拿到的ip地址范围和服务器的ip地址设置。

4、添加用于登陆的账户

vi /etc/ppp/chap-secrets

格式如下:

# client server secret IP addresses

cqc pptpd 123456 *

从左到右依次是用户名,自己指定。服务器,填写pptpd,密码,自己指定。IP,填*即可。中间用空格分别隔开。

5、设置DNS解析,编辑pptpd-options文件

vi /etc/ppp/pptpd-options

找到ms-dns,取消掉注释,并修改DNS地址,这里我推荐大家用

Google DNS 8.8.8.8 和 8.8.4.4

更改为如下内容

ms-dns 8.8.8.8

ms-dns 8.8.4.4

6、开启转发

vi /etc/sysctl.conf

取消注释以下内容

net.ipv4.ip_forward=1

这句话意思是:打开内核IP转发

更新一下配置

sudo sysctl -p

7、安装iptables并设置

apt-get install iptables

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

后面这句话作用是:立刻让LINUX支持NAT(platinum)

8、重新启动服务

/etc/init.d/pptpd restart

9、大功告成,服务器就这么配置好啦。

接下来,利用IP地址,刚才设置的账号和密码,就可以连你的啦。

③ 怎样在Ubuntu 14.04中搭建gitolite git服务器

1. 首先这里我们安装openssh-serveropenssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装。
sudo apt-get -y install openssh-serveropenssh-client
怎样在Ubuntu 14.04中搭建gitolite git服务器
2. 安装Git,在这个核心软件,不可或缺。
sudo apt-get -y install git
怎样在Ubuntu 14.04中搭建gitolite git服务器
3. 添加gitolite用户和同名用户组,加上--system参数,用户就不会在登陆界面显示。
sudo adser --system --shell /bin/sh--group --disabled-password --home /home/gitolite gitolite
怎样在Ubuntu 14.04中搭建gitolite git服务器
4. 生成ssh key,一路回车下来。
ssh-keygen -t rsa
怎样在Ubuntu 14.04中搭建gitolite git服务器
5. 将你当前用户的ssh pub key复制到/tmp下备用,由于我用的是桌面版在同一台机器上。
cp ~/.ssh/id_rsa.pub /tmp/ubuntugege.pub
如果你是ssh远程登陆到服务器上安装,就要把你本地的key复制到远程的机器上
scp ~/.ssh/id_rsa.pubgitolite.server:/tmp/ubuntugege.pub
怎样在Ubuntu 14.04中搭建gitolite git服务器
6. 安装gitolite,在ubuntu中已经集成了,不用自己去下载。
sudo apt-get -y install gitolite
怎样在Ubuntu 14.04中搭建gitolite git服务器
7. 切换到gitolite用户环境中,因为我要以gitolite用户身份去初始化安装。
sudo su - gitolite
怎样在Ubuntu 14.04中搭建gitolite git服务器
8. 执行初始化安装gitolite。
gl-setup /tmp/ubuntugege.pub
怎样在Ubuntu 14.04中搭建gitolite git服务器
9. 把管理库gitolite-admin克隆过来就可以开始gitolite用户及代码库的管理了,如果不能克隆,那么就说明初始化的ssh pubkey错了,如图就是成功了。
git clonessh://gitolite@localhost/gitolite-admin.git

④ 如何在Ubuntu上搭建一台安全的Apache Web服务器

本教程假设你已有一台在运行的Ubuntu服务器,网络方面已设置好,而且可以通过SSH进行访问。
Apache2是许多安装的Linux发行版使用的默认Web服务器。它不是对所有环境来说唯一可用的Web服务器,也不是最佳的Web服务器,但是它适合许多使用场景。在安装过程中,系统可能会询问你哪个Web服务器要自动重新配置。选择“apache2”即可。
安装Apache2
使用下面这个命令,安装Apache2及其他库。
$ sudo apt-get -y install apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
更新时区(TimeZone)和检查正确时间
为了减小共享数据或镜像数据方面的混淆,所有服务器在运行时都应该尽可能接近同步状态。一些加密密钥管理系统需要准确的时间。最后,就企业服务器而言,《萨班斯-奥克斯利法案》(Sarbanes-Oxley)和《健康保险可携性及责任性法案》(HIPAA)的安全规则要求正确的时间戳机制。
$ sudo apt-get -y install openntpd tzdata
$ sudo dpkg-reconfigure tzdata
$ sudo service openntpd restart

禁止AppArmor冲突
虽然AppArmor这个套件的确提供了一层额外的安全,但在我看来,需要为每个系统创建自定义配置文件。这不是本教程所探讨的内容。所以眼下,我们会禁用AppArmor,防止与任何默认的配置发生冲突。
$ sudo /etc/init.d/apparmor stop
$ sudo update-rc.d -f apparmor remove
$ sudo apt-get remove apparmor apparmor-utils

注意:如果是生产环境下的Web服务器,不建议禁用AppArmor。如果有些人想创建自定义的AppArmor配置文件,请参阅官方说明文档(http://wiki.apparmor.net/index.php/Documentation)。
阻止分布式拒绝服务(DDoS)攻击
DDoS攻击是一种分布式拒绝服务攻击。有一个Apache模块可以阻止这类攻击。
$ sudo apt-get -y install libapache2-mod-evasive
$ sudo mkdir -p /var/log/apache2/evasive
$ sudo chown -R www-data:root /var/log/apache2/evasive

把下面这个命令添加到mod-evasive.load的末尾处。
$ sudo nano /etc/apache2/mods-available/mod-evasive.load DOSHashTableSize 2048
DOSPageCount 20 # 请求同一页面的最大数量
DOSSiteCount 300 # 同一侦听器上同一客户端IP请求任何对象的总数量
DOSPageInterval 1.0 # 页面数量阈值的间隔
DOSSiteInterval 1.0 # 站点数量阈值的间隔
DOSBlockingPeriod 10.0 # 客户机IP被阻止的时间段
DOSLogDir “/var/log/apache2/evasive”
DOSEmailNotify [email protected]

阻止Slowloris攻击
还有一个Apache模块可以阻止Slowloris攻击,不过模块名称取决于你使用的Ubuntu的具体版本。如果是Ubuntu 12.10或以后版本:
$ sudo apt-get -y install libapache2-mod-qos

然后,检查qos.conf中的配置:
$ sudo nano /etc/apache2/mods-available/qos.conf

## 服务质量方面的设置
# 处理来自多达100000个不同IP的连接
QS_ClientEntries 100000

# 只允许每个IP仅50条连接
QS_SrvMaxConnPerIP 50

# 活动TCP连接的最大数量限制在256条
MaxClients 256

# 当70%的TCP连接被占用时,禁用保持活动连接状态
QS_SrvMaxConnClose 180

# 最小请求/响应速度(拒绝阻塞服务器的慢速客户端,即slowloris保持连接开启,不提出任何请求):
QS_SrvMinDataRate 150 1200

# 并限制请求标题和主体(注意,这还限制了上传和发帖请求):
# LimitRequestFields 30
# QS_LimitRequestBody 102400

注意:如果你运行12.04之前的Ubuntu版本,改而使用下面这个命令:
$ sudo apt-get -y install libapache2-mod-antiloris

检查antiloris.conf中的配置
$ sudo nano /etc/apache2/mods-available/antiloris.conf

# 每个IP地址处于READ状态的最大并行连接数量
IPReadLimit 5

阻止DNS注入攻击
Spamhaus这个模块使用域名系统黑名单(DNSBL),目的是为了阻止通过Web表单实现的垃圾邮件转发,防止URL注入攻击,阻止来自机器人程序的http DDoS攻击,通常保护服务器,远离已知的恶意IP地址。
$ sudo apt-get -y install libapache2-mod-spamhaus
$ sudo touch /etc/spamhaus.wl Append the config to apache2.conf
$ sudo nano /etc/apache2/apache2.conf
MS_METHODS POST,PUT,OPTIONS,CONNECT
MS_WhiteList /etc/spamhaus.wl
MS_CacheSize 256

重启Apache装入新模块
$ sudo service apache2 restart

现在Web服务器已安装完毕,并在正常运行。将Web浏览器指向你的域,即可看到证明你一切正常的默认消息。作为最后的检查机制,运行下面这个命令,看看你的服务器有没有任何错误信息。要是有错误信息,你需要上谷歌搜索一下,立马解决这些错误。
$ sudo tail -200 /var/log/syslog

⑤ 如何在ubuntu上搭建forge服务器

1、安装必要组件,我很推荐装一个screen,因为这样你可以让服务器在后台跑
apt-get install screen default-jdk
在安装完java之后,用java -version看一下是否安装正确

2、创建一个MC服务器的目录并且切换过去
mkdir /yourpath/minecraft/
cd /yourpath/minecraft //yourpath改为自己想要的路径
3、下载MC服务器的压缩
wget -O minecraft_server.jarhttps://s3.amazonaws.com/Minecraft.Download/versions/1.7.10/minecraft_server.1.7.10.jar(这是一行)
cp minecraft_server.jar minecraft_server.1.7.10.jar

4、启动服务器
java -Xmx2048M -Xms2048M -jar minecraft_server.jar nogui
提示没有同意EULA
5、签署“两个同意”文件
如果有不会用vi编辑器的同学,留言或者网络,我懒的写。。
vim eula.txt
eula=true 这里本来应该是false的

vim server.properties 这个文件里应该还有端口和地图名字、服务器欢迎语句的设置
online-mode=false

6、如果你想玩的是原版的MC服务器,那么再次启动服务器,你的服务器就这么架设好了
java -Xmx2048M -Xms2048M -XX:ParallelGCThreads=16 -jar minecraft_server.jar nogui
(-Xmx最大内存 -Xms最小内存 -XX:ParallelGCThreads同时调用CPU数量,建议一半或1/4或者不设)

下面开始讲Forge

1、下载Forge必要组件
cd /yourpath/minecraft
wget http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.2.1291/forge-1.7.10-10.13.2.1291-installer.jar
wget http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.2.1291/forge-1.7.10-10.13.2.1291-universal.jar

2、安装forge server
java -jar forge-1.7.10-10.13.2.1291-installer.jar nogui --installServer

3、启动forge server
java -jar forge-1.7.10-10.13.2.1291-universal.jar nogui

启动完毕后输入 /stop 关闭服务器

4、将forge server合并到MC服务器
mkdir unzip
cd unzip
unzip ../minecraft_server.1.7.10.jar
unzip ../forge-1.7.10-10.13.2.1291-universal.jar
Archive: ../forge-1.7.10-10.13.2.1291-universal.jar (这两句是上面那句命令的结果)
replace META-INF/MANIFEST.MF? [y]es, [n]o, [A]ll, [N]one, [r]ename: A

zip -r ../Forge-minecraft_server.1.7.10.jar *
5、启动服务器
java -Xmx8192M -Xms4096M -XX:ParallelGCThreads=16 -jar Forge-minecraft_server.1.7.10.jar nogui (这是一整行)

搞定~

mod的安装和Windows上并没有什么区别,只要会用cp和wget命令就好了~

⑥ ubuntu服务器怎么搭建网站

如果想用Ubuntu作为网站的服务器,一些基本的服务是必备的。本文对环境的搭建做一个简单的整理。
Appach

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
安装
sudo apt-get install apache2

大概5M左右,安装完成后服务器会自动启动
在浏览器里输入http://localhost或者是http://127.0.0.1或者输入IP,如果看到了It works!,那就说明Apache就成功的安装了,Apache的默认安装,会在/var下建立一个名为www的目录,这个就是Web目录了,所有要能过浏览器访问的Web文件都要放到这个目录里。
如果更改配置重新启动命令如下:
sudo /etc/init.d/apache2 restart

到这里,如果只是单纯的跑一些静态网页的话这儿就够了,只需要将设计的html文件放入/var/www目录即可
到这里我遇到一个问题没解决就是根目录下的二级目录无法访问,重新安装多次,都是同样的问题。

PHP
PHP支持同样是很多网站必备之一,安装命令如下:
sudo apt-get install libapache2-mod-php5 php5

需要下载6M左右安装包。安装扩展:
sudo apt-get install libapache2-mod-php5 php5

Mysql
sudo apt-get install mysql-server mysql-client

需要下载26M左右的安装包,等待安装完成,弹出设定密码界面:

输入数据库root密码,按tab键选择确定。接下来会要求重复密码,重复同样操作。
数据库安装完成后,为了方便管理和操作,继续安装phpmyadmin。
sudo apt-get install phpmyadmin

需要下载6M左右的安装包,安装完成后进入设置界面,

tab键选择是,进行安装,在安装过程中会要求选择Web server:apache2或lighttpd,使用空格键选定apache2,按tab键然后确定。接下来要求输入密码,输入在上一步中设置的密码,需要输入两次,完成安装。
然后将phpmyadmin与apache2建立连接,www目录在/var/www,phpmyadmin在/usr/share /phpmyadmin目录,所以就用命令:
sudo ln -s /usr/share/phpmyadmin /var/www

建立链接。
phpmyadmin测试:在浏览器地址栏中打开http://localhost/phpmyadmin就能够进入登录界面,输入前面配置的用户名和密码进行登录,如下图所示。

登录后界面如图所示。

ftp
要想对网站和数据进行管理,少不了的是ftp,通过ftp可以很方便的上传/下载文件,实现管理,因此需要安装ftp管理工具。
sudo apt-get install vsftpd

热点内容
安卓光遇版本怎么看 发布:2024-11-28 06:29:52 浏览:870
oraclesql加密 发布:2024-11-28 06:29:15 浏览:900
图片缓存工具 发布:2024-11-28 06:29:15 浏览:962
有文件夹删不掉怎么办 发布:2024-11-28 06:22:50 浏览:526
python3怎么用 发布:2024-11-28 06:10:58 浏览:255
安卓盒子内存小怎么办 发布:2024-11-28 06:10:57 浏览:809
车企减配哪些配置好 发布:2024-11-28 05:55:18 浏览:674
传说对决上传照片 发布:2024-11-28 05:49:18 浏览:465
解压笔怎么画 发布:2024-11-28 05:49:17 浏览:518
预编译查询 发布:2024-11-28 05:32:35 浏览:313