目录
1、windows用户可以下载putty、xshell等工具
1、参照官方安装文档来安装,注意选择是centos(redHat)还是Ubuntu
一、生产环境所需要素
- 购买域名;
- 购买服务器;
- 域名备案;
- 配置服务器环境;
- 安装配置数据库;
- 项目远程部署发布与更新
二、域名
推荐网站:爱名网、阿里云/万网、腾讯云/新网、DNSpod
三、远程登录服务器
1、windows用户可以下载putty、xshell等工具
2、使用zsh配置登录别名
用于方面mac linux系统快速登陆(没多好作用)
alias shh_tcf=”ssh root@47.95.xxx.200"
3、添加用户,不再用root登陆
add immoc_manager
升级immoc_manager权限
gpasswd -a immoc_manager sudo
编辑sudo
sudo visudo
添加imooc_manager All=(All:ALL) ALL
重启服务:service ssh restart
4、实现无密码登陆(重点)
免密登陆流程
本地生成公钥私钥id_rsa 和 id_rsa.pub(Windows需要再git bash中执行。)
mkdir .ssh
cd .ssh
ssh-keygen -t rsa -b 4096 -C ”1058333333@qq.com”
开启ssh代理并加入代理:
eval "$(ssh-agent -s)"(或者eval `ssh-agent -s`)
ssh-add ~/.ssh/id_rsa
(如果不成功,则windows先去到.ssh目录下执行ssh-agent bash 再执行ssh-add ~/.ssh/id_rsa)
去将本地公钥发送到服务器
在.ssh目录下
ssh-keygen -t rsa -b 4096 -C ”105833333@qq.com”
eval "$(ssh-agent -s)"(或者eval `ssh-agent -s`)
ssh-add ~/.ssh/id_rsa
vi authorized_keys 添加本地服务器中的公钥(is_rsa.pub)这种方式容易拷贝空格
最好在本地git bash中执行ssh-copy-id -i ~/.ssh/id_rsa.pub root@47.95.201.251
更改权限:chmod 600 authorized_keys
重启服务:sudo service ssh restart(centos 下执行service sshd restart)
这样一来,当本地登陆服务器时,就会去匹配看秘钥是否一致。
5、端口安全性
sudo vi /etc/ssh/sshd_config
在修改之前先再开一个窗口保持登陆状态,一旦修改出错,还能在那个已登陆态里修改回来
首先修改Port 39999
末尾添加AllowUsers immoc_manager
重启Sudo service ssh restart
下次登陆就需要输入端口ssh -p 39999 imooc_manager@47.95.xxx.200这样可以降低被扫描攻击的概率
6、关闭root方式登陆
因为阿里云的账号都是root,别人可以扫描root下所有端口破解。所以再新建imooc_manager用户后,可以关闭root来登陆
sudo vi /etc/ssh/sshd_config
PermitEmptyPasswords no#是否允许空密码登陆
PermitRootLogin no#是否允许root登陆
PasswordAuthentication no#是否允许密码登陆。因为配置了秘钥登陆,所以不需要密码,但是只能配置好了的本地主机才能登陆了
7、配置iptables
还是先多开几个窗口,防止配置出错不能登陆
先升级apt-get(centos请使用yum命令)
Sudo apt-get update && sudo apt-get upgrade
清空iptables
sudo iptables -F
配置iptables规则
sudo vi /etc/iptables.up.rules
告诉iptables规则在哪里
sudo iptables-restore < /etc/iptables.up.rules
激活防火墙
sudo ufw enables
sudo ufs status
设置脚本开机启动
sudo vi /etc/network/if-up.d/iptables
Sudo chmod +x /etc/network/if-up.d/iptables
8、安装Fail2Ban
Sudo apt-get install fail2ban
编辑配置文件
Vi /etc/fail2ban/jail.conf
bantime=3600
destemail = 10583022222@qq.com
action = %(action_mw)s
开启Fail2Ban
sudo service fail2ban start/stop/status
四、搭建node生产环境
1、首先更新源
sudo apt-get update(centos用sudo yum update)
2、安装包文件
sudo apt-get install vim openssl build-essential libssl-dev wget curl git
3、安装nvm和node
去github搜索nvm,第一个就是
执行命令
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
nvm install lts
nvm use vxx.xx.xx
nvm alias default vxx.xx.xx
4、配置淘宝源
npm --registry=https://registry.npm.taobao.org install -g cnpm
5、增加系统文件监控
echo fs.inotigy.max_user.watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
6、安装必要依赖
npm i pm2 webpack gulp grunt-cli -g