博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
新的服务器账号配置
阅读量:6318 次
发布时间:2019-06-22

本文共 2312 字,大约阅读时间需要 7 分钟。

难免要重新配置一台服务器。这里以一个 Bandwagon 的为例,简单的记录一下。

登陆 & 添加用户

那边安装了系统之后会提供 IP 地址,SSH 端口号,还有 root 用户的密码。

$ ssh root@
-p

然后输入了 root 密码就可以登陆了。

登陆上之后先添加自己的用户

# adduser 

先随便输入一个密码,用户信息之类的按自己情况填写。

这样创建的用户是带用户目录的,不像 useradd 那样要加参数才行(useradd 是底层的函数,不推荐使用)。还会拷贝 /etc/skel 下的内容,里面可以放 .bashrc 之类的东西。基础的配置,比如默认 shell 是在 /etc/adduser.conf 中设置的,默认就是 bash。

删除用户也很简单,用 deluser,同样这个是 userdel 的友好版本。下面的命令会同时把那个用户的 home 目录删掉。(更多用法去 man deluser,要学着去 man 啊,虽然一开始会有些看不懂。)

# deluser --remove-home 

添加新用户

  • 设置 sudo 权限

  • SSH 登陆 & 免密码登陆

  • 禁止 SSH 密码登陆

  • 禁止 root 用户 SSH 登陆

添加 sudo 权限

一般不直接拿 root 用户来用,而是给自己的用户加一下 sudo 权限。关键实在 /etc/sudoers 文件上。

# User privilege specificationroot    ALL=(ALL:ALL) ALL# Members of the admin group may gain root privileges%admin ALL=(ALL) ALL# Allow members of group sudo to execute any command%sudo   ALL=(ALL:ALL) ALL

因为有了 sudo 组,所以把用户加到 sudo 组就好了。

# adduser 
sudo

但是每次输入密码又很麻烦,且之后会把用户 SSH 登陆的密码登陆封掉,所以下面修改下 /etc/sudoers 文件,用 visudo

%sudo   ALL=(ALL:ALL) NOPASSWD:ALL

参考:

  • 关于用户组看这里:

SSH 登陆

有了 SSH 登陆之后就不在需要在登陆的时候输入密码了。说简单点就是把自己的 xxx.pub 里面的内容放到 ~/.ssh/authorized_keys 文件中。例子如下:

$ mkdir /home/apps/.ssh$ echo 
> /home/apps/.ssh/authorized_keys
$ chown -R apps:apache /home/apps/.ssh$ chmod 700 /home/apps/.ssh$ chmod 600 /home/apps/.ssh/authorized_keys

参考:

  • Password-less logins in

SSH 登陆的一些限制

在这个文件里面有很多的相关的设置 /etc/ssh/sshd_config,下面列举出几个和这次相关的:

RSAAuthentication yesPubkeyAuthentication yes#AuthorizedKeysFile     %h/.ssh/authorized_keys# To enable empty passwords, change to yes (NOT RECOMMENDED)PermitEmptyPasswords noPermitRootLogin noPasswordAuthentication noPort 29831
  • RSAAuthenticationPubkeyAuthentication 有关系,但是实际用到的是后者,请看参考二。Key 当然就是放在 %h/.ssh/authorized_keys 下面,RSA 和 DSA 的都可以的样子。

  • PermitEmptyPasswords 是否允许空密码登陆,可以看到用户是可以有空密码的状态的,但是有的应用会不允许空密码用户使用。详见参考一。这里不想让用户用密码登陆,所以就设置成 no。

  • PermitRootLogin 设置成 no 禁止 root 用户登陆。

  • PasswordAuthentication 设置成 no 禁止用户用密码登陆。

  • Port 是 SSH 登陆的 Port,一般设置一个不是默认的来提高一点安全性(似乎是这样)。

记得 $ sudo service ssh reload 来让设置生效。

参考:

用户密码的处理

# passwd -d 
# passwd -l

前者是删掉密码使用户处于空密码状态,后者是锁掉用户的密码,使需要密码验证的操作不能正常进行。详见参考一。

参考:

  • man passwd

设置更多

改用 zsh

先安装:

$ sudo apt-get install zsh

然后交给 Oh My Zsh 来配置:

$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
$ sudo chsh -s /bin/zsh 

参考:

转载地址:http://nkjaa.baihongyu.com/

你可能感兴趣的文章
教你如何使用Flutter和原生App混合开发
查看>>
Spring Boot 整合redis
查看>>
CSS hover改变背景图片过渡动画生硬
查看>>
订单的子单表格设置颜色
查看>>
Office365 Exchange Hybrid 番外篇 ADFS后端SQL群集(一)
查看>>
9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路...
查看>>
lvs fullnat部署手册(三)rs内核加载toa篇
查看>>
我的友情链接
查看>>
SSL/TLS原理详解
查看>>
JavaScript强化教程 —— Cocos2d-JS自动JSB绑定规则修改
查看>>
buildroot下查找外部编译器通过ext-toolchain-wrapper调用的参数
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
android编译系统makefile(Android.mk)写法
查看>>
MD5源代码C++
查看>>
Eclipse 添加 Ibator
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>
Python编程语言
查看>>
十四、转到 linux
查看>>
Got error 241 'Invalid schema
查看>>
ReferenceError: event is not defined
查看>>