我用的MAC,终端是iTerm2
,从本地连接到服务器的最终效果图以下html
ssh_godi13
是我在.zshrc
里设置的alias
,实际指令是ssh -p PORT root@IP
nginx
好,如今就从购买开始讲起(购买的步骤可能会跟个人略有差别,有可能由于阿里又更新了UI)git
登陆阿里云,注册一个账号,进入控制台(如已登陆进去可忽略)github
如出现该页面选择一个对应的而后点肯定ubuntu
选择云服务器ECS
,点击那个小购物车进入购买页面vim
我选择的参数以下浏览器
我都选的最低配置安全
按量的相对便宜,带宽也高,我没什么访问量因此选的这个bash
感受一次买3年的比较合适,我买的时候是3年800,并且当时有用100的优惠卷,如今不知道多少钱了,不过阿里常常搞活动,买以前能够留意一下服务器
最后别忘了设置一个登陆密码
最后支付完成,购买服务器的部分就到这里,接下来去整一个域名
进入阿里万网选择一个本身喜欢的域名购买,购买完域名不要忘了去备案,在阿里云控制面板的这个位置有
我当时是须要用阿里指定的背景照个半身像跟身份证正反面发过去便可,如今不知道是否是这样了,有可能须要去当地指定地点拍照
点击运行中
进入查看所购买的实例
将IP地址记录下来,一会须要用到
点击云解析,而后点击刚才购买的域名进入DNS解析页面
如图添加主机记录www
与刚才记录的IP地址,还能够添加个test
主机记录的,一会测试用
接下来该去登陆服务器配置一下了
我是Mac
用户,为了之后每次登陆服务器不须要输入密码,咱们须要使用ssh
协议来登陆
首先在客户端终端输入ssh-keygen
,一路回车便可。而后你会发如今用户跟目录下多了.ssh
目录,进去看一下cd ~/.ssh
,里面有这3个文件
把id_rsa.pub
里的内容,手动复制到服务器的~/.ssh/authorized_keys
中去便可
# 登陆服务器 ssh root@服务器的IP地址
还有一种方法是使用ssh-copy-id root@IP
命令,Mac
用户可能须要用brew安装一下ssh-copy-id
,ubuntu
用户应该是自带的这个命令,实现的效果与上面的同样,更多ssh使用方法请参考介绍 ssh 的平常使用
完成之后,再登陆服务器就不须要输入密码了,接下来咱们进行一下简单的安全配置,你也能够忽略这些步骤
登陆到服务器之后,vim /etc/ssh/sshd_config
修改一下ssh的配合
Port 22 //默认是22,修改成自定义端口号 ... ... ... PasswordAuthentication no // 通常在最后一行,改成 no,不容许密码登陆
service ssh restart
重启生效
<div class="tip">若是发生手残在服务器端删除了.ssh
文件或者相似的状况,能够到阿里云上使用远程管理来拯救。远程登陆后,把PasswordAuthentication
值改回yes
便可密码登陆</div>
ufw enable
开启防火墙
ufw default deny
禁止全部端口访问
ufw allow 80/tcp
容许80端口tcp协议连接
ufw allow 443/tcp
443 https
ufw allow 修改的sshd_config的Port的端口号/tcp
ufw status
查看防火墙状态
ufw reload
重启防火墙
apt-get update
apt-get install nginx
service nginx status
查看状态
若是成功,浏览器中输入IP便可显示nginx默认页面
nginx默认会把/etc/nginx/conf.d
目录下的配置所有引入,下图是nginx.conf
里默认配置
cd /etc/nginx/conf.d
,建立本身起个名字.conf
,输入如下内容
server { listen 80; server_name www.域名.com; # server_name *.域名.com; # server_name www.域名.com test.域名.com; location / { # 路径本身定,不过不能放到/root目录下 root /usr/local/src; index index.html index.htm; } }
/etc/init.d/nginx restart
重启nginx
在/usr/local/src
建立一个index.html
输入域名登陆,若是成功则显示index.html
里面的内容
你要能够在/etc/nginx/conf.d
目录下,多写几个不一样的配置,分开管理二级域名
为了统一客户端与服务端的操做习惯,我在服务器端也安装了oh-my-zsh
和z
,并把界面调整一致,想把服务器玩的更6的能够安装tmux
,这里我没有安装就先不讲了
如何安装能够参考Ubuntu 下安装oh-my-zsh,我记得阿里云的ubuntu里好像默认有zsh
我皮肤用的也是oh-my-zsh
里的agnoster
主题,若是想把user@hostname
信息隐藏跟客户端的设施略有不一样。客户端想隐藏只须要在~/.zshrc
文件中添加便可
DEFAULT_USER=`whoami`
但服务器默认是root
用户,此法不通,须要在cd ~/.oh-my-zsh/themes/agnoster.zsh-theme
里把最下面的context
注释掉便可
... ## Main prompt build_prompt() { RETVAL=$? prompt_status prompt_virtualenv # prompt_context prompt_dir prompt_git prompt_bzr prompt_hg prompt_end }
z是相似autojump的文件跳转工具,会记录你的目录习惯,就像我开篇贴的那个图同样,只须要输入z conf
,就直接跳转到我常去的nginx配置目录了,很是方便
首先须要安装git,apt-get install git
我是在/usr/share/
目录下,git clone --depth=1 https://github.com/rupa/z
,你有能够在其它目录安装,可是要记住路径
vim ~/.zshrc
,添加. /usr/share/z/z.sh
source ~/.zshrc
至此全部的服务器相关的初始设置都已完成,但愿本文对你们有所帮助,哪里有错误请告诉我,好及时修改以避免误导他人,谢谢