sudoをインストールしvisudoで使えるようにする
sudoの初期設定
タイトル通りsudoをインストールして設定し使える様に出来ます。
私の環境
こんな感じです。
そもそもsudoをなんで設定するのか
あるファイルを編集したい、あの設定を変えたいって事ありますよね。 その時にrootじゃないと変更や操作が出来ないってパターンが良くあります。
そんな感じでrootで無いと出来ない事はかなり多いです。
じゃあずっとrootで良いじゃん!って思うんですが、rootって何でも出来過ぎちゃうんですよ。
具体的に言うとファイルとか全部消すコマンドがあってそれが出来ちゃう訳です。
例えるといつでも全世界の核ミサイルのボタンを押して全てを終わらせられる感じ。
使えないと不便だけど、常に使える状態は危険なのでsudoというコマンドを使って必要な時だけroot権限を使えるようにする訳です。
sudoのインストール
rootでログインして
apt install sudo
でインストールできます。
sudoをvisudoで編集
インストールは終わったんですが初期設定ではsudoは使えません。
設定ファイルにユーザーを追加してsudoを使えるようにします。
設定ファイルはvisudoで開けます。
visudo
と打って編集してみましょう
コメントアウトと設定
無事開くとたくさんの#と文字が出てきます。
この#はコメントアウトと言って直ぐ横に書いてある文字をタダのコメントになっています。
ただのコメントを弄っても設定は変わりませんがどんな設定があるのかをコメントで示してくれています。
その下の#が無い文字列が設定です。
これを変更、追加、削除等をする事で設定の変更ができます。
実践
実際にやってみましょう
以下の文字列を探して下さい。
# User privilege specification
root ALL=(ALL) ALL
初期ではrootしか使えないような設定になっています。
という訳でこのroot ALL=(ALL) ALL
のrootの部分をユーザーネーム に変更した一文を加えます。
こんな感じです↓
書き換えた後の終了の仕方が解らない
visudoのコマンド一覧が画面下の方に載っていのですが
文字化けしている!!
^X=「ctrl + X」
これが終了コマンドなのでctrl + X
で終わらせられます。
YかNを入力して!っぽい文字化けのせいで暗号化してる選択が画面下に出ます。
大文字のY
を入力すると保存して終了出来ます。
因みにN
を押した場合は保存しないで終了です。
終わったらsu - ユーザーネーム
でrootからユーザーに変更して下さい。
一刻も早くrootから抜け出そう!
こんな所にいられるか!俺は部屋に戻るぞ!
ちゃんと設定出来て入ればsudoがユーザーで使えるようになっています。
終わり
参考サイト
HTTPがさっぱり解らないのでとりあえずtelnetしてみた
HTTPがさっぱり解らない人はtelnetをしよう
HTTPについて三日掛かってようやく解ってきました。
HTTPの基本というサイトからの座学から始めたんですが全く頭に入ってきませんでした。
興味が湧かない文字の羅列とにらめっこするのが苦しゅうて苦しゅうて
良く解らないままtelnetっていうのをしてみてようやく解ってきたので僕と同じくHTTPが全然頭に入って来ない!苦手!って人はとりあえずtelnetしてみると解りやすいかも
磯野〜、telnetしようぜ〜!
telnetのインストール
macOS High Sierraでtelnetを使えるようにする
MacOSのHigh Sierraにはtelnetが標準では入っていないそうなのでHigh Sierraを使っているならインストールからしましょう!
Home brewがインストールされているならターミナルでbrew install telnet
と入力するだけです。
簡単!
Home brewがインストールされていない方はこちらをどうぞー
teinetの使い方
このサイトが解りやすかったです。
- ターミナルでtelnet www2.hitobashira.org 80 と入力
- 空白が出るので
- GET / HTTP/1.1 と入力(リクエスト)
- host: www2.hitobashira.org と入力
- いっぱい文字が出てくる(レスポンス)
こんな感じ
つまずきポイント
GET / HTTP/1.1
コマンドを入力するときに最初の/(スラッシュ)の両隣に半角スペースが無いと次のhostの行が入力出来ないみたいなので半角スペースを忘れずに!- C:> telnet ←何これ?
色々なメソッドを入力してみる
GET / HTTP/1.1 と入力
これのGETの部分をメソッドっていうみたいで、メソッドには他にも色々な種類があります。
で、GET / HTTP/1.1
のGETの部分を他のメソッドに変えるだけで他のメソッドも使えちゃいます。
例 TRACE / HTTP/1.1
色々試してみましょう。
HTTP メッセージの1部分だけをレスポンスさせる事も出来るみたいですよ!
終わり
とりあえずtelnet使えたでしょうか? 使うと色々な文字が出てくるのですがこの部分については色々サイトがあるのでそっちで理解すると良いかと思います。 このぐらいになってくると私は興味が出てきて
このサイトの内容が掴める様になってきました。 以上ですー
PostgreSQL 9.6をインストールする
debian9にPostgreSQL 9.6をインストールしていきます。
どうでも良いけどPostgreSQLのアイコンは象だった。
つまりこういう事か…
かわいい
学習サイト
今回進めていくサイト
なのだけれど新しい版があったのでそっちで学習
始める前にapt updateをするように!
それが出来れば後はハマらなかったです。
少し解り辛かった所
パスワード?知らない子ですね。
postgresユーザーに切り替えて、psqlを実行。
# su - postgres
パスワードの入力を求められるが設定していないため入れず。 なのでパスワードを作る
# passwd postgres
出来た。
# su - postgres
再チェレンジでパスワードを入力しログイン
|とl
「\l」でデータベースの一覧が表示できます。
postgres=# \l
|じゃなくてlです。 アルファベット小文字のエルですね。
#と$
コードの#と$の違いでつまずく人もいるかも。 だったらsudoをつけて実行するのじゃ
良く解らなかった所
python3どこ?
ユーザー「postgres」が自動的に作成されています。 また、python3も一緒にインストールされるようです。
Psycopg2?
新しい方の最後にある
Psycopg2を使用して、接続をテストをする
はやりませんでした。
Psycopg2って何さ
python3がインストールされてるというコードが見つけられなかった。
データベースのユーザー?
そもそもサーバーのユーザーとデータベースのユーザーって別けられてるんですよね?
そこから解ってないマン
どれがサーバーのユーザーなのかデータベースのユーザーなのかが良く解ってないので要確認や!
APTでインストール出来ない。だったらアップデートだ!
フィヨルドブートキャンプ でpostgresql-9.6がインストール出来ないと日報に書いた時の駒形さんとのやりとり
僕↓
2018年07月19日(木) 11:15 zeroringo
@komagata
デフォルトの
$ sudo apt-get install postgresql-9.6
だとエラーがでてしまったので
$ sudo apt update
でアップデートした後にデフォルトの
$ sudo apt-get install postgresql-9.6
したらインストール出来たみたいです。
駒形さん↓
2018年07月19日(木) 11:43 komagata
なるほど、何であれ検索/インストール前にapt updateは必須ですー
何故かと言うと、aptの仕組みを理解していればわかるのですが、
最新のパッケージ一覧の情報はネット上にあり、apt-get updateでローカルに反映し、apt-get install xxxとかはローカルの一覧だけを参照して行われるからです。
ネット接続が無い環境に手動で持ってきてやる場合もあるからだと思いますー
なんやて工藤!
apt updateはネットにある最新のカタログを貰うコマンドで、そのカタログが無いとインストール出来ない仕組みっぽいです。
リアルだと古い通販のカタログ冊子で注文したけれど、それはもう無いですって返事が来た感じなのかな。
更新大事ですね。
Macで\(バックスラッシュ)が¥(円マーク)になってしまう問題と解決方法
問題
postgresを無事インストールし\q
コマンドでログアウトしようと思ったのですが、バックスラッシュが円マークになってしまいログアウト出来ません。
因みに端末はMacBook Pro 2016でUSキーボードで、tarminalから操作しsshでサーバーにログインしています。
なんでバックスラッシュ円マークになってしまうん?
お金は欲しいが今じゃないんですよね。
Google Chromeでも試してみるもやっぱり円マークになってまいます。
錬金術かよ
解決方法
①システム環境設定を開きキーボードをクリックします。
②上のタブで入力ソースを選びます。
③"¥"キーで入力する文字を¥(円記号)から(バックスラッシュ)に変更します。
で完了です。
これでブラウザでもtarminalもsshでも(バックスラッシュ)が打てます。
postgresでログアウトも出来ますし、就職も決まり彼女も出来ました。
ありがとうございました!
SSHの設定 公開鍵の作り方
今回ハマった箇所
今回もハマりました!!
凄い!!!!!
サーバーかクライアントか
クライアント側(自分のPC)で設定する箇所をサーバー側でやっていました。 公開鍵を作ったり、登録したりはクライアント側でやると気付いた時は恥ずかしいやら恥ずかしいやらでした。 そりゃ進まねー訳だよ!
クライアントサイドの操作かサーバーサイドの操作かってめっちゃ大事ですね。 ちゃんと確認せな。
configのコメントアウトを外していない
#PermitRootLogin yes
などの設定を#PermitRootLogin no
に変えてやったー!とか思ってたんですがこのまま進めたらポート番号無しでサーバーにログイン出来てしまった。
セキュリティーガバガバやんけ!
なんでこーなっかたっていうと#コイツ
コイツ#が付いてるってことはこの右に書かれている文字は全てタダのコメントですってことです。 コメントアウトってやつ。
だから、#で書いて有るところは初期値で別にここに書いて有るから設定が効いてる訳じゃないので#右の文字全部消してもそのまま動きます。
なので、#を外して
PermitRootLogin no
としてあげると設定が効きました。
configの設定
- ポートを変更する
- PasswordAuthentication yesのyesをnoに変更する
- 変更を有効にするためのサーバーの再起動
上二つは昨日と同じ要領で書き換え、三つ目は$ sudo /etc/init.d/ssh restart
で色々調べたけれどフィヨルドブートキャンプのプラクティスが一番分かりやすかったです。
でも、見逃していた…
公開鍵の設定方法
参考にしたサイトです。
Mac OS X から Linuxサーバ へ、RSA 鍵を用いて SSH 接続する
鍵を作る
(1) まず、クライアントでキーペア(秘密鍵と公開鍵)を作ります。本例では、client_rsaというRSA鍵を作成。
$ cd ~/.ssh
$ ssh-keygen -f client_rsa -t rsa -b 2048
Enter passphrase: パスワードを設定する場合は入力してEnter。不要ならEnter。
Enter some passphrase again: もう一度同じように入力。
鍵を送る
scp ~/.ssh/作った鍵の名前これをサーバーに送る サーバーのuser名@サーバーのアドレス:~/.ssh/作った鍵の名前(←名前を変えたかったらここを変更する)
私はさくらVPNを使っているのですがさくらVPNのサーバーのアドレスはVPNコントロールパネルのIPv4のアドレスと書かれているところにあります。
これ↓
tarminalからこんなコードを送ってRSA鍵を送信する。 パスワードを求められるので入力する(サーバー側のパスワード)
鍵を使う
ssh -p ポート番号 サーバーのuser名@サーバーのアドレス
これで入れました。
$マークの前の表示がサーバーのuser名とホスト名に変わって入ればOK
exitを入力するとサーバーからログアウト出来る。
以上ですー
おまけ
ちゃんと設定出来ているかどうかの確認 こんな感じです
Homebrew導入メモ
macへhomebrewを導入した際の手順のまとめです。
こちらのサイトを参考にしました。
Homebrew をインストールして使えるようになるまで 〜私の場合〜
Xcodeインストール
私の場合はインストール済みだったのですがバージョンが古かったのでエラーが出てしまいました。
なので最新版にアップデート
tarminalから出来なかなーと弄ってたんですがAPPstoreからアップデート出来ました。
こっちの方が簡単。 アップデートは16分ぐらい時間がかかりました。
Homebrewのインストール
公式サイトのインストールと書かれている箇所のコードをtarminalにコピペ
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
現在の最新版だとこんな感じですが、アップデートされたらコードが変る様なので自分でサイトに行くが吉。
ダウンロード中に途中止まったりするので不安になる。 意味有るのか解らんけど止まったらエンターを押していました。
インストール出来ているかの確認
$ brew doctor
を入力し
Your system is ready to brew.
が出ればOK!
私はここでXcodeが最新版じゃないというエラーが出たので慌ててXcodeを最新版にアップデートしました。
以上ですー