CentOS系统的VPS首次如何分区并挂载数据盘

  • 一、写在前面

请先远程SSH登录上Centos服务器后,进行如下操作
提醒:本文主要讲如何挂载一个未使用的数据盘,挂载操作会清空数据,请确认挂载盘无数据或者未使用
如果你需要挂载已经分区有数据的硬盘,请直接看磁盘挂载部分

  • 二、查看并列出所有磁盘

命令: ll /dev/disk/by-path
提示:如果无法确认数据盘设备名称,请使用df -Th命令来确认系统盘的名称,从而排除挂错盘的情况。
20171228201715.jpg
查看你的 vps 的数据盘,命令:
fdisk -l
一般 vps 的系统盘名称是 /dev/vda 或者 /dev/sda(主要是 vps 环境不同),数据盘名称是 /dev/vdb 或者 /dev/sdb,如果你的 vps 有两块或者多块数据盘,那么名称就是 vdc、vdd... 依次类推

  • 三、创建磁盘分区

命令: fdisk /dev/vdb #注意设备名称/dev/vda根据你的VPS实际情况更换
20171228213923.jpg
分区后的磁盘应该是 / dev/vdb1(为方便新手,默认我们只分一个区,磁盘分多个区则是 vdb1 vdb2...),所以在后面的挂载和卸载、格式化命令中注意下分区名称到底是 vdb1、sdb1、vdc1、vdd1 等。

  • 四、格式化磁盘分区

命令: mkfs.ext4 /dev/vdb1 #磁盘格式请根据你的需求自行选择ext3、ext4
20171228214134.jpg

  • 五、挂载分区

磁盘的挂载、卸载命令:mount、umount
挂载之前请确定你需要挂载磁盘的目录,没有可以使用命令:mkdir 创建
创建挂载目录:mkdir /data #这里我们就在根目录下创建data目录来挂载
挂载磁盘分区:mount /dev/vdb1 /data #/data为磁盘要挂载的目录
卸载磁盘分区:umount /dev/vdb1

  • 六、查看分区挂载

查看分区挂载命令:df
加上参数-Th可以看到分区格式等详细信息:df-Th
20171228215404.jpg

  • 七、写入fstab

挂载磁盘已经完成,但是如果直接重启系统,下次又得使用mount命令重新挂载了!
所以,需要将挂载信息写入fstab,让系统开机自动挂载!
命令: echo "/dev/vdb1 /data ext4 defaults 0 0" >> /etc/fstab
查看fstab是否写入成功:
cat /etc/fstab
20171228220113.jpg

  • 写在最后

同样,老手飘过,新手操作有风险,操作需谨慎!

WDCP建站系统将网站数据转移到数据盘

  • 错误情况

