入手后先用 'yum -y update' 来升级一下javascript
为你的服务器新增一个用户java
useradd 用户名 passwd 密码
新增用户以后就设置root为非ssh登陆的,新用户能够ssh登陆:修改/etc/ssh/sshd_confignode
PermitRootLogin:yes --> PermitRootLogin:no
这样就能够禁止root用户登陆了。mysql
useradd //添加用户 passwd //为用户设置密码 userdel //删除用户 usermod //修改用户信息 groupadd //添加用户组 groupdel //删除用户组 groupmod //修改用户组信息 groups //显示当前进程用户所属的用户组
咱们假设你在服务器上设置了一个叫作a的用户,那么咱们上线的代码如今本身电脑上写好,push到git服务器上,再在由a用户pull下来上线。那么咱们在root上面建立一个共享的仓库,这样本身的电脑和用户a均可以向这个仓库拉取和提交代码。那么这个git服务器服务器应该如何搭建呢?其实就是新增一个git用户nginx
useradd git passwd 密码 //如下为升级git的,centos的yum能安装的git最多去到1.7 //所以须要安装2.X 的git的话,先卸载,再下载源码编译安装 yum remove git //在https://www.kernel.org/pub/software/scm/git上选择你要的版本 src wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz //安装必要工具包 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel yum install gcc perl-ExtUtils-MakeMaker //解压 tar xzf git-2.10.0.tar.gz cd git-2.10.0 make prefix=/usr/local/git all make prefix=/usr/local/git install echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc source /etc/bashrc
配置c++
// 在/srv下建立git文件夹,再在git里面建立空仓库 cd /srv mkdir git cd git git init --bare project.git // project为项目名字,自定义的 //成功就会显示:Initialized empty Git repository in /srv/git/project.git/ // 把全部权给git 用户 cd ../ chown -R git:git git //在本身电脑上: git clone git@服务器IP:/srv/git/project.git /*以上的文字很不幸的出现了不少git ,看清楚git其实分别对应了文件夹名字,git命令还有用户名三个东西就行了*/
安全:处于安全考虑,咱们应该禁用git用户的shell登录。git
vim /etc/passwd //找到这一行 git:x:1001:1001:,,,:/home/git:/bin/bash //改为 git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
这样,git用户能够正常经过ssh使用git,但没法登陆shell,由于咱们为git用户指定的git-shell每次一登陆就自动退出。github
//该方法是源码编译安装,比较慢 //确保gcc安装 yum -y install gcc //下载node 这里能够去官网看看你要的版本号 wget https://nodejs.org/dist/v5.6.0/node-v5.6.0.tar.gz //解压 tar -zvxf node-v5.6.0.tar.gz // 开启配置,编译 cd node-v5.6.0 ./configure make && make install //要能业务化的话 pm2 && express 都不可少 npm i -g n //升级node用的 npm i -g express npm i -g pm2
//pm2开机启动 pm2 startup centos //建立一个processes.json文件 { "apps": [ { "name": "xxx", "script": "./bin/www", "log_date_format": "YYYY-MM-DD HH:mm Z", "log_file" : "./logs/xxx.log", "error_file" : "./logs/xxx.log", "out_file" : "./logs/xxx.log", "merge_logs": true, } ] } //保存退出后启动 pm2 start processes.json
yum install nginx cd /etc/nginx //这里开始修改配置 vim nginx.conf //-> 这里不细说明配置:只须要找到conf里面有没有这一段:include /etc/nginx/conf.d/*.conf; // 退出以后进入/etc/nginx/conf.d目录,新建一个配置文件 vim xxx.com.conf //xxx.com是你的域名名字
//xxx.com.conf upstream node { server 127.0.0.1:3000; } server { listen 80 default_server; server_name xx.com www.xx.com; include /etc/nginx/default.d/*.conf; location / { proxy_pass http://node; } access_log xx/access.log main; }
//测试配置文件是否出错 nginx -t -c /etc/nginx/nginx.conf //启动 service nginx start //重启 service nginx restart
upstream node { server 127.0.0.1:3000; } server { listen 443 ssl; server_name ***; #你的域名 ssl on; ssl_certificate ***.pem; #pem文件路径 ssl_certificate_key ***.key; #key文件路径 ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL; ssl_prefer_server_ciphers on; # 禁止爬虫!若是你要作SEO的话!这个最好就不要咯 if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot"){return 403;} location / { deny 123.126.113.134; deny 111.251.93.84; proxy_pass http://node; } access_log *.log main; }
yum install gcc-c++ yum install -y tcl yum install wget //在官网http://redis.io/拿到下载连接 wget 连接 //解压 进入目录 编译 安装 tar -xzvf redis mv redis /usr/local/redis cd /usr/local/redis make make install
mkdir /etc/redis mkdir /var/redis mkdir /var/redis/log mkdir /var/redis/run mkdir /var/redis/6379 //在redis解压根目录中找到配置文件模板,复制到以下位置。 cp /usr/local/redis/redis.conf /etc/redis/6379.conf //经过vim命令修改 daemonize yes requirepass 密码 pidfile /var/redis/run/redis_6379.pid logfile ca dir /var/redis/6379 //最后运行redis: redis-server /etc/redis/6379.conf //测试连接 redis-cli -h 127.0.0.1 -p 6379 -a 'songhang' //开关 service redis_6379 stop service redis_6379 start
肯定已经执行了第二步的配置,保证daemonize yesweb
echo "/usr/local/redis/src/redis-server /etc/redis/6379.conf &" >> /etc/rc.local
服务器端
阿里云上的centos7.0系统。由于在centos直接搜索mysql是木有这个软件的(缘由本身百度),只有mariadb,你能够把它当成名字不用而已就行了。
安装很简单:redis
//安装 yum install mariadb mariadb-server //启动 systemctl start mariadb //开机启动 systemctl enable mariadb //root密码等相关 mysql_secure_installation //登陆 mysql -u root -p //建立新用户 create user 'username'@'localhost' identified by 'password'
开发机器上
手上的是MacBook,简单的去官网下载Mysql来点开安装就能够了。接下来推荐一个图形界面的工具:mysqlWorkBench。也是直接下载后点开安装。
注意:新版的Mysql安装后以后弹窗给你一个初始化密码的
因为咱们刚才新建的用户的host定义了localhost,因此在开发机器上是没办法登录的。所以须要用调整一下
//用root登录 mysql -u root -p //进入mysql数据库 use mysql; // 修改host为通配符% update user set host='%' where user='username'; // 查看一下 select host, user from user; flush privileges;
这时候咱们能在开发机器上登录新建的用户了,当时确发现没啥权限,作啥都作不了,因此应该分配一些权限给他。
//用root登录 mysql -u root -p //建立一个数据库(create database sanyuelanv) create database databaseName //授予用户操做这个数据库的全部权限 grant all on databaseName.* to username@'%'; flush privileges;
由于我的喜爱用ZSH,因此把bash替换成zsh,再加上oh-my-zsh。这样才以为舒服。
echo $SHELL //查看当前的shell,通常的结果都是/bin/bash cat /ect/shells //查看bin下面是否有zsh yum install zsh //安装zsh cat /ect/shells //再次查看 chsh -s /bin/zsh //切换zsh reboot //重启 //重启完成以后 yum install git //安装git //安装oh-my-zsh,装好以后切换用户或者重启一下 wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh //若是出现:warning: cannot set LC_CTYPE locale的错误 vim /etc/profile //后面加上这两行 export LC_ALL=en_US.UTF-8 export LC_CTYPE=en_US.UTF-8 //保存退出后生效 source /etc/profile