面壁者语

勤反思 戒执迷

ubuntu屏蔽root登录方法

分类:工具

新建帐号
adduser newuser,按照提示输入新帐号密码

vi /etc/ssh/sshd_config

找到PermitRootLogin,改为 NO,退出vi

service ssh reload

设置完成,先不要退出当前的ssh连接,验证一下先:

新建putty链接,root登录,OK的话会提示被拒绝;并且这里比较流氓的是死循环要求输入密码的,强行X掉putty,改用新建立的用户登录,如果OK,就成功了。

linode上架设git服务器

分类:工具

摸索了阵子,参考了一些博客的文章和linode的官方教程,总结出方法 。

假设是在root帐号下操作。

账户部分

adduser git
新建git帐号…VPS主机没人会想让别人直接以root操作吧。

su – git
切换到git账户下

cd
返回git用户的账户目录,可以用pwd命令查看路径,我VPS用的ubuntu默认是/home/git/

mkdir .ssh
建立git帐号所需的存放ssh登录密钥的文件夹

接下来需要把自己电脑上git所用的密钥文件(默认是id_dsa.pub)上传到服务器,可以使用winscp之类工具,我是上传到tmp文件夹,然后
cat /tmp/id_dsa.pub >> ~/.ssh/authorized_keys
这一步的作用是使git的ssh登录不需要再次使用ssh的密码。

仓库建立部分

假设,你只需要自己独立的仓库,并选定/srv文件夹作为git仓库的存放地址。这一步我依旧是返回root账户进行的操作

cd /srv
mkdir my.git
cd my.git
即在srv文件夹下建立my.git文件夹并进入该文件夹

git –bare init
生成仓库原始文件(注意这里是两个-,我博客皮肤字体设定的原因显示在一起,暂时懒得折腾)

之后比较重要的是,需要给予git账户针对此目录的操作权限,这是我在其他教程上没有找到的部分并且花费不少时间解决的问题……

chown -R git:git /srv/my.git

本地客户端登录部分

假设你已经有域名指向自己服务器mydomain.com

本地客户端中添加远程仓库:
git remote add mygit git@mydomain.com:/srv/my.git

之后就可以测试是否连通
git remote show mygit

正常的话,就会出现 fetch url和push url的提示了。

安全部分

如果和我一样,搭设的git不是自己使用,那么需要把git账户限定为仅允许进行git操作。

vi /etc/passwd

找到git那行,把最后的/bin/bash 改为 /usr/bin/git-shell 保存退出即可

git编辑器改用本机gvim

分类:工具

折腾Git玩,因为是Windows,所以下了个msysgit,瞬间装高玩信心爆棚,看着教程用Bash而无视GUI,然后立刻在git commit时被自带的vi输入汉字乱码郁闷掉了。最初偷懒直接把gvim的文件夹复制过去替换share目录下的vim文件夹也可以,但是对于系统洁癖患者来说这样实在别扭。

Google半天外加尝试摸索出windows下git替换编辑器的方法:

  1. 进入msysgit安装目录下的bin文件夹,比如我的是D:Program Files (x86)Gitbin
  2. 找到vi或者vim文件,注意这两个文件无后缀,复制一份出来命名gvim
  3. 编辑gvim,把里面的exec /share/vim/vim73/gvim  改成你自己的Gvim目录,我的是 exec /D/Program Files (x86)/Vim/vim73/gvim
  4. 运行msysgit bash,git config –global core.editor gvim
  5. 搞定

注意第三步,空格和特殊符号——比如我路径里的()——需要转义。