在使用vps服务器建站的时候,相信一定有很多人使用WDCP(Wdlinux Control Panel:http://www.wdlinux.cn/wdcp/)来作为建站系统,可以方便的搭建建站需要的环境(这里就不多叙述如何安装等问题了)!
但是在使用过程中就会出现一些问题,这里要说的是数据(系统)问题:系统异常无法启动(只能重装),导致数据丢失(网站数据都在系统盘)!!!
至于为什么会出现这样的问题呢???
先讲讲主要原因:
一、大部分国内vps服务器提供商,都提供了已经集成WDCP环境的vps系统模版,众所周知WDCP默认所有环境文件以及网站数据文件都放在 /www 目录下的,而这样的就导致所有数据都放在系统盘上面,进而导致数据丢失!
二、部分新手使用vps建站,而根本不会去在乎数据到底放在那个盘上面!并且有的新手根本就不知道自己买的vps还有数据盘一说(根本就没有挂载数据盘)。
PS:别问我为什么知道,很早之前博主就犯过傻!

  • 解决办法

一、挂载数据盘
首先先查看,你的vps的数据盘,命令:
fdisk -l
一般vps的系统盘名称是/dev/vda或者/dev/sda(主要是vps环境不同),数据盘名称是/dev/vdb或者/dev/sdb,如果你的vps有两块或者多块数据盘,那么名称就是vdc、vdd...依次类推
20171228200157.jpg
将数据盘挂载到一个目录(用于转移www目录下的数据),挂载之前磁盘需要分区格式化,这里请参考另外一篇文章:CentOS 系统的 VPS 首次如何分区并挂载数据盘
分区后的磁盘应该是/dev/vdb1(默认我们只分一个区,磁盘分多个区则是vdb1 vdb2...),所以在后面的挂载和卸载命令中注意下分区名称到底是vdb1、sdb1、vdc1、vdd1等。
这里我们先在根目录下创建一个目录wwwbak:
mkdir /wwwbak
挂载磁盘分区到/wwwbak目录:
mount /dev/vdb1 /wwwbak
二、停止服务
停止mysql apache nginx ftp wdcp管理面板 等服务:
**service mysqld stop
service pureftpd stop
service httpd stop
service nginxd stop
service wdapache stop**
三、转移数据到数据盘
将原本/www目录下的所有数据转移到/wwwbak,前面已经将数据盘分区格式化后挂载到了/wwwbak目录下,这也就是将数据都转移到了数据盘上面了!
命令:
mv -i /www/* /data #使用此命令后,命令行界面就会卡住不动,数据已经开始转移,完成后即可操作
或者
mv -i /www/* /data & #使用此命令后,会将转移数据的操作挂在后台运行,命令行界面依然可以操作,这就需要使用命令ps -aux查看mv -i这个进程,等停止了再操作后面的步骤。所以建议新手使用前面一个命令!
四、卸载数据盘分区的挂载
等待数据转移结束后,将已经挂载到wwwbak目录的数据盘分区/dev/vdb1卸载掉,命令:
umount /dev/vdb1
五、挂载数据盘到/www目录
为什么呢?前面也已经说了,默认wdcp的所有文件都在/www目录下,如果更换为别的目录名称,那么wdcp环境等都将无法运行,这里其实就是将数据盘挂载到了www目录下,不管以后你再添加站点什么的,所有数据都是保存在了数据盘上面!就不怕系统损坏而丢失数据了!
命令:
mount /dev/vdb1 /www
这个时候/wwwbak目录就没有什么用了,可以删除了
并将挂载信息写入fstab,让系统开启自动挂载,命令:
echo "/dev/vdb1 /www ext4 defaults 0 0" >> /etc/fstab
注意,其中ext4是磁盘分区的格式,根据你的实际操作来决定,具体可以参考另外一篇磁盘挂载的文章!CentOS 系统的 VPS 首次如何分区并挂载数据盘
六、重启服务
重启服务,并查看网站以及WDCP管理面板是否正常运行
**service mysqld start
service pureftpd start
service httpd start
service nginxd start
service wdapache start**

  • 结束语

至此,我们就将WDCP系统和网站数据都转移到了数据盘上了!即便系统出现异常无法启动等问题,也不用担心网站数据会丢失了!
如果你是老手,就可以忽略本文了!当然如果你是自己手动安装wdcp环境,博主也建议你先将数据盘挂载到/www目录,再来手动安装wdcp建站系统!
还有就是,操作有风险,新手在操作前,注意将网站文件和数据库都先备份到本地!
.

Linux下ssh登录报错:Permission denied, please try again的解决方法

  • 问题描述

1.当你在linux下ssh远程登录另外一台服务器时,如果是 root 用户,即便正确输入了密码,也会出现类似如下错误信息:
Permission denied, please try again.
SSH 服务器拒绝了密码,请再试一次。
但非root用户可以正常登录,而且root用户通过本地管理终端登录也正常。
20171225222343.jpg
2.linux下远程登录其他服务器方法:
ssh root@123.123.123.123 -p 1234 #root为登录用户,要远程登录的服务器IP 123.123.123.123,-p后面为ssh远程端口,如默认22则无需添加

  • 问题原因

问题原因:
一、账户或者密码输入错误
二、要远程登录的服务器SSH 服务配置了禁止root用户登录策略。

  • 解决办法

说明:相关策略可以提高服务器的安全性。请自行基于安全性和易用性权衡后,再确定是否需要修改相关配置。
解决方法:
一、检查并使用正确的账户密码登录
二、开启root账户ssh登录权限
1.本地登录服务器
查看ssh配置文件:/etc/ssh/sshd_config(以CentOS6.9为例)
cat /etc/ssh/sshd_config
检查ssh配置文件中是否包含以下内容:
PermitRootLogin no
2.修改ssh配置文件
vi /etc/ssh/sshd_config
将PermitRootLogin no参数修改为 PermitRootLogin yes 或者整个删除或注释(在最开头添加 # 号)整行配置。
3.保存文件,并重启ssh服务
重启ssh服务命令(以CentOS6.9为例):
service sshd restart
4.参数说明
A.未配置该参数,或者将参数值配置为 yes (默认情况),都允许 root 用户登录。只有显示的设置为 no 时,才会阻断 root 用户登录。
B.该参数只会影响用户的SSH登录,不影响用户通过本地管理终端等其它方式登录系统。
C.操作有风险,在修改之前建议进行文件备份。

.

Linux修改SSH端口+禁止ROOT登陆

其实本身Linux已经很安全了,但是如果密码设置的不够复杂,同时你的SSH还用的默认22端口,那强力一点的黑客用不上半小时,就能暴力破解你的密码。所以,最好的方法就是修改掉SSH的端口。
  • 一、修改SSH端口
    修改文件:/etc/ssh/sshd_config

vi /etc/ssh/sshd_config
找到:
Port 22 #在第三行或第四行亦或最后一行,如果前面有#号,请删除,修改默认端口数字22为65534以下任意数字即可,如果没有,直接输入即可Port 1234并保存即可
20171222193753.jpg
重启sshd服务(以CentOS为例):
service sshd restart
或者
/etc/init.d/sshd restart #centos系统,重启ssh服务命令
/etc/init.d/ssh restart #debian/ubuntu系统,重启ssh服务命令

  • 二、更加安全的设置,禁止ROOT登陆,采用小号用户登陆再切换ROOT(此方法不能用SFTP上传文件)

创建非root小号用户并设置密码:
useradd linux #新建一个小号用户,用户名linux(请自行替换你需要设置的用户名)
passwd linux #给小号用户设置密码,需要输入完全相同的二次,注意提示successfully即为设置成功
禁止默认的超级用户ROOT登陆:
vi /etc/ssh/sshd_config #修改的文件
PermitRootLogin yes #把yes,改成no,保存退出,并重启SSH服务(命令看前面)
切换root超级用户(以CentOS为例):
su root
输入密码回车切换登录即可
如果需要切换为普通用户,同理:
su linux #后面为需要登录的普通用户名

  • 注意事项

切记,如果没有新建小号,或小号密码设置错误,你又禁了ROOT,那你只能重启系统或回滚快照,再也无法登陆了。
如果不是极度需要安全环境,并且还需要使用SFTP管理文件,那改掉端口就行了。

参考:小夜博客

.

iptables禁ping和ddos向外发包

 这是linux下的两个个基本的实际应用,主要涉及到禁ping(ipv4)以及禁止udp,可以禁止有黑客利用服务器向外发包ddos攻击方面的内容。
  • 一、如果没有iptables禁止ping
    echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all #开启
    echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all #关闭

    • 二、利用iptables规则禁ping

    iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP

    • 三、利用iptables规则,禁止服务器向外发包,防止DDOS向外攻击

    iptables -I OUTPUT -p udp --dport 53 -d 8.8.8.8 -j ACCEPT #允许UDP服务IP和端口,如有设置多个DNS服务IP可以修改对应IP地址再次执行
    iptables -A OUTPUT -p udp -j DROP #禁止udp服务

这里要说明下,DNS服务需要使用上述53端口,如果不清楚本机的DNS设置,可执行以下命令得到IP:

cat /etc/resolv.conf

参考:小夜博客

.


Warning: in_array() expects parameter 2 to be array, null given in /www/users/HK1590886/WEB/usr/plugins/TopLamuLeimu/Plugin.php on line 85